SigNoz Observability Platform
repository·main·Indexed 12 days ago
https://github.com/SigNoz/signozAn open-source, OpenTelemetry-native observability platform providing a unified interface for logs, metrics, traces, alerts, and dashboards. Built on a high-performance columnar database, it replaces fragmented monitoring stacks. The platform is deployed via Foundry and includes a Vite-based frontend with a robust permission-based authorization (AuthZ) system and error boundary handling.
What's inside SigNoz
- SigNoz is an open-source observability platform built on OpenTelemetry. It provides a unified platform for logs, metrics, traces, alerts, and dashboards, serving as an alternative to fragmented monitoring stacks or commercial tools like DataDog and NewRelic. It is designed for high-cardinality observability workloads using a columnar database.
Integrate Messaging Queues with SigNoz
mainSigNoz supports integration with messaging queues to collect observability data. The integration package provides the
apiandtranslationlogic required to process data from supported queues.Currently, only Kafka is supported.
To achieve full observability, you must configure two distinct data flows:
- Trace Collection: Configure your Kafka Producers and Consumers to send traces to SigNoz.
- Metrics Collection: Configure SigNoz to collect metrics from Kafka Brokers, Producers, and Consumers.
Monitor applications and infrastructure with SigNoz
mainSigNoz provides a unified observability platform by connecting multiple signals in one place. Key monitoring capabilities include:
- APM (Application Performance Monitoring): Monitor service latency, error rates, throughput, Apdex, key endpoints, database calls, and external calls.
- Log Management: Ingest, search, aggregate, and correlate logs with traces and metrics using a visual query builder.
- Metrics and Dashboards: Create dashboards for application, infrastructure, and custom metrics using Query Builder, PromQL, or ClickHouse SQL.
- Infrastructure Monitoring: Monitor Kubernetes clusters, pods, nodes, workloads, and host-level metrics (CPU, memory, disk, network, logs, and traces).
- LLM and AI Observability: Track LLM applications, RAG pipelines, prompts, tool calls, tokens, latency, and costs.
- Distributed Tracing: Follow requests across services using flamegraphs, waterfalls, span events, and trace analysis.
- Trace Funnels: Create funnels from traces to identify drops in request flows or systemic workflow failures.
- Agent-native and MCP: Use the SigNoz MCP (Model Context Protocol) server to provide telemetry to programming agents. (Note: 'Noz' AI features are currently available only on SigNoz Cloud).
Monitor application and infrastructure telemetry with SigNoz
mainSigNoz is an OpenTelemetry-native observability platform that correlates multiple signals in one place. You can monitor:
- APM (Application Performance Monitoring): Track service latency, error rates, throughput, Apdex, top endpoints, database calls, and external calls.
- Log Management: Ingest, search, aggregate, and correlate logs with traces and metrics using a visual query builder.
- Metrics and Dashboards: Build dashboards for application, infrastructure, and custom metrics using Query Builder, PromQL, or ClickHouse SQL.
- Infrastructure Monitoring: Monitor Kubernetes clusters (pods, nodes, workloads) and host-level metrics (CPU, memory, disk, network).
- LLM and AI Observability: Trace LLM applications, RAG pipelines, prompts, tool calls, tokens, latency, and costs.
- Distributed Tracing: Follow requests across services using flamegraphs, waterfalls, span events, and trace analytics.
- Trace Funnels: Analyze request-flow drop-offs and failed transitions to understand systemic workflow issues.
- Exceptions and Alerts: Monitor application exceptions and configure alerts based on telemetry data.
Monitor various observability signals with SigNoz
mainSigNoz integrates multiple telemetry signals into a single platform:
- APM (Application Performance Monitoring): Monitor service latency, error rates, throughput, Apdex, core endpoints, database calls, and external calls.
- Log Management: Ingest, search, and aggregate logs. Use the visual query builder to correlate logs with traces and metrics.
- Metrics and Dashboards: Build dashboards for applications and infrastructure using Query Builder, PromQL, or ClickHouse SQL.
- Infrastructure Monitoring: Monitor Kubernetes clusters (Pods, Nodes, Workloads) and host-level metrics (CPU, Memory, Disk, Network).
- LLM and AI Observability: Trace LLM applications and RAG pipelines, including prompts, tool calls, tokens, latency, and costs.
- Distributed Tracing: Track requests across services using flame graphs, waterfall views, Span events, and trace analysis.
- Trace Funnels: Create funnels based on traces to identify drop-off points and failed conversions in request flows.
- Agent-native Observability: Use the SigNoz MCP server to bring telemetry data into programming agents, or use Noz (Cloud only) to investigate incidents and build dashboards via AI.
Understand the SigNoz Frontend project structure
mainThe frontend codebase is organized into the following directory structure:
src/api/: Contains API clients and React Query hooks.src/components/: Shared UI components.src/container/: Page-level containers.src/hooks/: Custom React hooks.src/pages/: Route-level pages.src/providers/: React context providers.src/store/: Redux store management.src/types/: TypeScript definitions.
Understand the AuthZ permission system
mainSigNoz uses a permission-based authorization (AuthZ) system for the frontend to control access to specific UI elements and features.
Important Note on Backend Enforcement: The backend does not yet enforce all permissions. If you are creating a new page or content that represents a resource not currently listed in the supported resources, you should skip the AuthZ implementation for now, as the backend will not validate these permissions.
Use SigNoz MCP Server and Agent-Native Observability
mainSigNoz provides agent-native observability features:
- SigNoz MCP Server: Allows you to bring telemetry data directly into coding agents via the Model Context Protocol (MCP).
- Noz in SigNoz: An AI-driven interface (available in SigNoz Cloud) used to investigate incidents, improve alerts, and create dashboards with production context.
For more details, refer to the SigNoz MCP Server documentation or Agent Skills documentation.
Core Rules for Authorization UI
mainWhen structuring pages for the permission system, follow these rules to ensure a consistent user experience:
- Routes are always reachable: A page route should always render first. Individual components or sections within the page are gated, not the route itself.
updatedependency: Anupdateaction requires bothreadandupdatepermissions. If a user cannot read the current value, do not show an edit affordance.deleteindependence:deletepermissions are independent ofread. Users withdeletebut noreadshould still see delete controls.- No per-row gating: Never gate individual rows in a list. If a user has
listpermission, render all rows. Checkreadpermission only when the user attempts to open a specific row (e.g., in a drawer or detail route). - Gate the narrowest possible element: Prefer gating a button, a section, or a specific sub-resource rather than an entire page.
- Sub-resource autonomy: A user might lack
readon a parent resource (e.g., Service Accounts) but still havecreatepermissions on a sub-resource (e.g., API Keys). Do not block the parent if it hides allowed sub-resource actions.
Best practices for using Error Boundaries
mainTo effectively use error boundaries in your application, follow these guidelines:
- Use Sparingly: Do not wrap every component. Focus on critical UI elements, third-party integrations, data-heavy components, or route-level components.
- Meaningful Fallbacks: Provide helpful fallback UI that guides users rather than leaving them with a broken screen.
- Log Errors: Always implement error logging (via
onErroror Sentry) to ensure you can debug production issues. - Component Names: Ensure components have a proper
displayNameto make thecomponentStackuseful for debugging. - Test Scenarios: Explicitly test error scenarios to verify that your boundaries catch errors and display fallbacks correctly.
How Foundry deployment commands work
mainFoundry manages deployments using two primary commands that separate manifest generation from application:
foundryctl forge: Generates deployment manifests from acasting.yamlfile. This command is safe to run repeatedly as it does not interact with running containers.foundryctl cast: Applies the generated manifests. It recreates containers and reuses the volumes specified in your configuration or patches.
If you prefer not to use
foundryctl cast, you can manually apply the generated artifacts located inpours/deployment/using standard Docker commands.# Manual deployment using generated artifacts cd pours/deployment docker compose up -d # For Compose docker stack deploy -c compose.yaml signoz # For SwarmCompare SigNoz with other observability tools
mainSigNoz is designed as an alternative to specialized or commercial tools:
Tool Comparison with SigNoz Prometheus Prometheus focuses on metrics; SigNoz combines metrics, logs, traces, dashboards, and alerts for correlated debugging. Jaeger Jaeger is specialized for distributed tracing; SigNoz adds metrics, logs, trace analysis, dashboards, and alerting. Elastic SigNoz uses a columnar database for efficient observability analysis and high-cardinality logs, requiring ~50% fewer resources during ingestion compared to Elastic. Loki SigNoz indexes all keys, whereas Loki may encounter max streamerrors when increasing the number of labels.