GeoIP2 Filter

Look up Geo data from IP.

The GeoIP2 filter lets you enrich the incoming data stream with location data from the GeoIP2 database.

The GeoLite2-City.mmdb database is available from MaxMind's official site.

Configuration parameters

This plugin supports the following configuration parameters:

Key
Description

database

Path to the GeoIP2 database.

lookup_key

Field name to process.

record

Defines the KEY LOOKUP_KEY VALUE triplet.

Get started

The following configuration processes the incoming remote_addr and appends country information retrieved from the GeoLite2 database.

pipeline:
    inputs:
        - name: dummy
          dummy: {"remote_addr": "8.8.8.8"}

    filters:
        - name: gioip2
          match: '*'
          database: GioLite2-City.mmdb
          lookup_key: remote_addr
          record:
              - country remote_addr %{country.names.en}
              - isocode remote_addr %{country.iso_code}

    outputs:
        - name: stdout
          match: '*'

Each Record parameter specifies the following triplet:

  • country: The field name to be added to records.

  • remote_addr: The lookup key to process.

  • %{country.names.en}: The GeoIP2 database query.

By running Fluent Bit with this configuration, you will see the following output:

{"remote_addr": "8.8.8.8", "country": "United States", "isocode": "US"}

Last updated

Was this helpful?