Uploaded image for project: 'Observability and Data Analysis Program'
  1. Observability and Data Analysis Program
  2. OBSDA-62

Unable to forward logs with ClusterLogForwarder via url

XMLWordPrintable

    • Icon: Feature Feature
    • Resolution: Obsolete
    • Icon: Normal Normal
    • None
    • None
    • None
    • False
    • False
    • Undefined

      Description of problem: In OCP 4.5, the LogForwading API that will configure OCP fluentd to send logs to an aggregator that runs on the same node. The OCP fluentd does not use the hostNetwork so as a workaround, endpoint: '"#{ENV[''NODE_IPV4'']}":8989' works. This NODE_IPV4 contains the IP of the node fluentd is running on and the LogForwading API is able to configure fluentd correctly using this format.

      However things have changed for 4.6, LogForwarding is now ClusterLogForwarder and “endpoint” has been replaced with “url” and have been unable to get the above format to work with “url”. It seems to go through a special validator and not behaving the same way.

      The goal is to create an entry in new ClusterLogForwarder to send logs to something listening on a port on the node where the ECP fluentd is running.

       

      Version-Release number of selected component (if applicable):
      4.6.8

      How reproducible:
      Using environment variable NODE_IPV4 in logforwarding,
      in 4.5 logforwarding, output part

      • endpoint: '"#{ENV[''NODE_IPV4'']}":8989'
        insecure: true
        name: localaggr
        type: forward

      this translate to fluentd config as

      host "#{ENV['NODE_IPV4']}"
      port 8989

      Steps to Reproduce:
      1. Configure cluster logging in 4.6
      2. Object kind changed from "logfowarding" to "ClusterLogForwarder"
      3. Output is looking for "url" and fails to accept env var stated above:

      Actual results:
      the output part changed to

      • name: localaggr
        type: fluentdForward
        url: 'tcp://#{ENV[''NODE_IPV4'']}:8989'

      as there is a URL validation step in ClusterLogForwarder, this leads to a output error in ClusterLogForwarder instance status.

      Expected results:
      output should be:
      host "#{ENV['NODE_IPV4']}"
      port 8989

              cvogel1 Christian Heidenreich (Inactive)
              rhn-support-antgarci Antonio Garcia
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: