Add instance peers and instance activity
Only basic support for now since I'm not sure this API
is stable...
--- a/cmd/instance.go Tue Mar 20 00:05:05 2018 +0100
+++ b/cmd/instance.go Tue Mar 20 00:26:36 2018 +0100
@@ -24,6 +24,21 @@
func init() {
RootCmd.AddCommand(instanceCmd)
+
+ instanceCmd.AddCommand(instancePeersSubcommand)
+ instanceCmd.AddCommand(instanceActivitySubcommand)
+}
+
+var instancePeersSubcommand = &cobra.Command{
+ Use: "peers",
+ Short: "Display the instance peers",
+ RunE: instanceStatsRunE,
+}
+
+var instanceActivitySubcommand = &cobra.Command{
+ Use: "activity",
+ Short: "Display the instance activity",
+ RunE: instanceStatsRunE,
}
func instanceRunE(cmd *cobra.Command, args []string) error {
@@ -45,3 +60,38 @@
}
return p.printObj(i)
}
+
+func instanceStatsRunE(cmd *cobra.Command, args []string) error {
+ if err := madonInit(false); err != nil {
+ return err
+ }
+
+ var obj interface{}
+ var err error
+
+ switch cmd.Name() {
+ case "peers":
+ // Get current instance peers
+ peers, err := gClient.GetInstancePeers()
+ if err != nil {
+ errPrint("Error: %s", err.Error())
+ os.Exit(1)
+ }
+ obj = peers
+ case "activity":
+ // Get current instance activity
+ activity, err := gClient.GetInstanceActivity()
+ if err != nil {
+ errPrint("Error: %s", err.Error())
+ os.Exit(1)
+ }
+ obj = activity
+ }
+
+ p, err := getPrinter()
+ if err != nil {
+ errPrint("Error: %s", err.Error())
+ os.Exit(1)
+ }
+ return p.printObj(obj)
+}