This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to v2, this PR will be updated.
# Releases
## @hyperdx/app@2.0.0
### Major Changes
- 3fb3169: bumps to v2 beta
### Minor Changes
- 759da7a: Support multiple OTEL metric types in source configuration setup.
- 9579251: Stores the collapse vs expand status of the side navigation in local storage so it's carried across browser windows/sessions.
- 57a6bc3: feat: BETA metrics support (sum + gauge)
### Patch Changes
- 56e39dc: 36c3edc fix: remove several source change forms throughout the log drawer
- c60b975: chore: bump node to v22.16.0
- ab617c1: feat: support multiseries metrics chart
- 7de8916: Removes trailing slash for connection urls
- 3be7f4d: fix: input does not overlap with language select button anymore
- d176b54: fix: chartpage querying too on every keystroke after initial query
- 459267a: feat: introduce session table model form
- fe8ed22: fix: color display on search page for traces
- b3f3151: Allow to create Slack Webhooks from Team Settings page
- 2e350e2: feat: implement logs > metrics correlation flow + introduce convertV1ChartConfigToV2
- 321e24f: fix: alerting time range filtering bug
- 092a292: fix: autocomplete for key-values complete for v2 lucene
- a6fd5e3: feat: introduce k8s preset dashboard
- 2f626e1: fix: metric name filtering for some metadata
- cfdd523: feat: clickhouse queries are by default conducted through the clickhouse library via POST request. localMode still uses GET for CORS purposes
- 6dc6989: feat: Automatically use last used source when loading search page
- a9dfa14: Added support to CTE rendering where you can now specify a CTE using a full chart config object instance. This CTE capability is then used to avoid the URI too long error for delta event queries.
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- 5a10ae1: fix: delete huge z-value for tooltip
- f5e9a07: chore: bump node version to v22
- b16c8e1: feat: compute charts ratio
- 6864836: fix: don't show ellipses on search when query is in-flight
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- 08009ac: feat: add saved filters for searches
- 92a4800: feat: move rrweb event fetching to the client instead of an api route
- b99236d: fix: autocomplete options for dashboard page
- 43a9ca1: adopt clickhouse-js for all client side queries
- b690db8: Introduce event panel overview tab
- 7f0b397: feat: queryChartConfig method + events chart ratio
- 5db2767: Fixed CI linting and UI release task.
- 000458d: chore: GA v2
- 84a9119: fix: Session replay intermittently showing "No replay available for this session"
- 4514f2c: Remove connection health hook - too noisy
- 8d534da: fixed ui state on session panel to be inline with ui
- 931d738: fix: bugs with showing non otel spans (ex. clickhouse opentelemetry span logs)
- 2580ddd: chore: bump next to v13.5.10
- db761ba: fix: remove originalWhere tag from view. not used anyways
- 184402d: fix: use quote for aliases for sql compatibility
- 5044083: Session Replay tab for traces is disabled unless the source is configured with a sessionId
- 8c95b9e: Add search history
- a762203: fix: metadata getAllKeyValues query key scoped to table now
- cd0e4fd: fix: correct handling of gauge metrics in renderChartConfig
- b4b5f6b: style: remove unused routes/components + clickhouse utils (api)
- 1211386: add severitytext coloring to event patterns
- 6dafb87: fix: View Events not shown for multiple series; grabs where clause when single series
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- decd622: fix: k8s dashboard uptime metrics + warning k8s event body
- e884d85: fix: metrics > logs correlation flow
- e5a210a: feat: support search on multi implicit fields (BETA)
- Updated dependencies [50ce38f]
- Updated dependencies [79fe30f]
- Updated dependencies [e935bb6]
- Updated dependencies [8acc725]
- Updated dependencies [2e350e2]
- Updated dependencies [321e24f]
- Updated dependencies [092a292]
- Updated dependencies [a6fd5e3]
- Updated dependencies [2f626e1]
- Updated dependencies [cfdd523]
- Updated dependencies [9c5c239]
- Updated dependencies [7d2cfcf]
- Updated dependencies [a9dfa14]
- Updated dependencies [fa7875c]
- Updated dependencies [b16c8e1]
- Updated dependencies [c50c42d]
- Updated dependencies [86465a2]
- Updated dependencies [e002c2f]
- Updated dependencies [b51e39c]
- Updated dependencies [759da7a]
- Updated dependencies [b9f7d32]
- Updated dependencies [92a4800]
- Updated dependencies [eaa6bfa]
- Updated dependencies [e80630c]
- Updated dependencies [4865ce7]
- Updated dependencies [29e8f37]
- Updated dependencies [43a9ca1]
- Updated dependencies [7f0b397]
- Updated dependencies [bd9dc18]
- Updated dependencies [5db2767]
- Updated dependencies [414ff92]
- Updated dependencies [000458d]
- Updated dependencies [0cf5358]
- Updated dependencies [99b60d5]
- Updated dependencies [931d738]
- Updated dependencies [57a6bc3]
- Updated dependencies [184402d]
- Updated dependencies [a762203]
- Updated dependencies [cd0e4fd]
- Updated dependencies [e7262d1]
- Updated dependencies [321e24f]
- Updated dependencies [96b8c50]
- Updated dependencies [e884d85]
- Updated dependencies [e5a210a]
- @hyperdx/common-utils@0.2.0
## @hyperdx/api@2.0.0
### Minor Changes
- 79fe30f: Queries depending on numeric aggregates now use the type's default value (e.g. 0) instead of null when dealing with non-numeric data.
- 759da7a: Support multiple OTEL metric types in source configuration setup.
### Patch Changes
- c60b975: chore: bump node to v22.16.0
- 50ce38f: Histogram metric query test cases
- 9004826: fix: remove total number of webhook limit
- 2e350e2: feat: implement logs > metrics correlation flow + introduce convertV1ChartConfigToV2
- 321e24f: fix: alerting time range filtering bug
- 9a9581b: Adds external API for alerts and dashboards
- e5dfefb: Added test cases for the webhook and source routes.
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- f5e9a07: chore: bump node version to v22
- 59ee6d2: bring usage stats up to date
- 1674ab8: moved swagger to dependencies instead of devDependencies
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- d72d1d2: Add ingestion key authentication in OTel collector via OpAMP
- b9f7d32: Refactored renderWith to simplify logic and ship more tests with the changes.
- 293a2af: Adds openapidoc annotations for spec generation and swagger route for development
- 92a4800: feat: move rrweb event fetching to the client instead of an api route
- adc2a0b: fix: Ensure errors from proxy are shown to the user
- 43a9ca1: adopt clickhouse-js for all client side queries
- 7f0b397: feat: queryChartConfig method + events chart ratio
- 5db2767: Fixed CI linting and UI release task.
- 000458d: chore: GA v2
- 99b60d5: Fixed sum metric query to pass integration test case from v1.
- 931d738: fix: bugs with showing non otel spans (ex. clickhouse opentelemetry span logs)
- 184402d: fix: use quote for aliases for sql compatibility
- cd0e4fd: fix: correct handling of gauge metrics in renderChartConfig
- d63deed: fix: support otelcol opamp for aio build
- b4b5f6b: style: remove unused routes/components + clickhouse utils (api)
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- d326610: feat: introduce RUN_SCHEDULED_TASKS_EXTERNALLY + enable in-app task
- 96b8c50: Fix histogram query metric to support grouping and correct issues with value computation.
- 414ff92: perf + fix: single clickhouse proxy middleware instance
- Updated dependencies [50ce38f]
- Updated dependencies [79fe30f]
- Updated dependencies [e935bb6]
- Updated dependencies [8acc725]
- Updated dependencies [2e350e2]
- Updated dependencies [321e24f]
- Updated dependencies [092a292]
- Updated dependencies [a6fd5e3]
- Updated dependencies [2f626e1]
- Updated dependencies [cfdd523]
- Updated dependencies [9c5c239]
- Updated dependencies [7d2cfcf]
- Updated dependencies [a9dfa14]
- Updated dependencies [fa7875c]
- Updated dependencies [b16c8e1]
- Updated dependencies [c50c42d]
- Updated dependencies [86465a2]
- Updated dependencies [e002c2f]
- Updated dependencies [b51e39c]
- Updated dependencies [759da7a]
- Updated dependencies [b9f7d32]
- Updated dependencies [92a4800]
- Updated dependencies [eaa6bfa]
- Updated dependencies [e80630c]
- Updated dependencies [4865ce7]
- Updated dependencies [29e8f37]
- Updated dependencies [43a9ca1]
- Updated dependencies [7f0b397]
- Updated dependencies [bd9dc18]
- Updated dependencies [5db2767]
- Updated dependencies [414ff92]
- Updated dependencies [000458d]
- Updated dependencies [0cf5358]
- Updated dependencies [99b60d5]
- Updated dependencies [931d738]
- Updated dependencies [57a6bc3]
- Updated dependencies [184402d]
- Updated dependencies [a762203]
- Updated dependencies [cd0e4fd]
- Updated dependencies [e7262d1]
- Updated dependencies [321e24f]
- Updated dependencies [96b8c50]
- Updated dependencies [e884d85]
- Updated dependencies [e5a210a]
- @hyperdx/common-utils@0.2.0
## @hyperdx/common-utils@0.2.0
### Minor Changes
- 79fe30f: Queries depending on numeric aggregates now use the type's default value (e.g. 0) instead of null when dealing with non-numeric data.
- a9dfa14: Added support to CTE rendering where you can now specify a CTE using a full chart config object instance. This CTE capability is then used to avoid the URI too long error for delta event queries.
- e002c2f: Support querying a sum metric as a value instead of a rate
- 759da7a: Support multiple OTEL metric types in source configuration setup.
- e80630c: Add chart support for querying OTEL histogram metric table
- 57a6bc3: feat: BETA metrics support (sum + gauge)
### Patch Changes
- 50ce38f: Histogram metric query test cases
- e935bb6: ci: introduce release-nightly workflow
- 8acc725: Fixes to histogram value computation
- 2e350e2: feat: implement logs > metrics correlation flow + introduce convertV1ChartConfigToV2
- 321e24f: fix: alerting time range filtering bug
- 092a292: fix: autocomplete for key-values complete for v2 lucene
- a6fd5e3: feat: introduce k8s preset dashboard
- 2f626e1: fix: metric name filtering for some metadata
- cfdd523: feat: clickhouse queries are by default conducted through the clickhouse library via POST request. localMode still uses GET for CORS purposes
- 9c5c239: fix: handle 'filters' config (metrics)
- 7d2cfcf: fix: 'Failed to fetch' errors
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- b16c8e1: feat: compute charts ratio
- c50c42d: add correlate log in trace waterfall chart
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- b51e39c: fix: disable keep_alive on the browser side (ch client)
- b9f7d32: Refactored renderWith to simplify logic and ship more tests with the changes.
- 92a4800: feat: move rrweb event fetching to the client instead of an api route
- eaa6bfa: fix: transform partition_key to be the same format as others
- 4865ce7: Fixes the histogram query to perform quantile calculation across all data points
- 29e8f37: fix: aggCondition issue in sum/gauge/histogram metrics
- 43a9ca1: adopt clickhouse-js for all client side queries
- 7f0b397: feat: queryChartConfig method + events chart ratio
- bd9dc18: perf: reuse existing queries promises to avoid duplicate requests
- 5db2767: Fixed CI linting and UI release task.
- 414ff92: feat: export 'Connection' type
- 000458d: chore: GA v2
- 0cf5358: chore: bump clickhouse client to v1.11.1
- 99b60d5: Fixed sum metric query to pass integration test case from v1.
- 931d738: fix: bugs with showing non otel spans (ex. clickhouse opentelemetry span logs)
- 184402d: fix: use quote for aliases for sql compatibility
- a762203: fix: metadata getAllKeyValues query key scoped to table now
- cd0e4fd: fix: correct handling of gauge metrics in renderChartConfig
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- 321e24f: feat: support 'dateRangeEndInclusive' in timeFilterExpr
- 96b8c50: Fix histogram query metric to support grouping and correct issues with value computation.
- e884d85: fix: metrics > logs correlation flow
- e5a210a: feat: support search on multi implicit fields (BETA)
Co-authored-by: Warren <5959690+wrn14897@users.noreply.github.com>
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to v2, this PR will be updated.
⚠️⚠️⚠️⚠️⚠️⚠️
`v2` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run `changeset pre exit` on `v2`.
⚠️⚠️⚠️⚠️⚠️⚠️
# Releases
## @hyperdx/api@2.0.0-beta.17
### Patch Changes
- c60b975: chore: bump node to v22.16.0
- 9004826: fix: remove total number of webhook limit
- 321e24f: fix: alerting time range filtering bug
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- 59ee6d2: bring usage stats up to date
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- d72d1d2: Add ingestion key authentication in OTel collector via OpAMP
- 43a9ca1: adopt clickhouse-js for all client side queries
- d63deed: fix: support otelcol opamp for aio build
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- 96b8c50: Fix histogram query metric to support grouping and correct issues with value computation.
- Updated dependencies [e935bb6]
- Updated dependencies [321e24f]
- Updated dependencies [7d2cfcf]
- Updated dependencies [fa7875c]
- Updated dependencies [86465a2]
- Updated dependencies [b51e39c]
- Updated dependencies [43a9ca1]
- Updated dependencies [0cf5358]
- Updated dependencies [a762203]
- Updated dependencies [e7262d1]
- Updated dependencies [321e24f]
- Updated dependencies [96b8c50]
- @hyperdx/common-utils@0.2.0-beta.6
## @hyperdx/app@2.0.0-beta.17
### Patch Changes
- c60b975: chore: bump node to v22.16.0
- d176b54: fix: chartpage querying too on every keystroke after initial query
- fe8ed22: fix: color display on search page for traces
- 321e24f: fix: alerting time range filtering bug
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- 43a9ca1: adopt clickhouse-js for all client side queries
- 84a9119: fix: Session replay intermittently showing "No replay available for this session"
- 8d534da: fixed ui state on session panel to be inline with ui
- a762203: fix: metadata getAllKeyValues query key scoped to table now
- 1211386: add severitytext coloring to event patterns
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- Updated dependencies [e935bb6]
- Updated dependencies [321e24f]
- Updated dependencies [7d2cfcf]
- Updated dependencies [fa7875c]
- Updated dependencies [86465a2]
- Updated dependencies [b51e39c]
- Updated dependencies [43a9ca1]
- Updated dependencies [0cf5358]
- Updated dependencies [a762203]
- Updated dependencies [e7262d1]
- Updated dependencies [321e24f]
- Updated dependencies [96b8c50]
- @hyperdx/common-utils@0.2.0-beta.6
## @hyperdx/common-utils@0.2.0-beta.6
### Patch Changes
- e935bb6: ci: introduce release-nightly workflow
- 321e24f: fix: alerting time range filtering bug
- 7d2cfcf: fix: 'Failed to fetch' errors
- fa7875c: feat: add summary and exponential histogram metrics to the source form and database storage
- 86465a2: fix: map CLICKHOUSE_SERVER_ENDPOINT to otelcol ch exporter 'endpoint' field
- b51e39c: fix: disable keep_alive on the browser side (ch client)
- 43a9ca1: adopt clickhouse-js for all client side queries
- 0cf5358: chore: bump clickhouse client to v1.11.1
- a762203: fix: metadata getAllKeyValues query key scoped to table now
- e7262d1: feat: introduce all-one-one (auth vs noauth) multi-stage build
- 321e24f: feat: support 'dateRangeEndInclusive' in timeFilterExpr
- 96b8c50: Fix histogram query metric to support grouping and correct issues with value computation.
Co-authored-by: Warren <5959690+wrn14897@users.noreply.github.com>
Ref: HDX-1801
startup logs are like
```
Send OpenTelemetry data via:
http/protobuf: OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
gRPC: OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
Exporting data to ClickHouse:
Endpoint: tcp://ch-server:9000?dial_timeout=10s
Database: default
Waiting for ClickHouse to be ready...
ClickHouse is ready!
Visit the HyperDX UI at http://localhost:8080
```
- Support `CLICKHOUSE_ENDPOINT` to switch aio clickhouse endpoint (Ref: HDX-1758)
- Support `HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE ` (Ref: HDX-1786)
Support command like
```
docker run -e CLICKHOUSE_ENDPOINT=<CH-CLOUD-ENDPOINT> -e CLICKHOUSE_USER=default -e CLICKHOUSE_PASSWORD='BLABLA' -e HYPERDX_OTEL_EXPORTER_CLICKHOUSE_DATABASE =hyperdx -p 8080:8080 -p 4317:4317 -p 4318:4318 hyperdx/hyperdx-local:2-nightly
```
So users can export data to other services like clickhouse cloud
HDX-1772
- if `implicitColumnExpression` had a `Map` column type in it, we'd try to render objects that crashed the trace panel, switching logs to always render off of body expression first. Just to be defensive, we also try to stringify the Body before displaying
HDX-1769
- If root/parent spans were missing, their children spans did not render properly, we were incorrectly assuming logs with a spanId were a valid parent span which meant we did not properly render orphaned spans.
bonus: Fixes NX cache misconfiguration which should stop Vercel deployment errors due to cache
Sometimes in transient states (navigating to a new page) autocomplete can have a null value which would throw an error, this just makes sure we don't throw an error
For users connecting to ClickHouse Cloud or a TLS endpoint, add the `secure=true` query parameter or use the HTTPS protocol. Providing the full URL via the `CLICKHOUSE_SERVER_ENDPOINT` in the exporter's endpoint field should resolve this issue
Ref: HDX-1743
1. The wait_for_ready function does not need the endpoint param. We should remove it to make maintenance easier.
2. The hdx-1514-inference test should use the attempt_env_cleanup function to pick up the logic that skips container tear down.
Ref: HDX-1730
1. Merge 'fullstack' and 'local' (auth + noauth) builds into a single Dockerfile
2. Introduce 'all-in-one-auth' and 'all-in-one-noauth' build stages
3. Lock `IS_LOCAL_APP_MODE` env var
4. Fix bug in ctrl-c exit with docker run
5. Enable alerts in local mode (no-auth)
6. Build `common-utils` on the fly (no longer needing pulling pkg from npm)
Ref: HDX-1709
Ref: HDX-1713
Ref: HDX-1254
Ref: HDX-1729
To match v2 product definition, we are going to release three images:
- hyperdx/hyperdx (--target=prod): app only without any other deps (clickhouse, otelcol, mongodb), used in default compose + helm deployment
- hyperdx/hyperdx-all-in-one (--target=all-in-one-auth): all-in-one build + auth
- hyperdx/hyperdx-local (--target=all-in-one-noauth): all-in-one build + no-auth
Production impacts:
- hyperdx/hyperdx: none
- hyperdx/hyperdx-all-in-one: new
- hyperdx/hyperdx-local: add server components (alerts, saved searches, dashboards)
Ref: HDX-1688
All modes for querying a clickhouse instance now go through clickhouse-js. This change is agnostic of the clickhouse server instance. This was tested in localmode tested against image tags
- 23-alpine
- 24-alpine
- 25.4-alpine
The docker command run for these was `docker run --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 --env CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 clickhouse/clickhouse-server:IMAGE_TAG_HERE`. Then I just ran `yarn dev` with a modified docker-compose.dev.yml where the `ports` section under `ch-server` is removed, and the otel-collector sends to `host.docker.internal:9000` instead of `ch-server:9000`.
- add top level attributes to overview panel: HDX-1715
- add connection name to sources list
- introduce additional default aliases for otel (service, level, duration)
- fix bug with being unable to save source after deselecting correlated log source
- copy improvements
- `dev:down` npm command to tear down dev docker compose