Local Mode
Local mode is a way to deploy HyperDX without an external API server. You can connect directly to a Clickhouse server from your browser directly without an intermediate API server. All configurations in local mode is stored locally in your browser's local or session storage.
Authentication is not supported. It's intended to be used for quick testing and debugging use cases where deploying a full HyperDX instance is not necessary.
Getting Started
Hosted Version
You can use HyperDX's hosted local mode available at play.hyperdx.io (opens in a new tab).
Self-Hosted Version
The self-hosted image comes with an OpenTelemetry collector and a Clickhouse server pre-configured as well. This makes it easy to consume telemetry data from your applications and visualize it in HyperDX with minimal external setup. To get started with the self-hosted version, simply run the Docker container with the appropriate ports forwarded:
docker run -p 4318:4318 -p 4317:4317 -p 8080:8080 -p 8123:8123 docker.hyperdx.io/hyperdx/hyperdx-local:2-beta
Afterwards, you can visit http://localhost:8080
and immediately jump into the HyperDX UI.
The Clickhouse server is hosted on http://localhost:8123
with
gRPC and HTTP endpoints for OpenTelemetry on http://localhost:4317
and http://localhost:4318
respectively.
Ports:
4318
: OpenTelemetry HTTP endpoint4317
: OpenTelemetry gRPC endpoint8080
: HyperDX UI8123
: Clickhouse server
We recommend having at least 1GB of RAM and 1 CPU core available for the container if utilizing the built-in Clickhouse server and OpenTelemetry collector.
Configuring Instrumentation
Configuring instrumentation for HyperDX local is similar to configuring it for the regular open source version. You should point your OpenTelemetry instrumentation to the OpenTelemetry endpoints:
http://localhost:4318
for HTTPlocalhost:4317
for gRPC
Most instrumentations can be configured using the OTEL_EXPORTER_OTLP_ENDPOINT
environment variable. Ex: OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
.
If you're using a HyperDX maintained SDK, you may need to give a non-empty HYPERDX_API_KEY
as well, API keys are not validated in HyperDX Local and therefore can be any non-empty value.