Documentation ¶
Index ¶
- func GetFlowType(f *flowpb.Flow) string
- type Option
- func Compact() Option
- func Dict() Option
- func IgnoreStderr() Option
- func JSONLegacy() Option
- func JSONPB() Option
- func Tab() Option
- func WithColor(when string) Option
- func WithDebug() Option
- func WithIPTranslation() Option
- func WithNodeName() Option
- func WithTimeFormat(layout string) Option
- func Writer(w io.Writer) Option
- type Options
- type Output
- type Printer
- func (p *Printer) Close() error
- func (p *Printer) GetHostNames(f *flowpb.Flow) (string, string)
- func (p *Printer) GetPorts(f *flowpb.Flow) (string, string)
- func (p *Printer) GetSecurityIdentities(f *flowpb.Flow) (srcIdentity, dstIdentity string)
- func (p *Printer) Hostname(ip, port string, ns, pod, svc string, names []string) (host string)
- func (p *Printer) WriteErr(msg string) error
- func (p *Printer) WriteGetFlowsResponse(res *observerpb.GetFlowsResponse) error
- func (p *Printer) WriteProtoAgentEvent(r *observerpb.GetAgentEventsResponse) error
- func (p *Printer) WriteProtoDebugEvent(r *observerpb.GetDebugEventsResponse) error
- func (p *Printer) WriteProtoFlow(res *observerpb.GetFlowsResponse) error
- func (p *Printer) WriteProtoNodeStatusEvent(r *observerpb.GetFlowsResponse) error
- func (p *Printer) WriteServerStatusResponse(res *observerpb.ServerStatusResponse) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetFlowType ¶
GetFlowType returns the type of a flow as a string.
Types ¶
type Option ¶
type Option func(*Options)
Option ...
func JSONLegacy ¶ added in v0.11.1
func JSONLegacy() Option
JSONLegacy encoded output from the printer.
func JSONPB ¶ added in v0.7.0
func JSONPB() Option
JSONPB encodes GetFlowsResponse as JSON according to proto3's JSON mapping.
func WithColor ¶ added in v0.8.2
WithColor set the color mode. The when argument is one of:
- "auto": color mode is enabled when the standard output is connected to a terminal.
- "always": color mode is enabled no matter to standard output.
- "never": color mode is always disabled.
Any other value of when means "auto", which is the default. The color mode is only applied with in Dict or Compact mode. For any other mode, color is always disabled.
func WithIPTranslation ¶
func WithIPTranslation() Option
WithIPTranslation enables translation from IPs to pod names, FQDNs, and service names.
func WithNodeName ¶ added in v0.7.0
func WithNodeName() Option
WithNodeName enables printing the node name.
func WithTimeFormat ¶ added in v0.8.0
WithTimeFormat specifies the time format layout to use when printing out timestamps. This option has no effect if JSONLegacy or JSONPB option is used. The layout must be a time format layout as specified in the standard library's time package.
type Options ¶
type Options struct {
// contains filtered or unexported fields
}
Options for the printer.
type Output ¶
type Output int
Output enum of the printer.
const ( // TabOutput prints flows in even tab-aligned columns. TabOutput Output = iota // JSONLegacyOutput prints flows as json in the legacy format JSONLegacyOutput // CompactOutput prints flows as compact as possible (similar to monitor). CompactOutput // DictOutput presents the same information as TabOutput, but each flow is // presented as a key:value dictionary, similar to \G output of mysql. DictOutput // JSONPBOutput prints GetFlowsResponse as JSON according to proto3's JSON mapping. JSONPBOutput )
type Printer ¶
type Printer struct {
// contains filtered or unexported fields
}
Printer for flows.
func (*Printer) GetHostNames ¶
GetHostNames returns source and destination hostnames of a flow.
func (*Printer) GetSecurityIdentities ¶ added in v0.10.0
GetSecurityIdentities returns the source and destination numeric security identity formatted as a string.
func (*Printer) Hostname ¶
Hostname returns a "host:ip" formatted pair for the given ip and port. If port is empty, only the host is returned. The host part is either the pod or service name (if set), or a comma-separated list of domain names (if set), or just the ip address if EnableIPTranslation is false and/or there are no pod nor service name and domain names.
func (*Printer) WriteErr ¶
WriteErr returns the given msg into the err writer defined in the printer.
func (*Printer) WriteGetFlowsResponse ¶ added in v0.7.0
func (p *Printer) WriteGetFlowsResponse(res *observerpb.GetFlowsResponse) error
WriteGetFlowsResponse prints GetFlowsResponse according to the printer configuration.
func (*Printer) WriteProtoAgentEvent ¶ added in v0.8.0
func (p *Printer) WriteProtoAgentEvent(r *observerpb.GetAgentEventsResponse) error
WriteProtoAgentEvent writes v1.AgentEvent into the output writer.
func (*Printer) WriteProtoDebugEvent ¶ added in v0.8.0
func (p *Printer) WriteProtoDebugEvent(r *observerpb.GetDebugEventsResponse) error
WriteProtoDebugEvent writes a flowpb.DebugEvent into the output writer.
func (*Printer) WriteProtoFlow ¶
func (p *Printer) WriteProtoFlow(res *observerpb.GetFlowsResponse) error
WriteProtoFlow writes v1.Flow into the output writer.
func (*Printer) WriteProtoNodeStatusEvent ¶ added in v0.6.0
func (p *Printer) WriteProtoNodeStatusEvent(r *observerpb.GetFlowsResponse) error
WriteProtoNodeStatusEvent writes a node status event into the error stream
func (*Printer) WriteServerStatusResponse ¶ added in v0.9.0
func (p *Printer) WriteServerStatusResponse(res *observerpb.ServerStatusResponse) error
WriteServerStatusResponse writes server status response into the output writer.