...

Text file src/edge-infra.dev/hack/observability/fluent-bit/jarvis/td-agent-bit.conf

Documentation: edge-infra.dev/hack/observability/fluent-bit/jarvis

     1[SERVICE]
     2    # Flush
     3    # =====
     4    # set an interval of seconds before to flush records to a destination
     5    flush        5
     6
     7    # Daemon
     8    # ======
     9    # instruct Fluent Bit to run in foreground or background mode.
    10    daemon       Off
    11
    12    # Log_Level
    13    # =========
    14    # Set the verbosity level of the service, values can be:
    15    #
    16    # - error
    17    # - warning
    18    # - info
    19    # - debug
    20    # - trace
    21    #
    22    # by default 'info' is set, that means it includes 'error' and 'warning'.
    23    log_level    info
    24
    25    # Parsers File
    26    # ============
    27    # specify an optional 'Parsers' configuration file
    28    parsers_file parsers.conf
    29
    30    # Plugins File
    31    # ============
    32    # specify an optional 'Plugins' configuration file to load external plugins.
    33    plugins_file plugins.conf
    34
    35    # HTTP Server
    36    # ===========
    37    # Enable/Disable the built-in HTTP Server for metrics
    38    http_server  Off
    39    http_listen  0.0.0.0
    40    http_port    2020
    41
    42    # Storage
    43    # =======
    44    # Fluent Bit can use memory and filesystem buffering based mechanisms
    45    #
    46    # - https://docs.fluentbit.io/manual/administration/buffering-and-storage
    47    #
    48    # storage metrics
    49    # ---------------
    50    # publish storage pipeline metrics in '/api/v1/storage'. The metrics are
    51    # exported only if the 'http_server' option is enabled.
    52    #
    53    storage.metrics on
    54
    55    # storage.path
    56    # ------------
    57    # absolute file system path to store filesystem data buffers (chunks).
    58    #
    59    # storage.path /tmp/storage
    60
    61    # storage.sync
    62    # ------------
    63    # configure the synchronization mode used to store the data into the
    64    # filesystem. It can take the values normal or full.
    65    #
    66    # storage.sync normal
    67
    68    # storage.checksum
    69    # ----------------
    70    # enable the data integrity check when writing and reading data from the
    71    # filesystem. The storage layer uses the CRC32 algorithm.
    72    #
    73    # storage.checksum off
    74
    75    # storage.backlog.mem_limit
    76    # -------------------------
    77    # if storage.path is set, Fluent Bit will look for data chunks that were
    78    # not delivered and are still in the storage layer, these are called
    79    # backlog data. This option configure a hint of maximum value of memory
    80    # to use when processing these records.
    81    #
    82    # storage.backlog.mem_limit 5M
    83
    84
    85# =========
    86# aero logs
    87# =========
    88# Date      |Time        |PID |TID |Log Type|Component|Module                         |Source File       |Source Line|Free Text
    89# 2021-11-24|14:40:04.865|1889|2329|0008    |gsr50    |ncr.aero.deviceaccess.framework|FWFrameworkAPI.cpp|123        |AeroInitialise EXIT, Return Value [0], refCount [1]
    90# 2021-11-24|14:40:06.981|1889|2329|0001    |gsr50    |ncr.aero.deviceaccess.framework|FWFrameworkAPI.cpp|132        |AeroFinalise ENTRY should be error here
    91# 2021-11-24|14:40:06.981|1889|2329|0008    |gsr50    |ncr.aero.deviceaccess.framework|FWFrameworkAPI.cpp|152        |AeroFinalise EXIT, Return Value [0]
    92# 2021-11-24|14:40:37.763|2804|2992|0002    |gsr50    |ncr.aero.deviceaccess.framework|FWFrameworkAPI.cpp|110        |AeroInitialise ENTRY should be warning here
    93# 2021-11-24|14:40:37.763|2804|2992|0008    |gsr50    |ncr.aero.deviceaccess.framework|FWFrameworkAPI.cpp|123        |AeroInitialise EXIT, Return Value [0], refCount [1]
    94#
    95
    96[INPUT]
    97    Name tail
    98    Tag  aero.*
    99    Path /usr/local/ncr/aero/logs/*.log
   100    # gsr50.datalog.log appears to be a binary file
   101    Exclude_Path /usr/local/ncr/aero/logs/gsr50.datalog.log
   102    #Read_from_Head true
   103
   104[FILTER]
   105    Name        modify
   106    Match       aero.*
   107    Hard_rename log message
   108
   109[FILTER]
   110    Name parser
   111    Match aero.*
   112    Key_Name message
   113    Parser aero
   114    Parser json 
   115
   116# Add ERROR as the 'severity' field for log level 0001
   117[FILTER]
   118    Name modify
   119    Match aero.*
   120    Condition Key_value_matches level 0001
   121    Add severity ERROR
   122
   123# Add WARNING as the 'severity' field for log level 0002 
   124[FILTER]
   125    Name modify
   126    Match aero.*
   127    Condition Key_value_matches level 0002
   128    Add severity WARNING 
   129
   130# Set all log messages that aren't 0001 or 0002 to be DEBUG for the 'severity' field
   131[FILTER]
   132    Name modify
   133    Match aero.*
   134    Condition Key_value_does_not_match level 0001|0002
   135    Add severity DEBUG
   136
   137# example on how to exclude certain messages
   138#[FILTER]
   139#    Name    grep
   140#    Match   aero.*
   141#    Exclude level 0008
   142
   143# example of how to only capture aero errors(0001) and warnings(0002)
   144[FILTER]
   145    Name    grep
   146    Match   aero.*
   147    regex   level 0001|0002
   148
   149# example of how to add hostname as part of the jsonPayload for all INPUT sources
   150[FILTER]
   151    Name record_modifier
   152    Match *
   153    Record hostname ${HOSTNAME}
   154
   155# =============
   156# platform logs
   157# =============
   158[INPUT]
   159    Name tail
   160    Tag  platform.*
   161    Path /usr/local/ncr/platform/logs/*.log
   162    Exclude_Path /usr/local/ncr/platform/logs/*Install*.log
   163    #Read_from_Head true
   164
   165# ========================
   166# sco deviceServerCTM logs
   167# ========================
   168[INPUT]
   169    Name tail
   170    Tag  ncr_scot_device.*
   171    Path /usr/local/ncr_scot/deviceServerCTM/Logs/SSCODeviceServer.log
   172    #Read_from_Head true
   173    multiline.parser sco-device-server-regex
   174
   175[FILTER]
   176    Name        modify
   177    Match       ncr_scot_device.*
   178    Hard_rename log message
   179
   180# ========================
   181# sco launchpad logs
   182# ========================
   183[INPUT]
   184    Name tail
   185    Tag  ncr_scot_launchpad.*
   186    Path /usr/local/ncr_scot/launchpad/Logs/launchpadnet.log
   187    #Read_from_Head true
   188
   189# ========================
   190# scoxendpoint logs
   191# ========================
   192[INPUT]
   193    Name tail
   194    Tag  ncr_scot_scoxendpoint.*
   195    Path /usr/local/ncr_scot/scoxendpoint/Logs/scoxEndpoint.log
   196    #Read_from_Head true
   197
   198# ========================
   199# scoxui logs
   200# ========================
   201[INPUT]
   202    Name tail
   203    Tag  ncr_scot_scoxeui.*
   204    Path /usr/local/ncr_scot/scoxui/Logs/*.log
   205    #Read_from_Head true
   206
   207# stdout can be used for troubleshooting when running fluent-bit manually, e.g.
   208# /opt/td-agent-bit/bin/td-agent-bit -c /etc/td-agent-bit/td-agent-bit.conf
   209# [OUTPUT]
   210#     name  stdout
   211#     match *
   212
   213[OUTPUT]
   214    Name                          stackdriver
   215    Match                         *
   216    resource                      global
   217    severity_key                  severity
   218    # use 'net.dns.mode TCP' to fix timeout errors such as
   219    # [2021/12/02 09:57:28] [ warn] [net] getaddrinfo(host='logging.googleapis.com', err=12): Timeout while contacting DNS servers
   220    # ref: https://github.com/fluent/fluent-bit/issues/4050
   221    net.dns.mode                  TCP
   222    # creds.json is the google service account key. For an NCR Edge k8s environment this 
   223    # would be the contents of the gcp-creds secret in the monitoring namespace
   224    google_service_credentials    /etc/td-agent-bit/creds.json

View as plain text