Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var CustomFunctions = []struct { Name string Func []any }{ { Name: "Distance", Func: []any{ new(func(string, string, string, string) (float64, error)), }, }, { Name: "GetFromStash", Func: []any{ new(func(string, string) (string, error)), }, }, { Name: "Atof", Func: []any{ new(func(string) float64), }, }, { Name: "JsonExtract", Func: []any{ new(func(string, string) string), }, }, { Name: "JsonExtractUnescape", Func: []any{ new(func(string, ...string) string), }, }, { Name: "JsonExtractLib", Func: []any{ new(func(string, ...string) string), }, }, { Name: "JsonExtractSlice", Func: []any{ new(func(string, string) []any), }, }, { Name: "JsonExtractObject", Func: []any{ new(func(string, string) map[string]any), }, }, { Name: "ToJsonString", Func: []any{ new(func(any) string), }, }, { Name: "File", Func: []any{ new(func(string) []string), }, }, { Name: "RegexpInFile", Func: []any{ new(func(string, string) bool), }, }, { Name: "Upper", Func: []any{ new(func(string) string), }, }, { Name: "Lower", Func: []any{ new(func(string) string), }, }, { Name: "IpInRange", Func: []any{ new(func(string, string) bool), }, }, { Name: "TimeNow", Func: []any{ new(func() string), }, }, { Name: "ParseUri", Func: []any{ new(func(string) map[string][]string), }, }, { Name: "PathUnescape", Func: []any{ new(func(string) string), }, }, { Name: "QueryUnescape", Func: []any{ new(func(string) string), }, }, { Name: "PathEscape", Func: []any{ new(func(string) string), }, }, { Name: "QueryEscape", Func: []any{ new(func(string) string), }, }, { Name: "XMLGetAttributeValue", Func: []any{ new(func(string, string, string) string), }, }, { Name: "XMLGetNodeValue", Func: []any{ new(func(string, string) string), }, }, { Name: "IpToRange", Func: []any{ new(func(string, string) string), }, }, { Name: "IsIPV6", Func: []any{ new(func(string) bool), }, }, { Name: "IsIPV4", Func: []any{ new(func(string) bool), }, }, { Name: "IsIP", Func: []any{ new(func(string) bool), }, }, { Name: "LookupHost", Func: []any{ new(func(string) []string), }, }, { Name: "GetDecisionsCount", Func: []any{ new(func(string) int), }, }, { Name: "GetDecisionsSinceCount", Func: []any{ new(func(string, string) int), }, }, { Name: "Sprintf", Func: []any{ new(func(string, ...any) string), }, }, { Name: "ParseUnix", Func: []any{ new(func(string) string), }, }, { Name: "SetInStash", Func: []any{ new(func(string, string, string, *time.Duration) error), }, }, { Name: "Fields", Func: []any{ new(func(string) []string), }, }, { Name: "Index", Func: []any{ new(func(string, string) int), }, }, { Name: "IndexAny", Func: []any{ new(func(string, string) int), }, }, { Name: "Join", Func: []any{ new(func([]string, string) string), }, }, { Name: "Split", Func: []any{ new(func(string, string) []string), }, }, { Name: "SplitAfter", Func: []any{ new(func(string, string) []string), }, }, { Name: "SplitAfterN", Func: []any{ new(func(string, string, int) []string), }, }, { Name: "SplitN", Func: []any{ new(func(string, string, int) []string), }, }, { Name: "Replace", Func: []any{ new(func(string, string, string, int) string), }, }, { Name: "ReplaceAll", Func: []any{ new(func(string, string, string) string), }, }, { Name: "Trim", Func: []any{ new(func(string, string) string), }, }, { Name: "TrimLeft", Func: []any{ new(func(string, string) string), }, }, { Name: "TrimRight", Func: []any{ new(func(string, string) string), }, }, { Name: "TrimSpace", Func: []any{ new(func(string) string), }, }, { Name: "TrimPrefix", Func: []any{ new(func(string, string) string), }, }, { Name: "TrimSuffix", Func: []any{ new(func(string, string) string), }, }, { Name: "Get", Func: []any{ new(func([]string, int) string), }, }, { Name: "ToString", Func: []any{ new(func(any) string), }, }, { Name: "Match", Func: []any{ new(func(string, string) bool), }, }, { Name: "KeyExists", Func: []any{ new(func(string, map[string]any) bool), }, }, { Name: "LogInfo", Func: []any{ new(func(string, ...any) bool), }, }, { Name: "B64Decode", Func: []any{ new(func(string) string), }, }, { Name: "UnmarshalJSON", Func: []any{ new(func(string, map[string]any, string) error), }, }, { Name: "ParseKV", Func: []any{ new(func(string, map[string]any, string) error), }, }, { Name: "Hostname", Func: []any{ new(func() (string, error)), }, }, }
Functions ¶
This section is empty.
Types ¶
type Alert ¶
type Alert struct { Capacity *int32 `json:"capacity"` CreatedAt string `json:"created_at,omitempty"` Decisions []*Decision `json:"decisions"` Events []*Event `json:"events"` EventsCount *int32 `json:"events_count"` ID int64 `json:"id,omitempty"` Labels []string `json:"labels"` Leakspeed *string `json:"leakspeed"` MachineID string `json:"machine_id,omitempty"` Message *string `json:"message"` Meta Meta `json:"meta,omitempty"` Remediation bool `json:"remediation,omitempty"` Scenario *string `json:"scenario"` ScenarioHash *string `json:"scenario_hash"` ScenarioVersion *string `json:"scenario_version"` Simulated *bool `json:"simulated"` Source *Source `json:"source"` StartAt *string `json:"start_at"` StopAt *string `json:"stop_at"` UUID string `json:"uuid,omitempty"` Edges AlertEdges `json:"edges"` }
func (*Alert) GetEventsCount ¶
func (*Alert) GetScenario ¶
func (*Alert) HasRemediation ¶
type AlertEdges ¶
type AlertEdges struct { Owner *Machine `json:"owner,omitempty"` Decisions []*Decision `json:"decisions,omitempty"` Events []*Event `json:"events,omitempty"` Metas []*Meta `json:"metas,omitempty"` }
func (AlertEdges) DecisionsOrErr ¶
func (e AlertEdges) DecisionsOrErr() ([]*Decision, error)
func (AlertEdges) EventsOrErr ¶
func (e AlertEdges) EventsOrErr() ([]*Event, error)
func (AlertEdges) MetasOrErr ¶
func (e AlertEdges) MetasOrErr() ([]*Meta, error)
func (AlertEdges) OwnerOrErr ¶
func (e AlertEdges) OwnerOrErr() (*Machine, error)
type Decision ¶
type Decision struct { Duration *string `json:"duration"` ID int64 `json:"id,omitempty"` Origin *string `json:"origin"` Scenario *string `json:"scenario"` Scope *string `json:"scope"` Simulated *bool `json:"simulated,omitempty"` Type *string `json:"type"` Until string `json:"until,omitempty"` UUID string `json:"uuid,omitempty"` Value *string `json:"value"` }
type Event ¶
type Event struct { Type int `yaml:"Type,omitempty" json:"Type,omitempty"` ExpectMode int `yaml:"ExpectMode,omitempty" json:"ExpectMode,omitempty"` Whitelisted bool `yaml:"Whitelisted,omitempty" json:"Whitelisted,omitempty"` WhitelistReason string `yaml:"WhitelistReason,omitempty" json:"whitelist_reason,omitempty"` Stage string `yaml:"Stage,omitempty" json:"Stage,omitempty"` Line Line `yaml:"Line,omitempty" json:"Line,omitempty"` Parsed map[string]string `yaml:"Parsed,omitempty" json:"Parsed,omitempty"` Enriched map[string]string `yaml:"Enriched,omitempty" json:"Enriched,omitempty"` Unmarshaled map[string]any `yaml:"Unmarshaled,omitempty" json:"Unmarshaled,omitempty"` Overflow RuntimeAlert `yaml:"Overflow,omitempty" json:"Alert,omitempty"` Time time.Time `yaml:"Time,omitempty" json:"Time,omitempty"` StrTime string `yaml:"StrTime,omitempty" json:"StrTime,omitempty"` StrTimeFormat string `yaml:"StrTimeFormat,omitempty" json:"StrTimeFormat,omitempty"` MarshaledTime string `yaml:"MarshaledTime,omitempty" json:"MarshaledTime,omitempty"` Process bool `yaml:"Process,omitempty" json:"Process,omitempty"` Meta map[string]string `yaml:"Meta,omitempty" json:"Meta,omitempty"` }
type Machine ¶
type Machine struct { ID int `json:"id,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` LastPush *time.Time `json:"last_push,omitempty"` LastHeartbeat *time.Time `json:"last_heartbeat,omitempty"` MachineId string `json:"machineId,omitempty"` Password string `json:"-"` IpAddress string `json:"ipAddress,omitempty"` Scenarios string `json:"scenarios,omitempty"` Version string `json:"version,omitempty"` IsValidated bool `json:"isValidated,omitempty"` Status string `json:"status,omitempty"` AuthType string `json:"auth_type"` Edges MachineEdges `json:"edges"` }
type MachineEdges ¶
type MachineEdges struct {
Alerts []*Alert `json:"alerts,omitempty"`
}
type Meta ¶
type Meta []*MetaItems0
type MetaItems0 ¶
type RuntimeAlert ¶
type RuntimeAlert struct { Mapkey string `yaml:"MapKey,omitempty" json:"MapKey,omitempty"` BucketId string `yaml:"BucketId,omitempty" json:"BucketId,omitempty"` Whitelisted bool `yaml:"Whitelisted,omitempty" json:"Whitelisted,omitempty"` Reprocess bool `yaml:"Reprocess,omitempty" json:"Reprocess,omitempty"` Sources map[string]Source `yaml:"Sources,omitempty" json:"Sources,omitempty"` Alert *Alert `yaml:"Alert,omitempty" json:"Alert,omitempty"` APIAlerts []Alert `yaml:"APIAlerts,omitempty" json:"APIAlerts,omitempty"` }
func (RuntimeAlert) GetSources ¶
func (r RuntimeAlert) GetSources() []string
type Source ¶
type Source struct { AsName string `json:"as_name,omitempty"` AsNumber string `json:"as_number,omitempty"` Cn string `json:"cn,omitempty"` IP string `json:"ip,omitempty"` Latitude float32 `json:"latitude,omitempty"` Longitude float32 `json:"longitude,omitempty"` Range string `json:"range,omitempty"` Scope *string `json:"scope"` Value *string `json:"value"` }
func (Source) GetAsNumberName ¶
Click to show internal directories.
Click to hide internal directories.