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 LogstashConfig
- type LokiOutputConfig
- type MQTTConfig
- type MattermostOutputConfig
- type MutualTLSClient
- type N8NConfig
- type NodeRedOutputConfig
- type OTLPLogs
- 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 SplunkOutputConfig
- 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
Logstash LogstashConfig
Splunk SplunkOutputConfig
}
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 LogstashConfig ¶
type LogstashConfig struct {
Address string
Port uint64
MinimumPriority string
CheckCert bool
TLS bool
MutualTLS bool
CertFile string
KeyFile string
CaCertFile string
Tags []string
}
LogstashConfig represents config parameters for Logstash
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 OTLPLogs ¶
type OTLPLogs struct {
Endpoint string
Protocol string
Timeout int64
Synced bool
Headers string
ExtraEnvVars map[string]string
CheckCert bool
MinimumPriority string
}
OTLPLogs represents config parameters for OTLP Traces
type OTLPOutputConfig ¶
type OTLPOutputConfig struct {
Traces OTLPTraces
Metrics otlpmetrics.Config
Logs OTLPLogs
}
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
Username 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 SplunkOutputConfig ¶
type SplunkOutputConfig struct {
CommonConfig `mapstructure:",squash"`
Host string
CustomHeaders map[string]string
Token string
MinimumPriority string
}
SplunkOutputConfig represents parameters for Splunk
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
OTLPLogs *expvar.Map
Talon *expvar.Map
Logstash *expvar.Map
Splunk *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
}