Giter Site home page Giter Site logo

ekmixon / falco-exporter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from falcosecurity/falco-exporter

0.0 1.0 0.0 1.36 MB

Prometheus Metrics Exporter for Falco output events

License: Apache License 2.0

Makefile 5.42% Go 90.12% Dockerfile 4.46%

falco-exporter's Introduction

falco-exporter

Prometheus Metrics Exporter for Falco output events

Release License Go Report Card Docker pulls

Prerequisites

  • Before using falco-exporter, you need Falco installed and running with the gRPC Output enabled (over Unix socket by default).
  • Since falco-exporter v0.3.0:
    • the minimum required version of Falco is 0.24.0
    • if using Helm, the minimum required version of the Falco Chart is v1.2.0

Usage

Run it manually

make
./falco-exporter

Then check the metrics endpoint at http://localhost:9376/metrics

Command line usage:

$ ./falco-exporter --help
Usage of ./falco-exporter:
      --client-ca string                CA root file path for connecting to a Falco gRPC server (default "/etc/falco/certs/ca.crt")
      --client-cert string              cert file path for connecting to a Falco gRPC server (default "/etc/falco/certs/client.crt")
      --client-hostname string          hostname for connecting to a Falco gRPC server, if set, takes precedence over --client-socket
      --client-key string               key file path for connecting to a Falco gRPC server (default "/etc/falco/certs/client.key")
      --client-port uint16              port for connecting to a Falco gRPC server (default 5060)
      --client-socket string            unix socket path for connecting to a Falco gRPC server (default "unix:///var/run/falco.sock")
      --listen-address string           address on which to expose the Prometheus metrics (default ":9376")
      --probes-listen-address string    address on which to expose readiness/liveness probes endpoints (default ":19376")
      --server-ca string                CA root file path for metrics https server
      --server-cert string              cert file path for metrics https server
      --server-key string               key file path for metrics https server
      --timeout duration                timeout for initial gRPC connection (default 2m0s)

Run with Docker

To run falco-exporter in a container using Docker:

docker run -v /path/to/falco.sock:/var/run/falco.sock falcosecurity/falco-exporter

Deploy in Kubernetes

Using Helm

Using the falco-exporter Helm Chart is the easiest way to deploy falco-exporter.

Before installing the chart, add the falcosecurity charts repository:

helm repo add falcosecurity https://falcosecurity.github.io/charts
helm repo update

Finally, to install the chart with the release name falco-exporter and default configuration values:

helm install falco-exporter falcosecurity/falco-exporter

The full documentation of the Helm Chart is here.

Using resource templates

Alternatively, it is possible to deploy falco-exporter without using Helm. Templates for manual installation are here.

Grafana

The Falco dashboard can be imported into Grafana by copy-paste the provided grafana/dashboard.json or by getting it from the Grafana Dashboards website.

You can find detailed Grafana importing instructions here.

Falco dashboard

Event priority

Falco events have a priority value, as defined here. The exported metrics will include a priority label that uses a numeric index. The meaning of these indices is reported in the following table.

ID Priority
7 debug
6 informational
5 notice
4 warning
3 error
2 critical
1 alert
0 emergency

Connection options

falco-exporter uses gRPC over a Unix socket by default.

You may change this behavior by setting --client-hostname. Note that the Falco gRPC server over the network works only with mutual TLS by design. Therefore, when --client-hostname is set you also need valid certificate files to configure falco-exporter properly (see the Command line usage above).

falco-exporter's People

Contributors

leogr avatar jasondellaluce avatar leodido avatar aarroyoc avatar ball-hayden avatar jasiam avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.