![]() |
VOOZH | about |
dotnet add package OutWit.Common.Logging.Loki --version 2.0.0
NuGet\Install-Package OutWit.Common.Logging.Loki -Version 2.0.0
<PackageReference Include="OutWit.Common.Logging.Loki" Version="2.0.0" />
<PackageVersion Include="OutWit.Common.Logging.Loki" Version="2.0.0" />Directory.Packages.props
<PackageReference Include="OutWit.Common.Logging.Loki" />Project file
paket add OutWit.Common.Logging.Loki --version 2.0.0
#r "nuget: OutWit.Common.Logging.Loki, 2.0.0"
#:package OutWit.Common.Logging.Loki@2.0.0
#addin nuget:?package=OutWit.Common.Logging.Loki&version=2.0.0Install as a Cake Addin
#tool nuget:?package=OutWit.Common.Logging.Loki&version=2.0.0Install as a Cake Tool
Grafana Loki backend for .
LokiHttpClient — typed HttpClient over /loki/api/v1/*. Handles basic auth and the X-Scope-OrgID multi-tenancy header.LokiOptions — BaseUrl, TenantId, basic-auth creds, DefaultLabels (always applied as stream selectors), MaxResultLimit, MaxRange.LokiLogQueryProvider : ILogQueryProvider — translates LogQuery to LogQL via LogQL/LogQlBuilder, parses the streams / matrix responses back to LogEntry and LogStatistics.Response/* — JSON DTOs.| Neutral query | LogQL output |
|---|---|
DefaultLabels = { service_name = "WitIdentity" } |
{service_name="WitIdentity"} |
LogFilter on stream label (service.name, level, …) |
folded into the stream selector |
LogFilter on JSON attribute |
... \| json \| attr op "value" |
FullTextSearch = "passkey" |
... \|~ "passkey" |
From..To |
start=<unix-ns>&end=<unix-ns> |
PageSize |
&limit=N (capped to LokiOptions.MaxResultLimit) |
SortOrder |
&direction=forward|backward |
For GetStatisticsAsync, the provider issues sum by (level) (count_over_time({...} | json [range])) and aggregates per-level counts (Trace/Debug → DebugCount; Error/Critical/Fatal → ErrorCount).
| Method | Behavior |
|---|---|
FindOffsetAsync |
Loki has no row-offset concept — returns -1. UI callers should narrow the time window instead. |
GetStorageInfoAsync |
Loki's HTTP API doesn't expose ingestion volume. Returns an all-null LogStorageInfo. Operators wanting quota data should integrate with the Loki admin metrics endpoint or Prometheus directly. |
GetDistinctValuesAsync |
Backed by /loki/api/v1/label/{name}/values — works for stream labels (cheap) but not for arbitrary JSON-body attributes. |
services.AddSingleton(new LokiOptions
{
BaseUrl = "http://loki:3100",
DefaultLabels = new Dictionary<string, string> { ["service_name"] = "WitIdentity" }
});
services.AddHttpClient<LokiHttpClient>();
services.AddSingleton<ILogQueryProvider, LokiLogQueryProvider>();
Apache 2.0 — see LICENSE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 is compatible. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on OutWit.Common.Logging.Loki:
| Package | Downloads |
|---|---|
|
OutWit.Shared.Logging.Provider.Loki
Grafana Loki log provider plugin for OutWit hosts. Thin wrapper over OutWit.Common.Logging.Loki — registers an ILogQueryProvider that translates neutral LogQuery requests into LogQL and dispatches them against /loki/api/v1/*. Drop into the host's @Logging folder and set Logging__ProviderKey=Loki. |
This package is not used by any popular GitHub repositories.