Documentation
¶
Overview ¶
Package clinet : Web APIを利用したクライントライブラリです。
Index ¶
- type AiListEntWebAPI
- type ArpFilter
- type ArpWebAPI
- type EventLogFilter
- type EventLogsWebAPI
- type NetflowFilter
- type NetflowWebAPI
- type NetflowWebAPILogEnt
- type PollingsWebAPI
- type SFlowCounterFilter
- type SFlowCounterWebAPI
- type SFlowCounterWebAPILogEnt
- type SFlowFilter
- type SFlowWebAPI
- type SFlowWebAPILogEnt
- type SnmpTrapFilter
- type SnmpTrapWebAPI
- type SyslogFilter
- type SyslogWebAPI
- type SyslogWebAPILogEnt
- type TWSNMPApi
- func (a *TWSNMPApi) Delete(path string) error
- func (a *TWSNMPApi) DeleteLog(id string) error
- func (a *TWSNMPApi) DeleteNodes(ids []string) error
- func (a *TWSNMPApi) DeletePollings(ids []string) error
- func (a *TWSNMPApi) DeleteReport(t, id string) error
- func (a *TWSNMPApi) Get(path string) ([]byte, error)
- func (a *TWSNMPApi) GetAIList() ([]*AiListEntWebAPI, error)
- func (a *TWSNMPApi) GetArpLogs(filter *ArpFilter) ([]*ArpWebAPI, error)
- func (a *TWSNMPApi) GetDevices() ([]*datastore.DeviceEnt, error)
- func (a *TWSNMPApi) GetEventLogs(filter *EventLogFilter) (*EventLogsWebAPI, error)
- func (a *TWSNMPApi) GetFlows() ([]*datastore.FlowEnt, error)
- func (a *TWSNMPApi) GetIPFIX(filter *NetflowFilter) (*NetflowWebAPI, error)
- func (a *TWSNMPApi) GetIPs() ([]*datastore.IPReportEnt, error)
- func (a *TWSNMPApi) GetMonitor() ([]*datastore.MonitorDataEnt, error)
- func (a *TWSNMPApi) GetNetFlow(filter *NetflowFilter) (*NetflowWebAPI, error)
- func (a *TWSNMPApi) GetNodes() ([]*datastore.NodeEnt, error)
- func (a *TWSNMPApi) GetPollingLogs(id string, filter *TimeFilter) ([]*datastore.PollingLogEnt, error)
- func (a *TWSNMPApi) GetPollings() (*PollingsWebAPI, error)
- func (a *TWSNMPApi) GetSFlow(filter *SFlowFilter) (*SFlowWebAPI, error)
- func (a *TWSNMPApi) GetSFlowCounter(filter *SFlowCounterFilter) (*SFlowCounterWebAPI, error)
- func (a *TWSNMPApi) GetSensors() ([]*datastore.SensorEnt, error)
- func (a *TWSNMPApi) GetServers() ([]*datastore.ServerEnt, error)
- func (a *TWSNMPApi) GetSnmpTraps(filter *SnmpTrapFilter) ([]*SnmpTrapWebAPI, error)
- func (a *TWSNMPApi) GetSyslogs(filter *SyslogFilter) (*SyslogWebAPI, error)
- func (a *TWSNMPApi) GetUsers() ([]*datastore.UserEnt, error)
- func (a *TWSNMPApi) Login(user, password string) error
- func (a *TWSNMPApi) Post(path string, data []byte) ([]byte, error)
- func (a *TWSNMPApi) ResetReport(t string) error
- func (a *TWSNMPApi) UpdateNode(node *datastore.NodeEnt) error
- func (a *TWSNMPApi) UpdatePolling(polling *datastore.PollingEnt) error
- type TimeFilter
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AiListEntWebAPI ¶
type AiListEntWebAPI struct {
ID string // 内部ID
NodeID string // ノードの内部ID
NodeName string // ノード名
PollingName string // ポーリング名
Score float64 // スコア
Count int // 件数
LastTime int64 // 最終分析日時
}
AiListEntWebAPIは、AI分析リストのデータ構造です。
type ArpFilter ¶
type ArpFilter struct {
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04
IP string // IPアドレス
MAC string // MACアドレス
}
ArpFilterは、ARPログの検索条件を指定します。
type ArpWebAPI ¶
type ArpWebAPI struct {
Time int64 // 検知日時
State string // 状態
IP string // IPアドレス
MAC string // MACアドレス
Vendor string // ベンダー
OldMAC string // 前のMACアドレス
OldVendor string // 前のベンダー
}
ArpWebAPIは、ARPログです。
type EventLogFilter ¶
type EventLogFilter struct {
Level string // ログのレベル
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04
Type string // ログのタイプ
NodeID string // ログの対象ノードのID
Event string // イベントに含まれる文字列(正規表現)
}
EventLogFilterは、イベントログの検索条件です。
type EventLogsWebAPI ¶
type EventLogsWebAPI struct {
EventLogs []*datastore.EventLogEnt // イベントログの検索結果
NodeList []selectEntWebAPI // ノード名選択肢
}
EventLogsWebAPIは、イベントログの検索結果です。
type NetflowFilter ¶
type NetflowFilter struct {
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04 StartDate string
SrcDst bool // 双方向検索
IP string // 双方向検索の場合のIPアドレス
Port string // 双方向検索の場合のポート番号
SrcIP string // 送信元IP
SrcPort string // 送信元ポート
DstIP string // 宛先IP
DstPort string // 宛先ポート
Protocol string // プロトコル
TCPFlag string // TCPフラグ
NextTime int64 // 継続検索の場合の時刻(nano Sec)
Filter int // 累計の検索数
}
NetflowFilterは、NetFlow/IPFIXの検索条件です。
type NetflowWebAPI ¶
type NetflowWebAPI struct {
Logs []*NetflowWebAPILogEnt // ログの検索結果
NextTime int64 // 継続検索の次回の時刻(nano Sec)
Process int // 総ログ件数
Filter int // フィルターした件数
Limit int // 上限
}
NetflowWebAPIは、NetFlow/IPFIXログの検索結果です。
type NetflowWebAPILogEnt ¶
type NetflowWebAPILogEnt struct {
Time int64 // ログの受信日時
Src string // 送信元ホスト名
SrcIP string // 送信元IP
SrcMAC string // 送信元MACアドレス
SrcPort int // 送信元ポート番号
DstIP string // 宛先IP
DstMAC string // 宛先MACアドレス
DstPort int // 宛先ポート番号
Dst string // 宛先ホスト名
Protocol string // プロコトル
TCPFlags string // TCPフラグ
Packets int64 // パケット数
Bytes int64 // バイト数
Duration float64 // 通信期間
}
NetflowWebAPILogEntは、NetFlow/IPFIXログのデータ構造です。
type PollingsWebAPI ¶
type PollingsWebAPI struct {
Pollings []*datastore.PollingEnt
NodeList []selectEntWebAPI
}
PollingsWebAPIは、ポーリングの応答データの構造です。
type SFlowCounterFilter ¶
type SFlowCounterFilter struct {
Remote string // 送信元
Type string // 種別
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04
NextTime int64 // 継続検索の開始時刻(nano Sec)
Filter int // 累計検索件数
}
SFlowCounterFilterは、SFlow Counterログの検索条件です。
type SFlowCounterWebAPI ¶
type SFlowCounterWebAPI struct {
Logs []*SFlowCounterWebAPILogEnt // 検索結果のログ
NextTime int64 // 継続検索の次回時刻
Process int // 総ログ数
Filter int // フィルターした件数
Limit int // 上限
}
SFlowCounterWebAPIは、SFlow Counterログの検索結果です。
type SFlowCounterWebAPILogEnt ¶
type SFlowCounterWebAPILogEnt struct {
Time int64 // 受信時刻
datastore.SFlowCounterEnt // カウンターサンプルのデータ
}
SFlowCounterWebAPILogEntは、SFlowCounterログです。
type SFlowFilter ¶
type SFlowFilter struct {
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04 StartDate string
SrcDst bool // 双方向検索
IP string // 双方向検索のIP
Port string // 双方向検索のポート
SrcIP string // 送信元IP
SrcPort string // 送信元ポート番号
DstIP string // 宛先IP
DstPort string // 宛先ポート
Protocol string // プロトコル
TCPFlag string // TCPフラグ
Reason string // 切断理由
NextTime int64 // 継続検索の開始時刻(nano Sec)
Filter int // 累計検索件数
}
SFlowFilterはSFlowログ検索条件です。
type SFlowWebAPI ¶
type SFlowWebAPI struct {
Logs []*SFlowWebAPILogEnt // 検索結果のログ
NextTime int64 // 継続検索の次回時刻(nano Sec)
Process int // 総ログ数
Filter int // フィルターした件数
Limit int // 上限
}
SFlowWebAPIは、SFlowログの検索結果です。
type SFlowWebAPILogEnt ¶
type SFlowWebAPILogEnt struct {
Time int64 // ログ受信日時
Src string // 送信元ホスト
SrcIP string // 送信元IP
SrcMAC string // 送信元MACアドレス
SrcPort int // 送信元ポート番号
DstIP string // 宛先IP
DstMAC string // 宛先MACアドレス
DstPort int // 宛先ポート番号
Dst string // 宛先ホスト名
Protocol string // プロトコル
TCPFlags string // TCPフラグ
Bytes int64 // バイト数
Reason int // 切断理由
}
SFlowWebAPILogEntは、SFlowログです。
type SnmpTrapFilter ¶
type SnmpTrapFilter struct {
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04
FromAddress string // TRAPの送信元アドレス
TrapType string // TRAPの種別
Variables string // TRAPに付帯したMIB
}
SnmpTrapFilterは、SNMP TRAPログの検索条件です。
type SnmpTrapWebAPI ¶
type SnmpTrapWebAPI struct {
Time int64 // TRAPの受信日時
FromAddress string // TRAPの送信元アドレス
TrapType string // TRAPの種別
Variables string // TRAPに付帯したMIB
}
SnmpTrapWebAPIは、SNMP TRAPログです。
type SyslogFilter ¶
type SyslogFilter struct {
StartDate string // 検索の開始日 例:2006-01-02
StartTime string // 検索の開始時刻 例: 15:04
EndDate string // 検索の終了日 例:2006-01-02
EndTime string // 検索の終了時刻 例: 15:04
Level string // レベル
Type string // ログのタイプ
Host string // ログの送信元ホスト
Tag string // ログのタグ
Message string // ログのメッセージ
Extractor string // 抽出パターン
NextTime int64 // 継続ログの開始時刻(nano Sec)
Filter int // ログの累積件数
}
SyslogFilterは、syslogの検索条件です。
type SyslogWebAPI ¶
type SyslogWebAPI struct {
Logs []*SyslogWebAPILogEnt // sysylogの検索結果
ExtractHeader []string // 抽出データのヘッダ
ExtractDatas [][]string // 抽出データ
NextTime int64 // 継続検索の開始時刻(nano Sec)
Process int // ログの総数
Filter int // フィルター後の件数
Limit int // 検索上限
}
SyslogWebAPIは、syslogの検索結果です。
type SyslogWebAPILogEnt ¶
type SyslogWebAPILogEnt struct {
Time int64 // タイムスタンプ(nano Sec)
Level string // レベル
Host string // 送信元ホスト
Type string // ログの種別
Tag string // タグ
Message string // メッセージ
Severity int // Severity
Facility int // Facility
}
SyslogWebAPILogEntは、syslogのデータ構造です。
type TWSNMPApi ¶
type TWSNMPApi struct {
URL string // TWSNMP FCのURL
Token string // JWTアクセストークン
InsecureSkipVerify bool // HTTPSで通信する時にサーバー証明書の検証を行わない
Timeout int // タイムアウト
}
TWSNMPApiは、TWSNMP FCと通信するためのデータ構造です。
func (*TWSNMPApi) DeleteNodes ¶
DeleteNodesは、ノードを削除します。
Example ¶
c := NewClient("http://127.0.0.1:8080")
err := c.Login("twsnmp", "twsnmp")
if err != nil {
log.Fatal(err)
}
err = c.DeleteNodes([]string{"node id"})
if err != nil {
log.Fatal(err)
}
func (*TWSNMPApi) DeletePollings ¶
DeletePollingsは、ポーリングを削除します。
func (*TWSNMPApi) DeleteReport ¶
DeleteReportは,指定された種別とIDのレポートを削除します。
func (*TWSNMPApi) GetAIList ¶
func (a *TWSNMPApi) GetAIList() ([]*AiListEntWebAPI, error)
GetAIListはTWSNMP FCからAI分析リストを取得します。
func (*TWSNMPApi) GetArpLogs ¶
GetArpLogsはTWSNMP FCからARPログを取得します。
func (*TWSNMPApi) GetDevices ¶
GetDevicesはTWSNMP FCからLANデバイスレポートを取得します。
func (*TWSNMPApi) GetEventLogs ¶
func (a *TWSNMPApi) GetEventLogs(filter *EventLogFilter) (*EventLogsWebAPI, error)
GetEventLogsはTWSNMP FCからイベントログを取得します。
func (*TWSNMPApi) GetIPFIX ¶
func (a *TWSNMPApi) GetIPFIX(filter *NetflowFilter) (*NetflowWebAPI, error)
GetIPFIXはTWSNMP FCからIPFIXログを取得します。
func (*TWSNMPApi) GetIPs ¶
func (a *TWSNMPApi) GetIPs() ([]*datastore.IPReportEnt, error)
GetIPsはTWSNMP FCからIPレポートを取得します。
func (*TWSNMPApi) GetMonitor ¶
func (a *TWSNMPApi) GetMonitor() ([]*datastore.MonitorDataEnt, error)
GetMonitorはTWSNMP FCからモニターレポートを取得します。
func (*TWSNMPApi) GetNetFlow ¶
func (a *TWSNMPApi) GetNetFlow(filter *NetflowFilter) (*NetflowWebAPI, error)
GetNetFlowはTWSNMP FCからNetFlowログを取得します。
func (*TWSNMPApi) GetNodes ¶
GetNodesはTWSNMP FCからノードリストを取得します。
Example ¶
c := NewClient("http://127.0.0.1:8080")
err := c.Login("twsnmp", "twsnmp")
if err != nil {
log.Fatal(err)
}
nodes, err := c.GetNodes()
if err != nil {
log.Fatal(err)
}
for _, n := range nodes {
fmt.Printf("%+v\n", n)
}
func (*TWSNMPApi) GetPollingLogs ¶
func (a *TWSNMPApi) GetPollingLogs(id string, filter *TimeFilter) ([]*datastore.PollingLogEnt, error)
GetPollingLogsはTWSNMP FCからポーリングログを取得します。
Example ¶
c := NewClient("http://127.0.0.1:8080")
err := c.Login("twsnmp", "twsnmp")
if err != nil {
log.Fatal(err)
}
r, err := c.GetPollings()
if err != nil {
log.Fatal(err)
}
for _, p := range r.Pollings {
if p.LogMode > 0 {
logs, err := c.GetPollingLogs(p.ID, &TimeFilter{})
if err != nil {
log.Fatal(err)
}
for _, l := range logs {
fmt.Printf("%+v\n", l)
}
}
}
func (*TWSNMPApi) GetPollings ¶
func (a *TWSNMPApi) GetPollings() (*PollingsWebAPI, error)
GetPollingsはTWSNMP FCからポーリングリストを取得します。
func (*TWSNMPApi) GetSFlow ¶
func (a *TWSNMPApi) GetSFlow(filter *SFlowFilter) (*SFlowWebAPI, error)
GetSFlowはTWSNMP FCからSFlowログを取得します。
func (*TWSNMPApi) GetSFlowCounter ¶
func (a *TWSNMPApi) GetSFlowCounter(filter *SFlowCounterFilter) (*SFlowCounterWebAPI, error)
GetSFlowCounterはTWSNMP FCからSFlow Counterログを取得します。
func (*TWSNMPApi) GetSensors ¶
GetSensorsはTWSNMP FCからセンサーレポートを取得します。
func (*TWSNMPApi) GetServers ¶
GetServersはTWSNMP FCからサーバーレポートを取得します。
func (*TWSNMPApi) GetSnmpTraps ¶
func (a *TWSNMPApi) GetSnmpTraps(filter *SnmpTrapFilter) ([]*SnmpTrapWebAPI, error)
GetSnmpTrapsはTWSNMP FCからSNMP Trapログを取得します。
func (*TWSNMPApi) GetSyslogs ¶
func (a *TWSNMPApi) GetSyslogs(filter *SyslogFilter) (*SyslogWebAPI, error)
GetSyslogsはTWSNMP FCからsyslogを取得します。
func (*TWSNMPApi) Login ¶
LoginはTWSNMP FCにログインします。
Example ¶
c := NewClient("http://127.0.0.1:8080")
err := c.Login("twsnmp", "twsnmp")
if err != nil {
log.Fatal(err)
}
func (*TWSNMPApi) ResetReport ¶
ResetReportは,指定された種別とIDのレポートのスコアを再計算します。
func (*TWSNMPApi) UpdateNode ¶
UpdateNodeは、ノードを追加または削除します。
Example ¶
c := NewClient("http://127.0.0.1:8080")
err := c.Login("twsnmp", "twsnmp")
if err != nil {
log.Fatal(err)
}
err = c.UpdateNode(&datastore.NodeEnt{
Name: "test",
X: 100,
Y: 100,
})
if err != nil {
log.Fatal(err)
}
func (*TWSNMPApi) UpdatePolling ¶
func (a *TWSNMPApi) UpdatePolling(polling *datastore.PollingEnt) error
UpdatePollingは、ポーリングの追加または更新します。