Config: Inject Section

Inject section overview

The inject section can be under <match> or <filter> section. It is enabled for the plugins that support injecting values to the event record.

<match>
  @type file
  # ...
  <inject>
    # ...
  </inject>
</match>

Example

Configuration:

<inject>
  time_key fluentd_time
  time_type string
  time_format %Y-%m-%dT%H:%M:%S.%NZ
  tag_key fluentd_tag
</inject>

Event Record:

tag: test
time: 1547575563.952259
record: {"message":"hello"}

Injected Record:

{"message":"hello","fluentd_tag":"test","fluentd_time":"2019-01-15T18:06:03.952259000Z"}

Inject Section Parameter

Inject Parameters

  • hostname_key (string) (optional): the field name to inject hostname

    • Default: nil

  • hostname (string) (optional): hostname value

    • Default: Socket.gethostname

  • worker_id_key (string) (optional): the field name to inject

    worker_id

    • Default: nil

  • tag_key (string) (optional): the field name to inject tag

    • Default: nil

  • time_key (string) (optional): the field name to inject time

    • Default: nil

Time Parameters

  • time_type (enum) (optional): parses/formats value according to this

    type

    • Default: float

    • Available values:

      • float: seconds from Epoch + microseconds (e.g.

        1510544836.154709)

      • unixtime: seconds from Epoch (e.g. 1510544836)

      • unixtime_millis (since v1.11.4): milliseconds from Epoch

        (e.g. 1510544836154)

      • unixtime_micros (since v1.20.0): microseconds from Epoch

        (e.g. 1510544836154709)

      • unixtime_nanos (since v1.20.0): nanoseconds from Epoch

        (e.g. 1510544836154709804)

      • string: use format specified by time_format, local time or time

        zone

  • time_format (string) (optional): processes value according to the

    specified format. This is available only when time_type is string.

    • Default: nil

    • Available time format:

      • For more details about formatting, see

        Time#strftime.

      • For more details about parsing, see

        Time.strptime.

      • %iso8601 (only for parsing)

      • Use %N to parse/format with sub-second precision, because

        strptime does not support

        %3N, %6N, %9N, and %L.

  • localtime (bool) (optional): if true, uses local time. Otherwise,

    UTC is used. This is exclusive with utc.

    • Default: true

  • utc (bool) (optional): if true, uses UTC. Otherwise, local time is

    used. This is exclusive with localtime.

    • Default: false

  • timezone (string) (optional): uses the specified timezone. One can

    parse/format the time value in the specified timezone format.

    • Default: nil

    • Available time zone format:

      1. [+-]HH:MM (e.g. "+09:00") (recommended)

      2. [+-]HHMM (e.g. "+0900")

      3. [+-]HH (e.g. "+09")

      4. Region/Zone (e.g. Asia/Tokyo)

      5. Region/Zone/Zone (e.g. America/Argentina/Buenos_Aires)

If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.

Last updated