Documentation ¶
Index ¶
Constants ¶
View Source
const PktvisorVersion = "4.2.0"
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DHCPPayload ¶
type DHCPPayload struct { WirePackets struct { Filtered int64 `mapstructure:"filtered"` Total int64 `mapstructure:"total"` DeepSamples int64 `mapstructure:"deep_samples"` Discover int64 `mapstructure:"discover"` Offer int64 `mapstructure:"offer"` Request int64 `mapstructure:"request"` Ack int64 `mapstructure:"ack"` Events int64 `mapstructure:"events"` } `mapstructure:"wire_packets"` Rates struct { Total Rates `mapstructure:"total"` Events Rates `mapstructure:"events"` } `mapstructure:"rates"` Period PeriodPayload `mapstructure:"period"` }
DHCPPayload contains the information specifically for the DNS protocol
type DNSPayload ¶
type DNSPayload struct { WirePackets struct { Ipv4 int64 `mapstructure:"ipv4"` Ipv6 int64 `mapstructure:"ipv6"` Queries int64 `mapstructure:"queries"` Replies int64 `mapstructure:"replies"` TCP int64 `mapstructure:"tcp"` Total int64 `mapstructure:"total"` UDP int64 `mapstructure:"udp"` Nodata int64 `mapstructure:"nodata"` Noerror int64 `mapstructure:"noerror"` Nxdomain int64 `mapstructure:"nxdomain"` Srvfail int64 `mapstructure:"srvfail"` Refused int64 `mapstructure:"refused"` Filtered int64 `mapstructure:"filtered"` DeepSamples int64 `mapstructure:"deep_samples"` QueryECS int64 `mapstructure:"query_ecs"` Events int64 `mapstructure:"events"` } `mapstructure:"wire_packets"` Rates struct { Total Rates `mapstructure:"total"` Events Rates `mapstructure:"events"` } `mapstructure:"rates"` Cardinality struct { Qname int64 `mapstructure:"qname"` } `mapstructure:"cardinality"` Xact struct { Counts struct { Total int64 `mapstructure:"total"` TimedOut int64 `mapstructure:"timed_out"` } `mapstructure:"counts"` In struct { QuantilesUS Quantiles `mapstructure:"quantiles_us"` TopSlow []NameCount `mapstructure:"top_slow"` Total int64 `mapstructure:"total"` } `mapstructure:"in"` Out struct { QuantilesUS Quantiles `mapstructure:"quantiles_us"` TopSlow []NameCount `mapstructure:"top_slow"` Total int64 `mapstructure:"total"` } `mapstructure:"out"` Ratio struct { Quantiles struct { P50 float64 `mapstructure:"p50"` P90 float64 `mapstructure:"p90"` P95 float64 `mapstructure:"p95"` P99 float64 `mapstructure:"p99"` } `mapstructure:"quantiles"` } `mapstructure:"ratio"` } `mapstructure:"xact"` TopGeoLocECS []NameCount `mapstructure:"top_geoLoc_ecs"` TopAsnECS []NameCount `mapstructure:"top_asn_ecs"` TopQueryECS []NameCount `mapstructure:"top_query_ecs"` TopQname2 []NameCount `mapstructure:"top_qname2"` TopQname3 []NameCount `mapstructure:"top_qname3"` TopNxdomain []NameCount `mapstructure:"top_nxdomain"` TopQtype []NameCount `mapstructure:"top_qtype"` TopRcode []NameCount `mapstructure:"top_rcode"` TopREFUSED []NameCount `mapstructure:"top_refused"` TopQnameByRespBytes []NameCount `mapstructure:"top_qname_by_resp_bytes"` TopSRVFAIL []NameCount `mapstructure:"top_srvfail"` TopNODATA []NameCount `mapstructure:"top_nodata"` TopUDPPorts []NameCount `mapstructure:"top_udp_ports"` Period PeriodPayload `mapstructure:"period"` }
DNSPayload contains the information specifically for the DNS protocol
type FlowPayload ¶
type FlowPayload struct { Devices map[string]struct { RecordsFiltered int64 `mapstructure:"records_filtered"` RecordsTotal int64 `mapstructure:"records_total"` TopInInterfacesBytes []NameCount `mapstructure:"top_in_interfaces_bytes"` TopInInterfacesPackets []NameCount `mapstructure:"top_in_interfaces_packets"` TopOutInterfacesBytes []NameCount `mapstructure:"top_out_interfaces_bytes"` TopOutInterfacesPackets []NameCount `mapstructure:"top_out_interfaces_packets"` Interfaces map[string]struct { Cardinality struct { Conversations int64 `mapstructure:"conversations"` DstIpsOut int64 `mapstructure:"dst_ips_out"` DstPortsOut int64 `mapstructure:"dst_ports_out"` SrcIpsIn int64 `mapstructure:"src_ips_in"` SrcPortsIn int64 `mapstructure:"src_ports_in"` } `mapstructure:"cardinality"` InIpv4Bytes int64 `mapstructure:"in_ipv4_bytes"` InIpv4Packets int64 `mapstructure:"in_ipv4_packets"` InIpv6Bytes int64 `mapstructure:"in_ipv6_bytes"` InIpv6Packets int64 `mapstructure:"in_ipv6_packets"` InOtherL4Bytes int64 `mapstructure:"in_other_l4_bytes"` InOtherL4Packets int64 `mapstructure:"in_other_l4_packets"` InTcpBytes int64 `mapstructure:"in_tcp_bytes"` InTcpPackets int64 `mapstructure:"in_tcp_packets"` InUdpBytes int64 `mapstructure:"in_udp_bytes"` InUdpPackets int64 `mapstructure:"in_udp_packets"` InBytes int64 `mapstructure:"in_bytes"` InPackets int64 `mapstructure:"in_packets"` OutIpv4Bytes int64 `mapstructure:"out_ipv4_bytes"` OutIpv4Packets int64 `mapstructure:"out_ipv4_packets"` OutIpv6Bytes int64 `mapstructure:"out_ipv6_bytes"` OutIpv6Packets int64 `mapstructure:"out_ipv6_packets"` OutOtherL4Bytes int64 `mapstructure:"out_other_l4_bytes"` OutOtherL4Packets int64 `mapstructure:"out_other_l4_packets"` OutTcpBytes int64 `mapstructure:"out_tcp_bytes"` OutTcpPackets int64 `mapstructure:"out_tcp_packets"` OutUdpBytes int64 `mapstructure:"out_udp_bytes"` OutUdpPackets int64 `mapstructure:"out_udp_packets"` OutBytes int64 `mapstructure:"out_bytes"` OutPackets int64 `mapstructure:"out_packets"` TopInSrcIpsBytes []NameCount `mapstructure:"top_in_src_ips_bytes"` TopInSrcIpsPackets []NameCount `mapstructure:"top_in_src_ips_packets"` TopInSrcPortsBytes []NameCount `mapstructure:"top_in_src_ports_bytes"` TopInSrcPortsPackets []NameCount `mapstructure:"top_in_src_ports_packets"` TopInSrcIpsAndPortBytes []NameCount `mapstructure:"top_in_src_ips_and_port_bytes"` TopInSrcIpsAndPortPackets []NameCount `mapstructure:"top_in_src_ips_and_port_packets"` TopInDstIpsBytes []NameCount `mapstructure:"top_in_dst_ips_bytes"` TopInDstIpsPackets []NameCount `mapstructure:"top_in_dst_ips_packets"` TopInDstPortsBytes []NameCount `mapstructure:"top_in_dst_ports_bytes"` TopInDstPortsPackets []NameCount `mapstructure:"top_in_dst_ports_packets"` TopInDstIpsAndPortBytes []NameCount `mapstructure:"top_in_dst_ips_and_port_bytes"` TopInDstIpsAndPortPackets []NameCount `mapstructure:"top_in_dst_ips_and_port_packets"` TopOutSrcIpsBytes []NameCount `mapstructure:"top_out_src_ips_bytes"` TopOutSrcIpsPackets []NameCount `mapstructure:"top_out_src_ips_packets"` TopOutSrcPortsBytes []NameCount `mapstructure:"top_out_src_ports_bytes"` TopOutSrcPortsPackets []NameCount `mapstructure:"top_out_src_ports_packets"` TopOutSrcIpsAndPortBytes []NameCount `mapstructure:"top_out_src_ips_and_port_bytes"` TopOutSrcIpsAndPortPackets []NameCount `mapstructure:"top_out_src_ips_and_port_packets"` TopOutDstIpsBytes []NameCount `mapstructure:"top_out_dst_ips_bytes"` TopOutDstIpsPackets []NameCount `mapstructure:"top_out_dst_ips_packets"` TopOutDstPortsBytes []NameCount `mapstructure:"top_out_dst_ports_bytes"` TopOutDstPortsPackets []NameCount `mapstructure:"top_out_dst_ports_packets"` TopOutDstIpsAndPortBytes []NameCount `mapstructure:"top_out_dst_ips_and_port_bytes"` TopOutDstIpsAndPortPackets []NameCount `mapstructure:"top_out_dst_ips_and_port_packets"` TopConversationsBytes []NameCount `mapstructure:"top_conversations_bytes"` TopConversationsPackets []NameCount `mapstructure:"top_conversations_packets"` TopGeoLocBytes []NameCount `mapstructure:"top_geoLoc_bytes"` TopGeoLocPackets []NameCount `mapstructure:"top_geoLoc_packets"` TopAsnBytes []NameCount `mapstructure:"top_ASN_bytes"` TopAsnPackets []NameCount `mapstructure:"top_ASN_packets"` } `mapstructure:"interfaces"` } `mapstructure:"devices"` Period PeriodPayload `mapstructure:"period"` }
FlowPayload contains the information specifically for the Flow protocol
type NameCount ¶
type NameCount struct { Name string `mapstructure:"name"` Estimate int64 `mapstructure:"estimate"` }
NameCount represents the count of a unique domain name
type PacketPayload ¶
type PacketPayload struct { Cardinality struct { DstIpsOut int64 `mapstructure:"dst_ips_out"` SrcIpsIn int64 `mapstructure:"src_ips_in"` } `mapstructure:"cardinality"` Ipv4 int64 `mapstructure:"ipv4"` Ipv6 int64 `mapstructure:"ipv6"` TCP int64 `mapstructure:"tcp"` Total int64 `mapstructure:"total"` UDP int64 `mapstructure:"udp"` In int64 `mapstructure:"in"` Out int64 `mapstructure:"out"` UnknownDir int64 `mapstructure:"unknown_dir"` OtherL4 int64 `mapstructure:"other_l4"` DeepSamples int64 `mapstructure:"deep_samples"` Filtered int64 `mapstructure:"filtered"` Events int64 `mapstructure:"events"` Protocol struct { Tcp struct { SYN int64 `mapstructure:"syn"` } `mapstructure:"tcp"` } `mapstructure:"protocol"` PayloadSize Quantiles `mapstructure:"payload_size"` Rates struct { BytesIn Rates `mapstructure:"bytes_in"` BytesOut Rates `mapstructure:"bytes_out"` BytesTotal Rates `mapstructure:"bytes_total"` PpsIn Rates `mapstructure:"pps_in"` PpsOut Rates `mapstructure:"pps_out"` PpsTotal Rates `mapstructure:"pps_total"` PpsEvents Rates `mapstructure:"pps_events"` } `mapstructure:"rates"` TopIpv4 []NameCount `mapstructure:"top_ipv4"` TopIpv6 []NameCount `mapstructure:"top_ipv6"` TopGeoLoc []NameCount `mapstructure:"top_geoLoc"` TopASN []NameCount `mapstructure:"top_asn"` Period PeriodPayload `mapstructure:"period"` }
PacketPayload contains information about raw packets regardless of protocol
type PcapPayload ¶
type PcapPayload struct { TcpReassemblyErrors int64 `mapstructure:"tcp_reassembly_errors"` IfDrops int64 `mapstructure:"if_drops"` OsDrops int64 `mapstructure:"os_drops"` }
PcapPayload contains information about pcap input stream
type PeriodPayload ¶
type PeriodPayload struct { StartTS int64 `mapstructure:"start_ts"` Length int64 `mapstructure:"length"` }
PeriodPayload indicates the period of time for which a snapshot refers to
type Quantiles ¶
type Quantiles struct { P50 int64 `mapstructure:"p50"` P90 int64 `mapstructure:"p90"` P95 int64 `mapstructure:"p95"` P99 int64 `mapstructure:"p99"` }
Quantiles represents a histogram of various percentiles
type Rates ¶
type Rates struct { P50 int64 `mapstructure:"p50"` P90 int64 `mapstructure:"p90"` P95 int64 `mapstructure:"p95"` P99 int64 `mapstructure:"p99"` }
Rates represents a histogram of rates at various percentiles
type StatSnapshot ¶
type StatSnapshot struct { DNS *DNSPayload `mapstructure:"DNS,omitempty"` DHCP *DHCPPayload `mapstructure:"DHCP,omitempty"` Packets *PacketPayload `mapstructure:"Packets,omitempty"` Pcap *PcapPayload `mapstructure:"Pcap,omitempty"` Flow *FlowPayload `mapstructure:"Flow,omitempty"` }
StatSnapshot is a snapshot of a given period from pktvisord
Click to show internal directories.
Click to hide internal directories.