The loki ui is a new Grafana plugin that provides a user interface for real-time log visualization and querying. It uses labels to identify and index the different log streams. It also features LogQL as a query language that can be used to filter and query data. It natively integrates with Prometheus for metrics and Grafana to provide a seamless workflow for monitoring, troubleshooting, and viewing log data.
Loki is a logging system designed to be simple, cost-effective, and seamlessly integrated with Prometheus and Grafana. It focuses on label-based indexing and avoids full text indexing, making it faster to query than other logging systems. It uses object storage for fast reads and writes, which is usually cheaper than block storage. It scales horizontally to handle large-scale logging operations without requiring dedicated RAM instances. It also leverages a dynamo-style approach to quorum consistency for read and write operations.
In contrast to the full-text indexing of EFK, loki only indexes metadata (labels) and makes these into compressed chunks, which are stored in object stores like S3 or GCS. The index and chunks are then read and queried by the two services that need access to the Loki data: ingestor and querier.
The core components of Loki are distributor, ingestor, and querier. Distributor sends the logs to ingestor, which then encapsulates them into a compressed form and flushes them out as “chunks.” Querier handles the read path by reading the chunks from the object store and scanning the index for matching labels.