Documentation ¶
Index ¶
- Constants
- type AlertmanagerOutputConfig
- type BatchingConfig
- type CliqOutputConfig
- type CloudEventsOutputConfig
- type CommonConfig
- type Configuration
- type DiscordOutputConfig
- type DynatraceOutputConfig
- type ElasticsearchOutputConfig
- type FalcoPayload
- type GcpOutputConfig
- type GcpPubSub
- type GooglechatConfig
- type GrafanaOnCallOutputConfig
- type GrafanaOutputConfig
- type InitClientArgs
- type KafkaRestConfig
- type LokiOutputConfig
- type MQTTConfig
- type MattermostOutputConfig
- type MutualTLSClient
- type N8NConfig
- type NodeRedOutputConfig
- type OTLPOutputConfig
- type OTLPTraces
- type OpenObserveConfig
- type PagerdutyConfig
- type PolicyReportConfig
- type PriorityType
- type PromStatistics
- type QuickwitOutputConfig
- type RabbitmqConfig
- type RedisConfig
- type RocketchatOutputConfig
- type SlackOutputConfig
- type SpyderbatConfig
- type Statistics
- type SumoLogicOutputConfig
- type SyslogConfig
- type TLSClient
- type TLSServer
- type TalonOutputConfig
- type TelegramConfig
- type ThresholdConfig
- type TimescaleDBConfig
- type WavefrontOutputConfig
- type WebUIOutputConfig
- type WebexOutputConfig
- type WebhookOutputConfig
- type YandexDataStreamsConfig
- type YandexOutputConfig
- type YandexS3Config
Constants ¶
const ( Default = iota // "" Debug Informational Notice Warning Error Critical Alert Emergency )
const ( DefaultBatchSize = 5 * 1024 * 1024 // 5 MB DefaultFlushInterval = time.Second )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlertmanagerOutputConfig ¶
type AlertmanagerOutputConfig struct { CommonConfig `mapstructure:",squash"` HostPort []string MinimumPriority string Endpoint string ExpiresAfter int ExtraLabels map[string]string ExtraAnnotations map[string]string CustomSeverityMap map[PriorityType]string DropEventThresholds string DropEventThresholdsList []ThresholdConfig DropEventDefaultPriority string CustomHeaders map[string]string }
type BatchingConfig ¶
type CliqOutputConfig ¶
type CliqOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string Icon string OutputFormat string MinimumPriority string MessageFormat string MessageFormatTemplate *template.Template UseEmoji bool }
CliqOutputConfig represents parameters for Zoho Cliq
type CloudEventsOutputConfig ¶
type CloudEventsOutputConfig struct { CommonConfig `mapstructure:",squash"` Address string Extensions map[string]string MinimumPriority string }
CloudEventsOutputConfig represents parameters for CloudEvents
type CommonConfig ¶
type Configuration ¶
type Configuration struct { MutualTLSFilesPath string MutualTLSClient MutualTLSClient TLSClient TLSClient TLSServer TLSServer Debug bool ListenAddress string ListenPort int BracketReplacer string OutputFieldFormat string Customfields map[string]string Templatedfields map[string]string Prometheus prometheusOutputConfig Slack SlackOutputConfig Cliq CliqOutputConfig Mattermost MattermostOutputConfig Rocketchat RocketchatOutputConfig Teams teamsOutputConfig Webex WebexOutputConfig Datadog datadogOutputConfig DatadogLogs datadogLogsOutputConfig Discord DiscordOutputConfig Alertmanager AlertmanagerOutputConfig Elasticsearch ElasticsearchOutputConfig Quickwit QuickwitOutputConfig Influxdb influxdbOutputConfig Loki LokiOutputConfig SumoLogic SumoLogicOutputConfig Nats natsOutputConfig Stan stanOutputConfig AWS awsOutputConfig SMTP smtpOutputConfig Opsgenie opsgenieOutputConfig Statsd statsdOutputConfig Dogstatsd statsdOutputConfig Webhook WebhookOutputConfig CloudEvents CloudEventsOutputConfig Azure azureConfig GCP GcpOutputConfig Googlechat GooglechatConfig Kafka kafkaConfig KafkaRest KafkaRestConfig Pagerduty PagerdutyConfig Kubeless kubelessConfig Openfaas openfaasConfig Tekton tektonConfig WebUI WebUIOutputConfig PolicyReport PolicyReportConfig Rabbitmq RabbitmqConfig Wavefront WavefrontOutputConfig Fission fissionConfig Grafana GrafanaOutputConfig GrafanaOnCall GrafanaOnCallOutputConfig Yandex YandexOutputConfig Syslog SyslogConfig NodeRed NodeRedOutputConfig MQTT MQTTConfig Zincsearch zincsearchOutputConfig Gotify gotifyOutputConfig Spyderbat SpyderbatConfig TimescaleDB TimescaleDBConfig Redis RedisConfig Telegram TelegramConfig N8N N8NConfig OpenObserve OpenObserveConfig Dynatrace DynatraceOutputConfig OTLP OTLPOutputConfig Talon TalonOutputConfig }
Configuration is a struct to store configuration
type DiscordOutputConfig ¶
type DiscordOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string MinimumPriority string Icon string }
DiscordOutputConfig .
type DynatraceOutputConfig ¶
type ElasticsearchOutputConfig ¶
type ElasticsearchOutputConfig struct { CommonConfig `mapstructure:",squash"` HostPort string Index string Type string Pipeline string MinimumPriority string Suffix string Username string Password string ApiKey string FlattenFields bool CreateIndexTemplate bool NumberOfShards int NumberOfReplicas int CustomHeaders map[string]string Batching BatchingConfig EnableCompression bool }
type FalcoPayload ¶
type FalcoPayload struct { UUID string `json:"uuid,omitempty"` Output string `json:"output"` Priority PriorityType `json:"priority"` Rule string `json:"rule"` Time time.Time `json:"time"` OutputFields map[string]interface{} `json:"output_fields"` Source string `json:"source"` Tags []string `json:"tags,omitempty"` Hostname string `json:"hostname,omitempty"` }
FalcoPayload is a struct to map falco event json
func (FalcoPayload) Check ¶
func (f FalcoPayload) Check() bool
func (FalcoPayload) String ¶
func (f FalcoPayload) String() string
type GcpOutputConfig ¶
type GooglechatConfig ¶
type GooglechatConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string OutputFormat string MinimumPriority string MessageFormat string MessageFormatTemplate *template.Template }
GooglechatConfig represents parameters for Google chat
type GrafanaOnCallOutputConfig ¶
type GrafanaOnCallOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string MinimumPriority string CustomHeaders map[string]string }
GrafanaOnCallOutputConfig represents parameters for Grafana OnCall
type GrafanaOutputConfig ¶
type GrafanaOutputConfig struct { CommonConfig `mapstructure:",squash"` HostPort string APIKey string DashboardID int PanelID int AllFieldsAsTags bool MinimumPriority string CustomHeaders map[string]string }
GrafanaOutputConfig represents parameters for Grafana
type InitClientArgs ¶
type InitClientArgs struct { Config *Configuration Stats *Statistics PromStats *PromStatistics OTLPMetrics *otlpmetrics.OTLPMetrics StatsdClient *statsd.Client DogstatsdClient *statsd.Client }
InitClientArgs represent a client parameters for initialization
type KafkaRestConfig ¶
type KafkaRestConfig struct { CommonConfig `mapstructure:",squash"` Address string Version int MinimumPriority string }
type LokiOutputConfig ¶
type MQTTConfig ¶
type MQTTConfig struct { Broker string Topic string QOS int Retained bool User string Password string CheckCert bool MinimumPriority string }
MQTTConfig represents config parameters for the MQTT client
type MattermostOutputConfig ¶
type MattermostOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string Icon string Username string OutputFormat string MinimumPriority string MessageFormat string MessageFormatTemplate *template.Template }
MattermostOutputConfig represents parameters for Mattermost
type MutualTLSClient ¶
MutualTLSClient represents parameters for mutual TLS as client
type N8NConfig ¶
type N8NConfig struct { Address string User string Password string HeaderAuthName string HeaderAuthValue string MinimumPriority string CheckCert bool }
N8NConfig represents config parameters for N8N
type NodeRedOutputConfig ¶
type NodeRedOutputConfig struct { CommonConfig `mapstructure:",squash"` Address string User string Password string CustomHeaders map[string]string MinimumPriority string }
NodeRedOutputConfig represents parameters for Node-RED
type OTLPOutputConfig ¶
type OTLPOutputConfig struct { Traces OTLPTraces Metrics otlpmetrics.Config }
OTLPOutputConfig represents config parameters for OTLP
type OTLPTraces ¶
type OTLPTraces struct { Endpoint string Protocol string Timeout int64 Headers string Duration int64 Synced bool ExtraEnvVars map[string]string CheckCert bool MinimumPriority string }
OTLPTraces represents config parameters for OTLP Traces
type OpenObserveConfig ¶
type OpenObserveConfig struct { CommonConfig `mapstructure:",squash"` HostPort string OrganizationName string StreamName string MinimumPriority string Username string Password string CustomHeaders map[string]string }
OpenObserveConfig represents config parameters for OpenObserve
type PagerdutyConfig ¶
type PagerdutyConfig struct { CommonConfig `mapstructure:",squash"` RoutingKey string Region string MinimumPriority string }
type PolicyReportConfig ¶
type PolicyReportConfig struct { Enabled bool PruneByPriority bool Kubeconfig string FalcoNamespace string MinimumPriority string MaxEvents int }
PolicyReportConfig represents parameters for policyreport
type PriorityType ¶
type PriorityType int
func Priority ¶
func Priority(p string) PriorityType
func (PriorityType) MarshalJSON ¶
func (p PriorityType) MarshalJSON() ([]byte, error)
func (PriorityType) String ¶
func (p PriorityType) String() string
func (*PriorityType) UnmarshalJSON ¶
func (p *PriorityType) UnmarshalJSON(b []byte) error
type PromStatistics ¶
type PromStatistics struct { Falco *prometheus.CounterVec Inputs *prometheus.CounterVec Outputs *prometheus.CounterVec }
PromStatistics is a struct to store prometheus metrics
type QuickwitOutputConfig ¶
type RabbitmqConfig ¶
RabbitmqConfig represents parameters for rabbitmq
type RedisConfig ¶
type RedisConfig struct { Address string Password string Database int StorageType string Key string Version int MinimumPriority string CheckCert bool MutualTLS bool }
RedisConfig represents config parameters for Redis
type RocketchatOutputConfig ¶
type RocketchatOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string Icon string Username string OutputFormat string MinimumPriority string MessageFormat string MessageFormatTemplate *template.Template }
RocketchatOutputConfig .
type SlackOutputConfig ¶
type SlackOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string Channel string Icon string Username string OutputFormat string MinimumPriority string MessageFormat string MessageFormatTemplate *template.Template }
SlackOutputConfig represents parameters for Slack
type SpyderbatConfig ¶
type Statistics ¶
type Statistics struct { Requests *expvar.Map FIFO *expvar.Map GRPC *expvar.Map Falco *expvar.Map Slack *expvar.Map Mattermost *expvar.Map Rocketchat *expvar.Map Teams *expvar.Map Datadog *expvar.Map DatadogLogs *expvar.Map Discord *expvar.Map Alertmanager *expvar.Map Elasticsearch *expvar.Map Quickwit *expvar.Map Loki *expvar.Map SumoLogic *expvar.Map Nats *expvar.Map Stan *expvar.Map Influxdb *expvar.Map AWSLambda *expvar.Map AWSSQS *expvar.Map AWSSNS *expvar.Map AWSCloudWatchLogs *expvar.Map AWSS3 *expvar.Map AWSSecurityLake *expvar.Map AWSKinesis *expvar.Map SMTP *expvar.Map Opsgenie *expvar.Map Statsd *expvar.Map Dogstatsd *expvar.Map Webhook *expvar.Map Webex *expvar.Map AzureEventHub *expvar.Map GCPPubSub *expvar.Map GCPStorage *expvar.Map GCPCloudFunctions *expvar.Map GCPCloudRun *expvar.Map GoogleChat *expvar.Map Kafka *expvar.Map KafkaRest *expvar.Map Pagerduty *expvar.Map CloudEvents *expvar.Map Kubeless *expvar.Map Openfaas *expvar.Map Tekton *expvar.Map WebUI *expvar.Map Rabbitmq *expvar.Map Wavefront *expvar.Map Fission *expvar.Map Grafana *expvar.Map GrafanaOnCall *expvar.Map YandexS3 *expvar.Map YandexDataStreams *expvar.Map Syslog *expvar.Map Cliq *expvar.Map PolicyReport *expvar.Map NodeRed *expvar.Map MQTT *expvar.Map Zincsearch *expvar.Map Gotify *expvar.Map Spyderbat *expvar.Map TimescaleDB *expvar.Map Redis *expvar.Map Telegram *expvar.Map N8N *expvar.Map OpenObserve *expvar.Map Dynatrace *expvar.Map OTLPTraces *expvar.Map OTLPMetrics *expvar.Map Talon *expvar.Map }
Statistics is a struct to store stastics
type SumoLogicOutputConfig ¶
type SyslogConfig ¶
type SyslogConfig struct { Host string Port string Protocol string Format string MinimumPriority string }
SyslogConfig represents config parameters for the syslog client Host: the remote syslog host. It can be either an IP address or a domain. Port: the remote port address. Ex: 514. Protocol: the type of transfer protocol to use. It should be either "tcp" or "udp".
type TLSClient ¶
type TLSClient struct {
CaCertFile string
}
MutualTLSClient represents parameters for global TLS client options
type TLSServer ¶
type TLSServer struct { Deploy bool CertFile string KeyFile string MutualTLS bool CaCertFile string NoTLSPort int NoTLSPaths []string }
TLSServer represents parameters for TLS Server
type TalonOutputConfig ¶
TalonOutputConfig represents parameters for Talon
type TelegramConfig ¶
type TelegramConfig struct { Token string ChatID string MinimumPriority string CheckCert bool MessageThreadID string }
TelegramConfig represents parameters for Telegram
type ThresholdConfig ¶
type ThresholdConfig struct { Value int64 `json:"value" yaml:"value"` Priority PriorityType `json:"priority" yaml:"priority"` }
type TimescaleDBConfig ¶
type WavefrontOutputConfig ¶
type WavefrontOutputConfig struct { EndpointType string // direct or proxy EndpointHost string // Endpoint hostname (only IP or hostname) EndpointToken string // Token for API access. Only for direct mode EndpointMetricPort int // Port to send metrics. Only for proxy mode MetricName string // The Name of the metric FlushIntervalSeconds int // Time between flushes. BatchSize int // BatchSize to send. Only for direct mode MinimumPriority string }
type WebUIOutputConfig ¶
type WebUIOutputConfig struct { CommonConfig `mapstructure:",squash"` URL string }
WebUIOutputConfig represents parameters for WebUI
type WebexOutputConfig ¶
type WebexOutputConfig struct { CommonConfig `mapstructure:",squash"` WebhookURL string MinimumPriority string }
type WebhookOutputConfig ¶
type WebhookOutputConfig struct { CommonConfig `mapstructure:",squash"` Address string Method string CustomHeaders map[string]string MinimumPriority string }
WebhookOutputConfig represents parameters for Webhook
type YandexDataStreamsConfig ¶
type YandexOutputConfig ¶
type YandexOutputConfig struct { AccessKeyID string SecretAccessKey string Region string S3 YandexS3Config DataStreams YandexDataStreamsConfig }