Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrContinue = errors.New("<continue input>") ErrQuit = errors.New("<quit session>") )
View Source
var AlertCmd = &cobra.Command{ Use: "alert", Short: "Manage alerts", Long: "Manage alerts", SilenceUsage: false, }
View Source
var AlertCreate = &cobra.Command{ Use: "create", Short: "Create alert", Long: "Create alert", Run: func(cmd *cobra.Command, args []string) { client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } alert := api.NewAlert() alert.Name = alertName alert.Description = alertDescription alert.Expression = alertExpression alert.Trigger = alertTrigger alert.Action = alertAction if errs := validator.Validate(alert); errs != nil { fmt.Println("Error: ", errs) cmd.Usage() os.Exit(1) } if err := client.Create("alert", &alert); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(&alert) }, }
View Source
var AlertDelete = &cobra.Command{ Use: "delete [alert]", Short: "Delete alert", Long: "Delete alert", PreRun: func(cmd *cobra.Command, args []string) { if len(args) == 0 { cmd.Usage() os.Exit(1) } }, Run: func(cmd *cobra.Command, args []string) { client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.Delete("alert", args[0]); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } }, }
View Source
var AlertGet = &cobra.Command{ Use: "get [alert]", Short: "Display alert", Long: "Display alert", PreRun: func(cmd *cobra.Command, args []string) { if len(args) == 0 { cmd.Usage() os.Exit(1) } }, Run: func(cmd *cobra.Command, args []string) { var alert api.Alert client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.Get("alert", args[0], &alert); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(&alert) }, }
View Source
var AlertList = &cobra.Command{ Use: "list", Short: "List alerts", Long: "List alerts", Run: func(cmd *cobra.Command, args []string) { var alerts map[string]api.Alert client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.List("alert", &alerts); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(alerts) }, }
View Source
var (
AuthenticationOpts shttp.AuthenticationOpts
)
View Source
var CaptureCmd = &cobra.Command{ Use: "capture", Short: "Manage captures", Long: "Manage captures", SilenceUsage: false, }
View Source
var CaptureCreate = &cobra.Command{ Use: "create", Short: "Create capture", Long: "Create capture", Run: func(cmd *cobra.Command, args []string) { client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } capture := api.NewCapture(gremlinQuery, bpfFilter) capture.Name = captureName capture.Description = captureDescription capture.Type = captureType if err := validator.Validate(capture); err != nil { fmt.Println(err.Error()) cmd.Usage() os.Exit(1) } if err := client.Create("capture", &capture); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(&capture) }, }
View Source
var CaptureDelete = &cobra.Command{ Use: "delete [capture]", Short: "Delete capture", Long: "Delete capture", PreRun: func(cmd *cobra.Command, args []string) { if len(args) == 0 { cmd.Usage() os.Exit(1) } }, Run: func(cmd *cobra.Command, args []string) { client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.Delete("capture", args[0]); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } }, }
View Source
var CaptureGet = &cobra.Command{ Use: "get [capture]", Short: "Display capture", Long: "Display capture", PreRun: func(cmd *cobra.Command, args []string) { if len(args) == 0 { cmd.Usage() os.Exit(1) } }, Run: func(cmd *cobra.Command, args []string) { var capture api.Capture client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.Get("capture", args[0], &capture); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(&capture) }, }
View Source
var CaptureList = &cobra.Command{ Use: "list", Short: "List captures", Long: "List captures", Run: func(cmd *cobra.Command, args []string) { var captures map[string]api.Capture client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } if err := client.List("capture", &captures); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } printJSON(captures) }, }
View Source
var PacketInjectorCmd = &cobra.Command{ Use: "inject-packet", Short: "inject packets", Long: "inject packets", SilenceUsage: false, Run: func(cmd *cobra.Command, args []string) { client, err := api.NewCrudClientFromConfig(&AuthenticationOpts) if err != nil { logging.GetLogger().Criticalf(err.Error()) } packet := &api.PacketParamsReq{} packet.Src = srcNode packet.Dst = dstNode packet.Type = packetType packet.Payload = payload packet.Count = count if errs := validator.Validate(packet); errs != nil { fmt.Println("Error: ", errs) cmd.Usage() os.Exit(1) } if err := client.Create("injectpacket", &packet); err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } }, }
View Source
var ShellCmd = &cobra.Command{ Use: "shell", Short: "Shell Command Line Interface", Long: "Skydive Shell Command Line Interface, yet another shell", SilenceUsage: false, Run: func(cmd *cobra.Command, args []string) { shellMain() }, }
View Source
var TopologyCmd = &cobra.Command{ Use: "topology", Short: "Request on topology", Long: "Request on topology", SilenceUsage: false, }
View Source
var TopologyRequest = &cobra.Command{ Use: "query", Short: "query topology", Long: "query topology", Run: func(cmd *cobra.Command, args []string) { body, err := SendGremlinQuery(&AuthenticationOpts, gremlinQuery) if err != nil { logging.GetLogger().Errorf(err.Error()) os.Exit(1) } var values interface{} decoder := json.NewDecoder(body) decoder.UseNumber() err = decoder.Decode(&values) if err != nil { logging.GetLogger().Errorf("Unable to decode response: %s", err.Error()) os.Exit(1) } printJSON(values) }, }
Functions ¶
func SendGremlinQuery ¶ added in v0.4.0
func SendGremlinQuery(auth *shttp.AuthenticationOpts, query string) (io.ReadCloser, error)
Types ¶
Click to show internal directories.
Click to hide internal directories.