hyperdxio / hyperdxio/hyperdx

Materializing kubernetes.io/name label in otel_logs

Open
#2,110 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
9.9k
Forks
471
Avg merge
2d 4h
Merged PRs (30d)
117

Description

I'm trying to materialize the kubernetes.io/name label in the logs table like this:

`k8s.pod.labels.app.kubernetes.io/name` LowCardinality(String) MATERIALIZED ResourceAttributes['k8s.pod.labels.app.kubernetes.io/name'] CODEC(ZSTD(1)),

It looks like HyperDx is not able to handle the / in the field name, Clickhouse logs this error:

DB::Exception: Unknown expression or function identifier `k8s.pod.labels.app.kubernetes.io` in scope  sampledData. Maybe you meant: ['k8s.pod.labels.app.kubernetes.io/name']

Note: I'm using a custom ingestion pipeline, not the Otel exporter, so maybe this field is named differently when shipping natively?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the materialized kubernetes.io/name column definition in ClickHouse and trace how HyperDX handles field names containing '/'. Check whether custom ingestion names this field differently from the OpenTelemetry exporter. Done means the intended label can be materialized and queried without the reported identifier error.

Written by the indexing model from the issue text.

Assessment

Tech stack
clickhouse, kubernetes
Domain
databases, observability
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.