open-telemetry / opentelemetry-collector-contrib

Contrib repository for the OpenTelemetry Collector
https://opentelemetry.io
Apache License 2.0
2.92k stars 2.28k forks source link

kubernetes ingresses not being observed by extension #35324

Open stokerjon opened 17 hours ago

stokerjon commented 17 hours ago

Component(s)

extension/observer/k8sobserver

What happened?

Description

When using k8s_observer with receiver creator and setting observe_ingresses: true it would be expected that it would start to create recievers based off of ingresses available in the cluster.

having a quick look it looks like the code to enable observing ingresess is missing from extension/observer/k8sobserver/extension.go

Steps to Reproduce

create a colloctor with the provided config

Expected Result

receiver creator would create receivers for ingresses in the cluster

Actual Result

ingresses are not observed and receiver creator does nothing

Collector version

v1.15.0/v0.109.0

Environment information

Environment

OS: amazon linux kubernetes: v1.30

OpenTelemetry Collector configuration

config:
    extensions:
      k8s_observer:
        auth_type: serviceAccount
        observe_pods: false
        observe_ingresses: true
    exporters:
      debug:
        verbosity: normal
        sampling_initial: 1
        sampling_thereafter: 1
    processors:
    receivers:
      receiver_creator:
        watch_observers:
          - k8s_observer
        receivers:
          httpcheck:
            rule: type == "k8s.ingress"
            config:
              config:
                targets:
                  - endpoint: "https://`host`/`path`"
                    method: GET
                collection_interval: 10s
    service:
      telemetry:
        logs:
          level: "DEBUG"
          development: true
          encoding: "json"
      extensions:
        - k8s_observer
      pipelines:
        metrics:
          exporters:
            - debug
          processors: []
          receivers:
            - receiver_creator

Log output

{"level":"info","ts":1726843193.1351163,"caller":"service@v0.109.0/service.go:129","msg":"Setting up own telemetry..."}
{"level":"warn","ts":1726843193.1352572,"caller":"service@v0.109.0/service.go:196","msg":"service::telemetry::metrics::address is being deprecated in favor of service::telemetry::metrics::readers","stacktrace":"go.opentelemetry.io/collector/service.logsAboutMeterProvider\n\tgo.opentelemetry.io/collector/service@v0.109.0/service.go:196\ngo.opentelemetry.io/collector/service.New\n\tgo.opentelemetry.io/collector/service@v0.109.0/service.go:143\ngo.opentelemetry.io/collector/otelcol.(*Collector).setupConfigurationComponents\n\tgo.opentelemetry.io/collector/otelcol@v0.109.0/collector.go:183\ngo.opentelemetry.io/collector/otelcol.(*Collector).Run\n\tgo.opentelemetry.io/collector/otelcol@v0.109.0/collector.go:282\ngo.opentelemetry.io/collector/otelcol.NewCommand.func1\n\tgo.opentelemetry.io/collector/otelcol@v0.109.0/command.go:36\ngithub.com/spf13/cobra.(*Command).execute\n\tgithub.com/spf13/cobra@v1.8.1/command.go:985\ngithub.com/spf13/cobra.(*Command).ExecuteC\n\tgithub.com/spf13/cobra@v1.8.1/command.go:1117\ngithub.com/spf13/cobra.(*Command).Execute\n\tgithub.com/spf13/cobra@v1.8.1/command.go:1041\nmain.runInteractive\n\tgithub.com/open-telemetry/opentelemetry-collector-releases/contrib/main.go:49\nmain.run\n\tgithub.com/open-telemetry/opentelemetry-collector-releases/contrib/main_others.go:10\nmain.main\n\tgithub.com/open-telemetry/opentelemetry-collector-releases/contrib/main.go:42\nruntime.main\n\truntime/proc.go:272"}
{"level":"info","ts":1726843193.135332,"caller":"service@v0.109.0/telemetry.go:98","msg":"Serving metrics","address":":8888","metrics level":"Normal"}
{"level":"info","ts":1726843193.1354373,"caller":"builders/builders.go:26","msg":"Development component. May change in the future.","kind":"exporter","data_type":"metrics","name":"debug"}
{"level":"debug","ts":1726843193.1357343,"caller":"builders/builders.go:24","msg":"Beta component. May change in the future.","kind":"receiver","name":"receiver_creator","data_type":"metrics"}
{"level":"debug","ts":1726843193.1357844,"caller":"builders/extension.go:48","msg":"Alpha component. May change in the future.","kind":"extension","name":"k8s_observer"}
{"level":"info","ts":1726843193.1560295,"caller":"service@v0.109.0/service.go:213","msg":"Starting otelcol-contrib...","Version":"0.109.0","NumCPU":8}
{"level":"info","ts":1726843193.156081,"caller":"extensions/extensions.go:39","msg":"Starting extensions..."}
{"level":"info","ts":1726843193.1561005,"caller":"extensions/extensions.go:42","msg":"Extension is starting...","kind":"extension","name":"k8s_observer"}
{"level":"info","ts":1726843193.1561198,"caller":"extensions/extensions.go:59","msg":"Extension started.","kind":"extension","name":"k8s_observer"}
{"level":"info","ts":1726843193.1562421,"caller":"service@v0.109.0/service.go:239","msg":"Everything is ready. Begin running and processing data."}

Additional context

No response

github-actions[bot] commented 17 hours ago

Pinging code owners: