Documentation
¶
Index ¶
- Constants
- func UnmarshalRaw(b []byte, v interface{}) error
- func UnmarshalRsp(b []byte, v interface{}) error
- type AS
- type ASReq
- type ASResp
- type ActiveFlow
- type ActiveFlowResp
- type AlertType
- type AlertTypeSeverity
- type Application
- type ApplicationCategory
- type BasePageReq
- type BasePageResp
- type Behaviour
- type Category
- func (c Category) CategoryName() string
- func (c Category) Enabled() bool
- func (c Category) LastUpdate() string
- func (c Category) Name() string
- func (c Category) NumHits() int
- func (c Category) NumHosts() int
- func (c Category) Status() string
- func (c Category) UpdateInterval() int
- func (c Category) UpdateIntervalLabel() string
- type CategoryReq
- type CategoryResp
- type CliSrvType
- type Country
- type CountryReq
- type CountryResp
- type DeviceApplication
- type DeviceApplicationReq
- type DeviceApplicationResp
- type DeviceType
- type EnabledStatus
- type FindReq
- type FindResp
- type Flow
- func (f Flow) Application() string
- func (f Flow) Breakdown() []float64
- func (f Flow) Client() string
- func (f Flow) Duration() string
- func (f Flow) FirstSeenTime() time.Time
- func (f Flow) Id() string
- func (f Flow) Info() string
- func (f Flow) LastSeenTime() time.Time
- func (f Flow) Protocol() string
- func (f Flow) Server() string
- func (f Flow) Thpt() float64
- func (f Flow) Traffic() int64
- type FlowHostType
- type FlowReq
- type FlowResp
- type FlowStatsReq
- type FlowStatsResp
- type Host
- type HostDistroReq
- type HostDistroType
- type HostFingerprint
- type HostL4Data
- type HostL7Data
- type HostMode
- type HostPool
- type HostPoolReq
- type HostReq
- type HostResp
- type HostStats
- type HostTopPeer
- type HttpBreakdown
- type HttpMode
- type IPVersion
- type IfDistroReq
- type IfDistroType
- type Interface
- type InterfaceSummary
- type L4Proto
- type LabelValue
- type Mac
- type MacMode
- type MacReq
- type MacResp
- type Network
- type NetworkResp
- type NetworksReq
- type Ntopng
- func (this *Ntopng) Find(req *FindReq) (*FindResp, error)
- func (this *Ntopng) Get(path string, headers, params map[string]interface{}) ([]byte, error)
- func (this *Ntopng) GetASList(req *ASReq) (*ASResp, error)
- func (this *Ntopng) GetActiveFlows(req *FlowReq) (*ActiveFlowResp, error)
- func (this *Ntopng) GetApplicationCategoryList() ([]*ApplicationCategory, error)
- func (this *Ntopng) GetApplicationList() ([]*Application, error)
- func (this *Ntopng) GetCategoryList(req *CategoryReq) (*CategoryResp, error)
- func (this *Ntopng) GetCountryList(req *CountryReq) (*CountryResp, error)
- func (this *Ntopng) GetDeviceApplicationList(req *DeviceApplicationReq) (*DeviceApplicationResp, error)
- func (this *Ntopng) GetFlowList(req *FlowReq) (*FlowResp, error)
- func (this *Ntopng) GetFlowStats(req *FlowStatsReq) (*FlowStatsResp, error)
- func (this *Ntopng) GetHostDistro(req *HostDistroReq) ([]*LabelValue, error)
- func (this *Ntopng) GetHostFingerprint(host string) ([]*HostFingerprint, error)
- func (this *Ntopng) GetHostL4Data(host string) ([]*HostL4Data, error)
- func (this *Ntopng) GetHostL7Data(host string) ([]*HostL7Data, error)
- func (this *Ntopng) GetHostList(req *HostReq) (*HostResp, error)
- func (this *Ntopng) GetHostPoolList(req *HostPoolReq) ([]*HostPool, error)
- func (this *Ntopng) GetHostStats(host string) (*HostStats, error)
- func (this *Ntopng) GetHostTopPeersProtocols(host string) ([]*HostTopPeer, error)
- func (this *Ntopng) GetInterface(ifId int64) (*Interface, error)
- func (this *Ntopng) GetInterfaceAddress(ifId int64) ([]string, error)
- func (this *Ntopng) GetInterfaceDistro(req *IfDistroReq) ([]*LabelValue, error)
- func (this *Ntopng) GetInterfaceList() ([]*Interface, error)
- func (this *Ntopng) GetInterfaceSummary(ifId int64) (*InterfaceSummary, error)
- func (this *Ntopng) GetMacList(req *MacReq) (*MacResp, error)
- func (this *Ntopng) GetNetworkList(req *NetworksReq) (*NetworkResp, error)
- func (this *Ntopng) GetOsList(req *OsReq) (*OsResp, error)
- func (this *Ntopng) GetTsData(req *TsDataReq) (*TsDataResp, error)
- func (this *Ntopng) GetTsTypeConst(req *TsTypeConstReq) ([]*TsTypeConst, error)
- func (this *Ntopng) Post(path string, headers, body map[string]interface{}) ([]byte, error)
- type OS
- type Object
- type Option
- type OsReq
- type OsResp
- type PktStats
- type PolicyFilter
- type Series
- type TrafficType
- type TsDataReq
- type TsDataResp
- type TsTypeConst
- type TsTypeConstReq
Constants ¶
View Source
const ( CodeOK = 0 CodeNotFound = -1 CodeInvalidInterface = -2 CodeNotGranted = -3 CodeInvalidHost = -4 CodeInvalidArguments = -5 CodeInternalError = -6 CodeBadFormat = -7 CodeBadContent = -8 CodeNameResolutionFailed = -9 CodeSnmpDeviceAlreadyAdded = -10 CodeSnmpDeviceUnreachable = -11 CodeNoSnmpDeviceDiscovered = -12 CodeAddPoolFailed = -13 CodeEditPoolFailed = -14 CodePoolNotFound = -16 CodeBindPoolMemberFailed = -17 CodePasswordMismatch = -19 CodeAddUserFailed = -20 CodeDeleteUserFailed = -21 CodeSnmpUnknownDevice = -22 CodeUserAlreadyExisting = -23 CodeEditUserFailed = -24 CodeSnmpDeviceInterfaceStatusChangeFailed = -26 CodeConfigurationFileMismatch = -27 CodePartialImport = -28 CodeInfrastructureInstanceNotFound = -32 CodeInfrastructureInstanceEmptyID = -33 CodeInfrastructureInstanceEmptyAlias = -34 CodeInfrastructureInstanceEmptyURL = -35 CodeInfrastructureInstanceEmptyToken = -36 CodeInfrastructureInstanceEmptyRTTThreshold = -37 CodeInfrastructureInstanceSameAlias = -39 CodeInfrastructureInstanceSameURL = -40 CodeInfrastructureInstanceSameToken = -41 CodeInfrastructureInstanceAlreadyExisting = -42 CodeInfrastructureInstanceCheckFailed = -43 CodeInfrastructureInstanceCheckNotFound = -44 CodeInfrastructureInstanceCheckInvalidResponse = -45 CodeInfrastructureInstanceCheckAuthFailed = -46 CodeInfrastructureInstanceEmptyBandwidthThreshold = -47 )
View Source
const ( HostDistroTypeL4Proto = "l4_proto" // 4层协议 HostDistroTypeL4Traffic = "l4_traffic" // 4层流量 HostDistroTypeL4ConnectedHost = "l4_connected_host" HostDistroTypeL7Proto = "l7_proto" HostDistroTypeL7Breed = "l7_breed" HostDistroTypePktSendSize = "pkt_send_size" HostDistroTypePktRcvdSize = "pkt_rcvd_size" HostDistroTypePktTcpFlags = "pkt_tcp_flags" HostDistroTypePktArp = "pkt_arp" HostDistroTypePortTraffic = "port_traffic" HostDistroTypeDnsBreakdown = "dns_breakdown" HostDistroTypeHttpBreakdown = "http_breakdown" )
Variables ¶
This section is empty.
Functions ¶
func UnmarshalRaw ¶
func UnmarshalRsp ¶
Types ¶
type AS ¶
type AS struct { Key string `json:"key"` ColumnHosts string `json:"column_hosts"` ColumnThpt string `json:"column_thpt"` ColumnAsname string `json:"column_asname"` ColumnAsn string `json:"column_asn"` ColumnHostScoreRatio string `json:"column_host_score_ratio"` ColumnAlertedFlows string `json:"column_alerted_flows"` ColumnChart string `json:"column_chart"` ColumnScore string `json:"column_score"` ColumnSince string `json:"column_since"` ColumnTraffic string `json:"column_traffic"` ColumnBreakdown string `json:"column_breakdown"` }
func (AS) AlertedFlows ¶
func (AS) HostScoreRatio ¶
type ASReq ¶
type ASReq struct {
BasePageReq
}
type ASResp ¶
type ASResp struct { BasePageResp Data []*AS `json:"data"` }
type ActiveFlow ¶
type ActiveFlow struct { Key string `json:"key"` HashId string `json:"hash_id"` FirstSeen int64 `json:"first_seen"` LastSeen int64 `json:"last_seen"` Bytes float64 `json:"bytes"` Duration int64 `json:"duration"` Vlan int `json:"vlan"` Client struct { Ip string `json:"ip,omitempty"` IsBlacklisted bool `json:"is_blacklisted,omitempty"` IsBroadcastDomain bool `json:"is_broadcast_domain,omitempty"` Port int `json:"port,omitempty"` IsDhcp bool `json:"is_dhcp,omitempty"` Name string `json:"name,omitempty"` } `json:"client,omitempty"` Server struct { Ip string `json:"ip"` IsBlacklisted bool `json:"is_blacklisted"` IsDhcp bool `json:"is_dhcp"` Port int `json:"port"` Name string `json:"name"` IsBroadcast bool `json:"is_broadcast"` } Breakdown struct { Srv2Cli float64 `json:"srv2cli"` Cli2Srv float64 `json:"cli2srv"` } `json:"breakdown"` Thpt struct { Pps float64 `json:"pps"` Bps float64 `json:"bps"` } `json:"thpt"` Protocol struct { L4 string `json:"l4"` L7 string `json:"l7"` } `json:"protocol"` }
type ActiveFlowResp ¶
type ActiveFlowResp struct { BasePageResp Data []*ActiveFlow `json:"data"` }
type AlertType ¶
type AlertType string
AlertType 警告类型
所有流警告的Key也可作为警告类型,详见 https://www.ntop.org/guides/ntopng/scripts/alert_definitions.html#alert-key
type AlertTypeSeverity ¶
type AlertTypeSeverity string
AlertTypeSeverity 严重性
const ( AlertTypeSeverityAll AlertTypeSeverity = "" // 全部 AlertTypeSeverityNoticeOrLower AlertTypeSeverity = "notice_or_lower" // 通知或更低 AlertTypeSeverityWarning AlertTypeSeverity = "warning" // 警告 AlertTypeSeverityError AlertTypeSeverity = "error" // 错误或更高 )
type Application ¶
type ApplicationCategory ¶
type ApplicationCategory struct { ColumnCategoryId int `json:"column_category_id"` ColumnCategoryName string `json:"column_category_name"` ColumnCategoryHosts string `json:"column_category_hosts"` ColumnNumHosts string `json:"column_num_hosts"` ColumnNumProtos string `json:"column_num_protos"` }
func (ApplicationCategory) Id ¶
func (c ApplicationCategory) Id() int
func (ApplicationCategory) Name ¶
func (c ApplicationCategory) Name() string
func (ApplicationCategory) NumHosts ¶
func (c ApplicationCategory) NumHosts() int
func (ApplicationCategory) NumProtocols ¶
func (c ApplicationCategory) NumProtocols() int
type BasePageReq ¶
type BasePageResp ¶
type Behaviour ¶
type Behaviour struct { AsServer struct { Value int64 `json:"value"` UpperBound int64 `json:"upper_bound"` LowerBound int64 `json:"lower_bound"` Anomaly bool `json:"anomaly"` } `json:"as_server"` AsClient struct { Value int64 `json:"value"` UpperBound int64 `json:"upper_bound"` LowerBound int64 `json:"lower_bound"` Anomaly bool `json:"anomaly"` } `json:"as_client"` TotNumAnomalies int64 `json:"tot_num_anomalies"` }
type Category ¶
type Category struct { ColumnStatus string `json:"column_status"` ColumnName string `json:"column_name"` ColumnCategoryName string `json:"column_category_name"` ColumnCategory string `json:"column_category"` ColumnUpdateIntervalLabel string `json:"column_update_interval_label"` ColumnLabel string `json:"column_label"` ColumnNumHits string `json:"column_num_hits"` ColumnEnabled bool `json:"column_enabled"` ColumnNumHosts string `json:"column_num_hosts"` ColumnUrl string `json:"column_url"` ColumnUpdateInterval int `json:"column_update_interval"` ColumnLastUpdate string `json:"column_last_update"` }
func (Category) LastUpdate ¶
func (Category) UpdateInterval ¶
func (Category) UpdateIntervalLabel ¶
type CategoryReq ¶
type CategoryReq struct { BasePageReq EnabledStatus EnabledStatus `json:"enabled_status"` // 启用状态 Category string `json:"category,omitempty"` // 应用程序类别 }
type CategoryResp ¶
type CategoryResp struct { BasePageResp Data []*Category `json:"data"` }
type CliSrvType ¶
type CliSrvType string
const ( CliSrvTypeClient CliSrvType = "client" CliSrvTypeServer CliSrvType = "server" )
type Country ¶
type Country struct { ColumnChart string `json:"column_chart"` ColumnTraffic string `json:"column_traffic"` ColumnId string `json:"column_id"` ColumnBreakdown string `json:"column_breakdown"` Key string `json:"key"` ColumnSince string `json:"column_since"` ColumnHosts string `json:"column_hosts"` ColumnScore string `json:"column_score"` ColumnThpt string `json:"column_thpt"` }
type CountryReq ¶
type CountryReq struct {
BasePageReq
}
type CountryResp ¶
type CountryResp struct { BasePageResp Data []*Country `json:"data"` }
type DeviceApplication ¶
type DeviceApplication struct { ColumnNdpiApplicationId int `json:"column_ndpi_application_id"` ColumnNdpiApplication string `json:"column_ndpi_application"` ColumnNdpiCategory string `json:"column_ndpi_category"` ColumnServerPolicy string `json:"column_server_policy"` ColumnClientPolicy string `json:"column_client_policy"` }
func (DeviceApplication) ClientPolicy ¶
func (dp DeviceApplication) ClientPolicy() PolicyFilter
func (DeviceApplication) NdpiAppId ¶
func (dp DeviceApplication) NdpiAppId() int
func (DeviceApplication) NdpiAppName ¶
func (dp DeviceApplication) NdpiAppName() string
func (DeviceApplication) NdpiCategory ¶
func (dp DeviceApplication) NdpiCategory() string
func (DeviceApplication) ServerPolicy ¶
func (dp DeviceApplication) ServerPolicy() PolicyFilter
type DeviceApplicationReq ¶
type DeviceApplicationReq struct { BasePageReq DeviceType *DeviceType `json:"device_type"` // 设备类型 PolicyFilter *PolicyFilter `json:"policy_filter,omitempty"` // 过滤策略 Category string `json:"category,omitempty"` // 类别 L7Proto int `json:"l7_proto,omitempty"` // 协议 }
type DeviceApplicationResp ¶
type DeviceApplicationResp struct { BasePageResp Data []*DeviceApplication `json:"data"` }
type DeviceType ¶
type DeviceType int
DeviceType 设备类型
const ( DeviceTypeUnknown DeviceType = iota // 未知 DeviceTypePrinter // 打印机 DeviceTypeRecording // 录像 DeviceTypePC // 计算机 DeviceTypeLaptop // 笔记本电脑 DeviceTypePad // 平板 DeviceTypeMobile // 手机 DeviceTypeTV // TV DeviceTypeRouterOrSwitch // 路由器/交换机 DeviceTypeWireless // 无线网络 DeviceTypeNAS // NAS DeviceTypeMultimedia // 多媒体 DeviceTypeIoT // IoT )
type EnabledStatus ¶
type EnabledStatus string
EnabledStatus 启用状态
const ( EnabledStatusAll EnabledStatus = "all" EnabledStatusEnabled EnabledStatus = "enabled" EnabledStatusDisabled EnabledStatus = "disabled" )
type Flow ¶
type Flow struct { KeyAndHash string `json:"key_and_hash"` Key string `json:"key"` HashId string `json:"hash_id"` ColumnKey string `json:"column_key"` ColumnNdpi string `json:"column_ndpi"` ColumnProtoL4 string `json:"column_proto_l4"` ColumnClient string `json:"column_client"` ColumnServer string `json:"column_server"` ColumnBreakdown string `json:"column_breakdown"` ColumnDuration string `json:"column_duration"` ColumnThpt float64 `json:"column_thpt"` // 当前流量,单位:bps ColumnBytes int64 `json:"column_bytes"` // 总字节数,单位:byte ColumnInfo string `json:"column_info"` ColumnFirstSeen string `json:"column_first_seen"` ColumnLastSeen string `json:"column_last_seen"` }
func (Flow) Application ¶
func (Flow) FirstSeenTime ¶
func (Flow) LastSeenTime ¶
type FlowHostType ¶
type FlowHostType string
FlowHostType 主机类型
const ( FlowHostTypeAll FlowHostType = "" FlowHostTypeLocalOnly FlowHostType = "local_only" FlowHostTypeRemoteOnly FlowHostType = "remote_only" FlowHostTypeLocalToRemote FlowHostType = "local_origin_remote_target" FlowHostTypeRemoteToLocal FlowHostType = "remote_origin_local_target" )
type FlowReq ¶
type FlowReq struct { BasePageReq IfId int64 `json:"ifid"` FlowHostsType FlowHostType `json:"flowhosts_type,omitempty"` AlertType AlertType `json:"alert_type,omitempty"` AlertTypeSeverity AlertTypeSeverity `json:"alert_type_severity,omitempty"` TrafficType TrafficType `json:"traffic_type,omitempty"` Host string `json:"host,omitempty"` // 主机IP Application string `json:"application,omitempty"` // 应用程序 Category string `json:"category,omitempty"` // 应用程序类别 DSCP *int `json:"dscp,omitempty"` // DSCP有效值0-63 HostPoolId *int `json:"host_pool_id,omitempty"` // 主机池ID Network *int `json:"network,omitempty"` // 网络ID Version IPVersion `json:"version,omitempty"` // IP版本 L4Proto L4Proto `json:"l4_proto,omitempty"` // 协议 }
type FlowResp ¶
type FlowResp struct { BasePageResp Data []*Flow `json:"data"` }
type FlowStatsReq ¶
type FlowStatsResp ¶
type FlowStatsResp struct { SeenLast string `json:"seen.last"` SeenFirst string `json:"seen.first"` SeenDuration string `json:"seen.duration"` Bytes int64 `json:"bytes"` GoodputBytes int64 `json:"goodput_bytes"` Cli2SrvPackets int64 `json:"cli2srv.packets"` Srv2CliPackets int64 `json:"srv2cli.packets"` Cli2SrvBytes int64 `json:"cli2srv.bytes"` Srv2CliBytes int64 `json:"srv2cli.bytes"` Throughput string `json:"throughput"` TopThroughputDisplay string `json:"top_throughput_display"` ThroughputRaw float64 `json:"throughput_raw"` C2SOOO int64 `json:"c2sOOO"` C2Slost int64 `json:"c2slost"` C2SkeepAlive int64 `json:"c2skeep_alive"` C2Sretr int64 `json:"c2sretr"` S2COOO int64 `json:"s2cOOO"` S2Clost int64 `json:"s2clost"` S2CkeepAlive int64 `json:"s2ckeep_alive"` S2Cretr int64 `json:"s2cretr"` }
type Host ¶
type Host struct { ColumnBreakdown string `json:"column_breakdown"` ColumnUrl string `json:"column_url"` ColumnIp string `json:"column_ip"` ColumnScore string `json:"column_score"` ColumnNumFlows string `json:"column_num_flows"` ColumnTrafficSent string `json:"column_traffic_sent"` Key string `json:"key"` ColumnName string `json:"column_name"` ColumnAlerts string `json:"column_alerts"` ColumnTraffic string `json:"column_traffic"` ColumnLast string `json:"column_last"` ColumnThpt string `json:"column_thpt"` ColumnInfo string `json:"column_info"` ColumnSince string `json:"column_since"` }
type HostDistroReq ¶
type HostDistroReq struct { Host string Type HostDistroType CliSrv CliSrvType `json:"cli_srv,omitempty"` // 仅HostDistroTypePortTraffic需要指定值 HttpMode HttpMode `json:"http_mode,omitempty"` // 仅HostDistroTypeHttpBreakdown需要指定值 }
type HostDistroType ¶
type HostDistroType string
type HostFingerprint ¶
type HostL4Data ¶
type HostL7Data ¶
type HostMode ¶
type HostMode string
HostMode 过滤主机
const ( HostModeAll HostMode = "" // 全部 HostModeBlacklisted HostMode = "blacklisted" // 列入黑名单的主机 HostModeBroadcastDomain HostMode = "broadcast_domain" // 广播域主机 HostModeBroadcastOrMulticast HostMode = "broadcast_multicast" // 组播/广播主机 HostModeDHCP HostMode = "dhcp" // DHCP主机 HostModeLocal HostMode = "local" // 本地主机 HostModeLocalNoTx HostMode = "local_no_tx" // 本地无发送流量主机 HostModeLocalNoTcpTx HostMode = "local_no_tcp_tx" // 本地无TCP/UDP发送流量主机 HostModeRemote HostMode = "remote" // 远程主机 HostModeRemoteNoRx HostMode = "remote_no_rx" // 远程无接收流量主机 HostModeRemoteNoTcpRx HostMode = "remote_no_tcp_rx" // 远程无TCP/UDP接收流量主机 )
type HostPool ¶
type HostPool struct { ColumnHosts string `json:"column_hosts"` ColumnId string `json:"column_id"` ColumnSince string `json:"column_since"` ColumnThpt string `json:"column_thpt"` Key string `json:"key"` ColumnChart string `json:"column_chart"` ColumnBreakdown string `json:"column_breakdown"` ColumnNumDroppedFlows string `json:"column_num_dropped_flows"` ColumnTraffic string `json:"column_traffic"` }
func (HostPool) NumDroppedFlows ¶
type HostPoolReq ¶
type HostPoolReq struct {
BasePageReq
}
type HostReq ¶
type HostReq struct { BasePageReq Version IPVersion `json:"version,omitempty"` // IP版本 TrafficType TrafficType `json:"traffic_type,omitempty"` // 流量方向 HostMode HostMode `json:"mode,omitempty"` // 过滤主机 }
type HostResp ¶
type HostResp struct { BasePageResp Data []*Host `json:"data"` }
type HostStats ¶
type HostStats struct { Systemhost bool `json:"systemhost"` ThroughputTrendBps int64 `json:"throughput_trend_bps"` Asn int64 `json:"asn"` UdpBytesSent int64 `json:"udp.bytes.sent"` Os int64 `json:"os"` UdpBytesRcvd int64 `json:"udp.bytes.rcvd"` ContactsAsClient int64 `json:"contacts.as_client"` Name string `json:"name"` HostUnreachableFlowsAsServer int64 `json:"host_unreachable_flows.as_server"` AlertedFlowsAsServer int64 `json:"alerted_flows.as_server"` IcmpBytesRcvdAnomalyIndex int64 `json:"icmp.bytes.rcvd.anomaly_index"` ThroughputBps float64 `json:"throughput_bps"` HasshFingerprint interface{} `json:"hassh_fingerprint"` Ifid int `json:"ifid"` Ja3Fingerprint interface{} `json:"ja3_fingerprint"` FlowsAsServer int64 `json:"flows.as_server"` ActiveFlowsAsServer int64 `json:"active_flows.as_server"` OtherIpPacketsRcvd int64 `json:"other_ip.packets.rcvd"` Localhost bool `json:"localhost"` Duration int64 `json:"duration"` City string `json:"city"` Ipkey int64 `json:"ipkey"` SeenLast int64 `json:"seen.last"` BytesSent int64 `json:"bytes.sent"` SeenFirst int64 `json:"seen.first"` TcpPacketStatsSent struct { Lost int64 `json:"lost"` KeepAlive int64 `json:"keep_alive"` OutOfOrder int64 `json:"out_of_order"` Retransmissions int64 `json:"retransmissions"` } `json:"tcpPacketStats.sent"` OtherIpBytesRcvd int64 `json:"other_ip.bytes.rcvd"` Privatehost bool `json:"privatehost"` NdpiCategories map[string]struct { Duration int64 `json:"duration"` Category int64 `json:"category"` Bytes int64 `json:"bytes"` BytesRcvd int64 `json:"bytes.rcvd"` BytesSent int64 `json:"bytes.sent"` } `json:"ndpi_categories"` Names interface{} `json:"names"` HostUnreachableFlowsAsClient int64 `json:"host_unreachable_flows.as_client"` ThroughputPps float64 `json:"throughput_pps"` ScoreAsClient int64 `json:"score.as_client"` TcpPacketStatsRcvd struct { Lost int64 `json:"lost"` KeepAlive int64 `json:"keep_alive"` OutOfOrder int64 `json:"out_of_order"` Retransmissions int64 `json:"retransmissions"` } `json:"tcpPacketStats.rcvd"` UnreachableFlowsAsServer int `json:"unreachable_flows.as_server"` ScorePct struct { ScoreBreakdownServer map[string]interface{} `json:"score_breakdown_server"` ScoreBreakdownClient map[string]interface{} `json:"score_breakdown_client"` } `json:"score_pct"` IcmpBytesSent int64 `json:"icmp.bytes.sent"` OsDetail string `json:"os_detail"` NumUnidirectionalTcpFlows struct { NumEgress int64 `json:"num_egress"` NumIngress int64 `json:"num_ingress"` } `json:"num_unidirectional_tcp_flows"` TcpBytesSentAnomalyIndex int64 `json:"tcp.bytes.sent.anomaly_index"` TcpPacketsSent int64 `json:"tcp.packets.sent"` IcmpBytesRcvd int64 `json:"icmp.bytes.rcvd"` TcpBytesRcvdAnomalyIndex int64 `json:"tcp.bytes.rcvd.anomaly_index"` NumIncomingPeersThatSentTcpUdpFlowsNoResponse int64 `json:"num_incoming_peers_that_sent_tcp_udp_flows_no_response"` Latitude float64 `json:"latitude"` ActiveAlertedFlows int64 `json:"active_alerted_flows"` Dscp map[string]struct { PacketsRcvd int64 `json:"packets.rcvd"` PacketsSent int64 `json:"packets.sent"` BytesRcvd int64 `json:"bytes.rcvd"` BytesSent int64 `json:"bytes.sent"` } `json:"dscp"` BytesNdpiUnknown int64 `json:"bytes.ndpi.unknown"` ContactsAsServer int64 `json:"contacts.as_server"` NumContactedPeersWithTcpUdpFlowsNoResponse int64 `json:"num_contacted_peers_with_tcp_udp_flows_no_response"` ThroughputTrendPps int64 `json:"throughput_trend_pps"` BytesRatio float64 `json:"bytes_ratio"` Score int64 `json:"score"` ScoreAsServer int64 `json:"score.as_server"` Mac string `json:"mac"` Ndpi map[string]struct { Breed string `json:"breed"` PacketsSent int64 `json:"packets.sent"` PacketsRcvd int64 `json:"packets.rcvd"` BytesRcvd int64 `json:"bytes.rcvd"` Duration int64 `json:"duration"` NumFlows int64 `json:"num_flows"` BytesSent int64 `json:"bytes.sent"` } `json:"ndpi"` ActiveFlowsAsClient int64 `json:"active_flows.as_client"` ActiveFlowsBehaviour Behaviour `json:"active_flows_behaviour"` HostServicesBitmap int64 `json:"host_services_bitmap"` Longitude float64 `json:"longitude"` Devtype int64 `json:"devtype"` TcpPacketsSeqProblems bool `json:"tcp.packets.seq_problems"` UnreachableFlowsAsClient int64 `json:"unreachable_flows.as_client"` Iphex string `json:"iphex"` PktsRatio float64 `json:"pkts_ratio"` UdpBytesSentNonUnicast int64 `json:"udpBytesSent.non_unicast"` BytesRcvd int64 `json:"bytes.rcvd"` AlertedFlowsAsClient int64 `json:"alerted_flows.as_client"` OtherIpBytesSent int64 `json:"other_ip.bytes.sent"` Tskey string `json:"tskey"` PacketsRcvd int64 `json:"packets.rcvd"` IcmpPacketsRcvd int64 `json:"icmp.packets.rcvd"` UdpPacketsSent int64 `json:"udp.packets.sent"` IcmpPacketsSent int64 `json:"icmp.packets.sent"` UdpPacketsRcvd int64 `json:"udp.packets.rcvd"` BytesSentAnomalyIndex int64 `json:"bytes.sent.anomaly_index"` TcpBytesRcvd int64 `json:"tcp.bytes.rcvd"` BytesRcvdAnomalyIndex int64 `json:"bytes.rcvd.anomaly_index"` IpVersion IPVersion `json:"ip_version"` IcmpBytesSentAnomalyIndex int64 `json:"icmp.bytes.sent.anomaly_index"` TcpPacketsRcvd int64 `json:"tcp.packets.rcvd"` NumFlowAlerts int64 `json:"num_flow_alerts"` NumBlacklistedFlows struct { TotAsServer int64 `json:"tot_as_server"` TotAsClient int64 `json:"tot_as_client"` AsClient int64 `json:"as_client"` AsServer int64 `json:"as_server"` } `json:"num_blacklisted_flows"` UdpBytesSentUnicast int64 `json:"udpBytesSent.unicast"` TotalFlowsAsServer int64 `json:"total_flows.as_server"` TotalFlowsAsClient int64 `json:"total_flows.as_client"` ObservationPointId int64 `json:"observation_point_id"` FlowsAsClient int64 `json:"flows.as_client"` OtherIpPacketsSent int64 `json:"other_ip.packets.sent"` PktStatsRecv PktStats `json:"pktStats.recv"` IsRxOnly bool `json:"is_rx_only"` TcpBytesSent int64 `json:"tcp.bytes.sent"` Continent string `json:"continent"` OtherIpBytesRcvdAnomalyIndex int64 `json:"other_ip.bytes.rcvd.anomaly_index"` IsMulticast bool `json:"is_multicast"` Ip string `json:"ip"` PktStatsSent PktStats `json:"pktStats.sent"` DhcpHost bool `json:"dhcpHost"` CrawlerBotScannerHost bool `json:"crawlerBotScannerHost"` BroadcastDomainHost bool `json:"broadcast_domain_host"` IsBlacklisted bool `json:"is_blacklisted"` UdpBytesSentAnomalyIndex int64 `json:"udp.bytes.sent.anomaly_index"` TotalActivityTime int64 `json:"total_activity_time"` ActiveHttpHosts int64 `json:"active_http_hosts"` Vlan int64 `json:"vlan"` PacketsSent int64 `json:"packets.sent"` PacketsRcvdAnomalyIndex int64 `json:"packets.rcvd.anomaly_index"` TotalAlerts int64 `json:"total_alerts"` HostPoolId int64 `json:"host_pool_id"` PacketsSentAnomalyIndex int64 `json:"packets.sent.anomaly_index"` Country string `json:"country"` OtherIpBytesSentAnomalyIndex int64 `json:"other_ip.bytes.sent.anomaly_index"` NumAlerts int64 `json:"num_alerts"` UdpBytesRcvdAnomalyIndex int64 `json:"udp.bytes.rcvd.anomaly_index"` SerializeByMac bool `json:"serialize_by_mac"` IsBroadcast bool `json:"is_broadcast"` ScoreBehaviour Behaviour `json:"score_behaviour"` Asname string `json:"asname"` ServerContacts map[string]int64 `json:"server_contacts,omitempty"` UsedPorts struct { LocalServerPorts map[string]string `json:"local_server_ports"` RemoteContactedPorts map[string]string `json:"remote_contacted_ports"` } `json:"used_ports,omitempty"` Cardinality struct { NumHostContactsAsServer int64 `json:"num_host_contacts_as_server"` NumContactedHostsAsClient int64 `json:"num_contacted_hosts_as_client"` NumContactedServicesAsClient int64 `json:"num_contacted_services_as_client"` } `json:"cardinality,omitempty"` HTTP struct { Receiver HttpBreakdown `json:"receiver"` Sender HttpBreakdown `json:"sender"` VirtualHosts interface{} `json:"virtual_hosts"` } `json:"http,omitempty"` }
type HostTopPeer ¶
type HttpBreakdown ¶
type HttpBreakdown struct { Query struct { Total int64 `json:"total"` NumGet int64 `json:"num_get"` NumOther int64 `json:"num_other"` NumHead int64 `json:"num_head"` NumPut int64 `json:"num_put"` NumPost int64 `json:"num_post"` } `json:"query"` Rate struct { Query struct { Get int64 `json:"get"` Put int64 `json:"put"` Post int64 `json:"post"` Head int64 `json:"head"` Other int64 `json:"other"` } `json:"query"` Response struct { Num1XX int64 `json:"1xx"` Num2XX int64 `json:"2xx"` Num3XX int64 `json:"3xx"` Num4XX int64 `json:"4xx"` Num5XX int64 `json:"5xx"` } `json:"response"` } `json:"rate"` Response struct { Total int64 `json:"total"` Num3XX int64 `json:"num_3xx"` Num4XX int64 `json:"num_4xx"` Num2XX int64 `json:"num_2xx"` Num5XX int64 `json:"num_5xx"` Num1XX int64 `json:"num_1xx"` } `json:"response"` }
type IfDistroReq ¶
type IfDistroReq struct { IfId int64 `json:"ifid"` Type IfDistroType }
type IfDistroType ¶
type IfDistroType string
IfDistroType 接口统计类型
const ( IfDistroTypePktSize IfDistroType = "size" // 数据包 - 大小分布 IfDistroTypePktIpVer IfDistroType = "ipver" // 数据包 - IP版本分布 IfDistroTypePktTcpFlags IfDistroType = "tcp_flags" // 数据包 - TCP标志分布 IfDistroTypeDSCP IfDistroType = "dscp" // DSCP - 优先级分布 IfDistroTypeL7SinceStartup IfDistroType = "l7" // 应用程序概述 - 协议分布 IfDistroTypeL7BreedSinceStartup IfDistroType = "l7_breed" // 应用程序概述 - 协议类型分布 IfDistroTypeL7BreedCount IfDistroType = "l7_breed_count" // 应用程序实时流计数 - 协议类型分布 IfDistroTypeTcpStats IfDistroType = "tcp_stats" // 应用程序实时流计数 - TCP连接状态分布 IfDistroTypeL7Category IfDistroType = "l7_category" // 应用程序类别概述 IfDistroTypeTopHosts IfDistroType = "top_hosts" // Top主机 )
type Interface ¶
type Interface struct { ActiveDiscoveryActive bool `json:"active_discovery_active,omitempty"` AlertedFlows int64 `json:"alerted_flows,omitempty"` AlertedFlowsError int64 `json:"alerted_flows_error,omitempty"` AlertedFlowsNotice int64 `json:"alerted_flows_notice,omitempty"` AlertedFlowsWarning int64 `json:"alerted_flows_warning,omitempty"` Bytes int64 `json:"bytes,omitempty"` BytesDownload int64 `json:"bytes_download,omitempty"` BytesUpload int64 `json:"bytes_upload,omitempty"` DownloadUploadChart struct { Download []int64 `json:"download"` Upload []int64 `json:"upload"` } `json:"download_upload_chart,omitempty"` DroppedAlerts int64 `json:"dropped_alerts,omitempty"` Drops int64 `json:"drops,omitempty"` EngagedAlerts int64 `json:"engaged_alerts,omitempty"` EngagedAlertsError int64 `json:"engaged_alerts_error,omitempty"` EngagedAlertsNotice int64 `json:"engaged_alerts_notice,omitempty"` EngagedAlertsWarning int64 `json:"engaged_alerts_warning,omitempty"` Epoch int64 `json:"epoch,omitempty"` FlowDroppedAlerts int64 `json:"flow_dropped_alerts,omitempty"` FlowsPctg int64 `json:"flows_pctg,omitempty"` HostDroppedAlerts int64 `json:"host_dropped_alerts,omitempty"` HostsPctg int64 `json:"hosts_pctg,omitempty"` Ifid int64 `json:"ifid"` Ifname string `json:"ifname"` IsView bool `json:"is_view,omitempty"` Local2Remote int64 `json:"local2remote,omitempty"` Localtime string `json:"localtime,omitempty"` MacsPctg int64 `json:"macs_pctg,omitempty"` NumDevices int64 `json:"num_devices,omitempty"` NumFlows int64 `json:"num_flows,omitempty"` NumHosts int64 `json:"num_hosts,omitempty"` NumLiveCaptures int64 `json:"num_live_captures,omitempty"` NumLocalHosts int64 `json:"num_local_hosts,omitempty"` NumLocalHostsAnomalies int64 `json:"num_local_hosts_anomalies,omitempty"` NumLocalRcvdOnlyHosts int64 `json:"num_local_rcvd_only_hosts,omitempty"` NumRcvdOnlyHosts int64 `json:"num_rcvd_only_hosts,omitempty"` NumRemoteHostsAnomalies int64 `json:"num_remote_hosts_anomalies,omitempty"` OtherDroppedAlerts int64 `json:"other_dropped_alerts,omitempty"` Packets int64 `json:"packets,omitempty"` PacketsDownload int64 `json:"packets_download,omitempty"` PacketsUpload int64 `json:"packets_upload,omitempty"` PeriodicStatsUpdateFrequencySecs int64 `json:"periodic_stats_update_frequency_secs,omitempty"` Profiles interface{} `json:"profiles,omitempty"` Remote2Local int64 `json:"remote2local,omitempty"` RemoteBps float64 `json:"remote_bps,omitempty"` RemotePps float64 `json:"remote_pps,omitempty"` Speed int64 `json:"speed,omitempty"` // Mbps SystemHostStats struct { AlertsQueries int64 `json:"alerts_queries,omitempty"` AlertsStats struct { AlertQueues struct { InternalAlertsQueue struct { PctNotEnqueued int64 `json:"pct_not_enqueued,omitempty"` } `json:"internal_alerts_queue,omitempty"` } `json:"alert_queues,omitempty"` } `json:"alerts_stats,omitempty"` CpuLoad float64 `json:"cpu_load,omitempty"` CpuStates struct { Guest float64 `json:"guest,omitempty"` GuestNice float64 `json:"guest_nice,omitempty"` Idle float64 `json:"idle,omitempty"` Iowait float64 `json:"iowait,omitempty"` Irq float64 `json:"irq,omitempty"` Nice float64 `json:"nice,omitempty"` Softirq float64 `json:"softirq,omitempty"` Steal float64 `json:"steal,omitempty"` System float64 `json:"system,omitempty"` User float64 `json:"user,omitempty"` } `json:"cpu_states,omitempty"` DroppedAlerts int64 `json:"dropped_alerts,omitempty"` MemBuffers int64 `json:"mem_buffers,omitempty"` MemCached int64 `json:"mem_cached,omitempty"` MemFree int64 `json:"mem_free,omitempty"` MemNtopngResident int64 `json:"mem_ntopng_resident,omitempty"` MemNtopngVirtual int64 `json:"mem_ntopng_virtual,omitempty"` MemShmem int64 `json:"mem_shmem,omitempty"` MemSreclaimable int64 `json:"mem_sreclaimable,omitempty"` MemTotal int64 `json:"mem_total,omitempty"` MemUsed int64 `json:"mem_used,omitempty"` WrittenAlerts int64 `json:"written_alerts,omitempty"` } `json:"system_host_stats,omitempty"` TcpPacketStats struct { Lost int64 `json:"lost,omitempty"` // 丢失包数量 OutOfOrder int64 `json:"out_of_order,omitempty"` // 乱序包数量 Retransmissions int64 `json:"retransmissions,omitempty"` // 重传包数量 } `json:"tcpPacketStats,omitempty"` // TCP数据包分析 Throughput struct { Download struct { Bps float64 `json:"bps,omitempty"` Pps float64 `json:"pps,omitempty"` } `json:"download,omitempty"` Upload struct { Bps float64 `json:"bps,omitempty"` Pps float64 `json:"pps,omitempty"` } `json:"upload,omitempty"` } `json:"throughput,omitempty"` ThroughputBps float64 `json:"throughput_bps,omitempty"` ThroughputPps float64 `json:"throughput_pps,omitempty"` TrafficExtractionNumTasks int64 `json:"traffic_extraction_num_tasks,omitempty"` TrafficRecording string `json:"traffic_recording,omitempty"` Uptime string `json:"uptime,omitempty"` }
type InterfaceSummary ¶
type InterfaceSummary struct { ActiveDiscoveryActive bool `json:"active_discovery_active,omitempty"` AlertedFlows int64 `json:"alerted_flows,omitempty"` AlertedFlowsError int64 `json:"alerted_flows_error,omitempty"` AlertedFlowsWarning int64 `json:"alerted_flows_warning,omitempty"` Drops int64 `json:"drops,omitempty"` EngagedAlerts int64 `json:"engaged_alerts,omitempty"` EngagedAlertsError int64 `json:"engaged_alerts_error,omitempty"` EngagedAlertsWarning int64 `json:"engaged_alerts_warning,omitempty"` FlowsPctg int64 `json:"flows_pctg,omitempty"` HostsPctg int64 `json:"hosts_pctg,omitempty"` Ifid int64 `json:"ifid"` Ifname string `json:"ifname"` Localtime string `json:"localtime,omitempty"` MacsPctg int64 `json:"macs_pctg,omitempty"` NumDevices int64 `json:"num_devices,omitempty"` NumFlows int64 `json:"num_flows,omitempty"` NumHosts int64 `json:"num_hosts,omitempty"` NumLiveCaptures int64 `json:"num_live_captures,omitempty"` NumLocalHosts int64 `json:"num_local_hosts,omitempty"` NumLocalRcvdOnlyHosts int64 `json:"num_local_rcvd_only_hosts,omitempty"` NumRcvdOnlyHosts int64 `json:"num_rcvd_only_hosts,omitempty"` Throughput struct { Download float64 `json:"download,omitempty"` Upload float64 `json:"upload,omitempty"` } `json:"throughput,omitempty"` ThroughputBps float64 `json:"throughput_bps,omitempty"` TrafficExtractionNumTasks int64 `json:"traffic_extraction_num_tasks,omitempty"` TrafficRecording string `json:"traffic_recording,omitempty"` Uptime string `json:"uptime,omitempty"` }
type LabelValue ¶
type Mac ¶
type Mac struct { ColumnArpTotal string `json:"column_arp_total"` ColumnDeviceType string `json:"column_device_type"` Key string `json:"key"` ColumnSince string `json:"column_since"` ColumnBreakdown string `json:"column_breakdown"` ColumnMac string `json:"column_mac"` ColumnName string `json:"column_name"` ColumnTraffic string `json:"column_traffic"` ColumnHosts string `json:"column_hosts"` ColumnThpt string `json:"column_thpt"` ColumnManufacturer string `json:"column_manufacturer"` }
func (Mac) DeviceType ¶
func (Mac) Manufacturer ¶
type MacReq ¶
type MacReq struct { BasePageReq MacMode *MacMode // 过滤MAC Manufacturer string // 供应商 DeviceType *DeviceType // 设备类型 }
type MacResp ¶
type MacResp struct { BasePageResp Data []*Mac `json:"data"` }
type Network ¶
type Network struct { Key string `json:"key"` ColumnId string `json:"column_id"` ColumnHostScoreRatio string `json:"column_host_score_ratio"` ColumnAlertedFlows string `json:"column_alerted_flows"` ColumnBreakdown string `json:"column_breakdown"` ColumnHosts string `json:"column_hosts"` ColumnChart string `json:"column_chart"` ColumnScore string `json:"column_score"` ColumnThpt string `json:"column_thpt"` ColumnTraffic string `json:"column_traffic"` }
func (Network) AlertedFlows ¶
type NetworkResp ¶
type NetworkResp struct { BasePageResp Data []*Network `json:"data"` }
type NetworksReq ¶
type NetworksReq struct {
BasePageReq
}
type Ntopng ¶
type Ntopng struct {
// contains filtered or unexported fields
}
func (*Ntopng) GetActiveFlows ¶
func (this *Ntopng) GetActiveFlows(req *FlowReq) (*ActiveFlowResp, error)
func (*Ntopng) GetApplicationCategoryList ¶
func (this *Ntopng) GetApplicationCategoryList() ([]*ApplicationCategory, error)
func (*Ntopng) GetApplicationList ¶
func (this *Ntopng) GetApplicationList() ([]*Application, error)
func (*Ntopng) GetCategoryList ¶
func (this *Ntopng) GetCategoryList(req *CategoryReq) (*CategoryResp, error)
func (*Ntopng) GetCountryList ¶
func (this *Ntopng) GetCountryList(req *CountryReq) (*CountryResp, error)
func (*Ntopng) GetDeviceApplicationList ¶
func (this *Ntopng) GetDeviceApplicationList(req *DeviceApplicationReq) (*DeviceApplicationResp, error)
func (*Ntopng) GetFlowList ¶
GetFlowList 活动流列表
func (*Ntopng) GetFlowStats ¶
func (this *Ntopng) GetFlowStats(req *FlowStatsReq) (*FlowStatsResp, error)
func (*Ntopng) GetHostDistro ¶
func (this *Ntopng) GetHostDistro(req *HostDistroReq) ([]*LabelValue, error)
func (*Ntopng) GetHostFingerprint ¶
func (this *Ntopng) GetHostFingerprint(host string) ([]*HostFingerprint, error)
func (*Ntopng) GetHostL4Data ¶
func (this *Ntopng) GetHostL4Data(host string) ([]*HostL4Data, error)
func (*Ntopng) GetHostL7Data ¶
func (this *Ntopng) GetHostL7Data(host string) ([]*HostL7Data, error)
func (*Ntopng) GetHostPoolList ¶
func (this *Ntopng) GetHostPoolList(req *HostPoolReq) ([]*HostPool, error)
GetHostPoolList 获取主机池列表
func (*Ntopng) GetHostTopPeersProtocols ¶
func (this *Ntopng) GetHostTopPeersProtocols(host string) ([]*HostTopPeer, error)
func (*Ntopng) GetInterfaceAddress ¶
func (*Ntopng) GetInterfaceDistro ¶
func (this *Ntopng) GetInterfaceDistro(req *IfDistroReq) ([]*LabelValue, error)
GetInterfaceDistro 接口数据分布情况
func (*Ntopng) GetInterfaceList ¶
func (*Ntopng) GetInterfaceSummary ¶
func (this *Ntopng) GetInterfaceSummary(ifId int64) (*InterfaceSummary, error)
func (*Ntopng) GetMacList ¶
GetMacList 获取MAC地址列表
func (*Ntopng) GetNetworkList ¶
func (this *Ntopng) GetNetworkList(req *NetworksReq) (*NetworkResp, error)
GetNetworkList 获取网络列表
func (*Ntopng) GetTsTypeConst ¶
func (this *Ntopng) GetTsTypeConst(req *TsTypeConstReq) ([]*TsTypeConst, error)
type OS ¶
type OS struct { ColumnId string `json:"column_id"` Key string `json:"key"` ColumnHosts string `json:"column_hosts"` ColumnBreakdown string `json:"column_breakdown"` ColumnAlerts string `json:"column_alerts"` ColumnThpt string `json:"column_thpt"` ColumnTraffic string `json:"column_traffic"` ColumnChart string `json:"column_chart"` ColumnSince string `json:"column_since"` }
type Option ¶
type Option func(n *Ntopng)
func WithBaseUrl ¶
func WithBasicAuth ¶
func WithClient ¶
func WithTimeout ¶
func WithTransport ¶
func WithTransport(transport http.RoundTripper) Option
type OsReq ¶
type OsReq struct {
BasePageReq
}
type OsResp ¶
type OsResp struct { BasePageResp Data []*OS `json:"data"` }
type PolicyFilter ¶
type PolicyFilter int
PolicyFilter 过滤策略
const ( PolicyFilterWarning PolicyFilter = iota // 触发告警 PolicyFilterAllow // 可接受 )
type Series ¶
type Series struct { Id string `json:"id"` Data []float64 `json:"data"` Statistics struct { Total float64 `json:"total"` P95 float64 `json:"95th_percentile"` Average float64 `json:"average"` MaxVal float64 `json:"max_val"` MaxValIdx int `json:"max_val_idx"` MinVal float64 `json:"min_val"` MinValIdx int `json:"min_val_idx"` } `json:"statistics"` }
type TrafficType ¶
type TrafficType string
TrafficType 流方向
const ( TrafficTypeAll TrafficType = "" // 全部 // 流 方向 TrafficTypeUnicast TrafficType = "unicast" // 单播(非组播/非广播) TrafficTypeBroadcastOrMulticast TrafficType = "broadcast_multicast" // 组播/广播 TrafficTypeOneWayUnicast TrafficType = "one_way_unicast" // 单向单播(非组播/非广播) TrafficTypeOneWayBroadcastOrMulticast TrafficType = "one_way_broadcast_multicast" // 单向组播/广播 // 主机 流量方向 TrafficTypeOneWay TrafficType = "one_way" // 单向 TrafficTypeBidirectional TrafficType = "bidirectional" // 双向 )
type TsDataReq ¶
type TsDataReq struct { Schema string `json:"schema"` // 查询类型 Query map[string]interface{} `json:"query"` // 查询条件 TsKey interface{} `json:"tskey"` // 查询对象唯一标识,比如接口ID、主机IP BeginTime time.Time `json:"begin_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` Limit int `json:"limit,omitempty"` Zoom string `json:"zoom,omitempty"` TsCompare string `json:"ts_compare,omitempty"` Version IPVersion `json:"version,omitempty"` }
type TsDataResp ¶
type TsDataResp struct { Metadata struct { Query map[string]interface{} `json:"query"` Schema string `json:"schema"` NumPoint int64 `json:"num_point"` EpochBegin int64 `json:"epoch_begin"` EpochEnd int64 `json:"epoch_end"` EpochStep int64 `json:"epoch_step"` } `json:"metadata"` Series []*Series `json:"series"` AdditionalSeries map[string]interface{} `json:"additional_series"` }
type TsTypeConst ¶
type TsTypeConst struct { Id string `json:"id"` Group string `json:"group,omitempty"` // 分组 Scale string `json:"scale"` Query string `json:"query,omitempty"` Schema string `json:"schema"` Label string `json:"label"` // 名称 MeasureUnit string `json:"measure_unit"` // 单位 Priority int `json:"priority"` // 顺序 DefaultVisible bool `json:"default_visible,omitempty"` AlwaysVisible bool `json:"alwais_visibile,omitempty"` // 注:接口原始返回字段拼写错误 Timeseries map[string]interface{} `json:"timeseries"` }
type TsTypeConstReq ¶
type TsTypeConstReq struct { IfId int64 `json:"ifid"` Query string `json:"query"` // 查询类型:iface, host, mac, subnet, asn, country, os, vlan, host_pool, pod, container, ht, system, profile, redis, influxdb, am, snmp_interface, snmp_device, obs_point, sflowdev_port, flowdev, flowdev_port Host string `json:"host,omitempty"` Pool int64 `json:"pool,omitempty"` VLAN int64 `json:"vlan,omitempty"` ASN int64 `json:"asn,omitempty"` Mac string `json:"mac,omitempty"` }
Click to show internal directories.
Click to hide internal directories.