Zum Inhalt

SQL-Explorer

MitLogfirekönnen Sie beliebige SQL-Abfragen für Tracking-und Metrikdaten über die Discovery-Seite ausführen, um Ihr System zu analysieren und zu untersuchen.

Vergrößern Logfire Explorer Screen

Nachfragen folgen

Die Haupttabelle, die Sie abfragen werden, ist die 记录-Tabelle, die alle Spannweiten/Protokolle der von Ihnen verfolgten Anforderungen enthält.

Um die Aufzeichnungen zu finden, muss man sie nur benutzen. SELECT ...FROM 记录 und hinzufügen WHERE Die Bedingungen werden verwendet, um die erforderliche Spanne zu filtern.

Im Folgenden finden Sie beispielsweise eine Abfrage, die alle Spannweiten der Nachricht, start_timestamp, Dauer und Eigenschaften mit einer Ausnahme zurückgibt:

SELECT
  message,
  start_timestamp,
  EXTRACT(EPOCH FROM (end_timestamp - start_timestamp)) * 1000 AS duration_ms,
  attributes
FROM records
WHERE is_exception

Sie können auch Teilabfragen, CTE, Joins, Aggregate, benutzerdefinierte Ausdrücke und jedes andere Standard-SQL verwenden, um komplexere Abfragen auszuführen.

Aufzeichnungsstruktur

记录 Die Struktur der Tabelle ist:

CREATE TABLE records AS (
    start_timestamp timestamp with time zone,
    created_at timestamp with time zone,
    trace_id text,
    span_id text,
    parent_span_id text,
    kind span_kind,
    end_timestamp timestamp with time zone,
    level smallint,
    span_name text,
    message text,
    attributes_json_schema text,
    attributes jsonb,
    tags text[],
    otel_links jsonb,
    otel_events jsonb,
    is_exception boolean,
    otel_status_code status_code,
    otel_status_message text,
    otel_scope_name text,
    otel_scope_version text,
    otel_scope_attributes jsonb,
    service_namespace text,
    service_name text,
    service_version text,
    service_instance_id text,
    process_pid integer
)

Cross-Linking in Echtzeit

Nachdem Sie die Abfrage ausgeführt haben, können Sie beliebige trace_id und/oder span_id abrufen und damit Daten finden, die in der Live-Ansicht als Spuren angezeigt werden.

Gehen Sie einfach zur Live-Ansicht und geben Sie die folgende Abfrage ein:

trace_id ='7bda3ddf6e6d4a0c8386093209eb0bfc'--Ersetzt durch deine eigene echte trace_id

Dadurch werden alle Span angezeigt, die diese bestimmte Tracking-ID haben.

Die Indikator-Struktur

Neben der Verfolgung können Sie auch die Metrikdaten mithilfe von 指标 Tabellen abfragen.

metrics Die Struktur der Tabelle ist:

CREATE TABLE metrics AS (
    recorded_timestamp timestamp with time zone,
    metric_name text,
    metric_type text,
    unit text,
    start_timestamp timestamp with time zone,
    aggregation_temporality public.aggregation_temporality,
    is_monotonic boolean,
    metric_description text,
    scalar_value double precision,
    histogram_min double precision,
    histogram_max double precision,
    histogram_count integer,
    histogram_sum double precision,
    exp_histogram_scale integer,
    exp_histogram_zero_count integer,
    exp_histogram_zero_threshold double precision,
    exp_histogram_positive_bucket_counts integer[],
    exp_histogram_positive_bucket_counts_offset integer,
    exp_histogram_negative_bucket_counts integer[],
    exp_histogram_negative_bucket_counts_offset integer,
    histogram_bucket_counts integer[],
    histogram_explicit_bounds double precision[],
    attributes jsonb,
    tags text[],
    otel_scope_name text,
    otel_scope_version text,
    otel_scope_attributes jsonb,
    service_namespace text,
    service_name text,
    service_version text,
    service_instance_id text,
    process_pid integer
)

Sie können Standard-SQL-Abfragemetriken wie Tracking verwenden zum Beispiel:

SELECT *
FROM metrics
WHERE metric_name = 'system.cpu.time'
  AND recorded_timestamp > now() - interval '1 hour'

Durchführung von Ermittlungen

Um eine Abfrage auszuführen, geben Sie sie in den Abfrage-Editor ein oder fügen Sie sie ein, und klicken Sie dann auf die Schaltfläche "Abfrage ausführen".

Vergrößern Logfire Explorer Screen

Sie können die Dropdown-Liste neben der Schaltfläche verwenden, um den Zeitrahmen für Ihre Abfrage zu ändern, und es gibt auch eine Dropdown-Liste „ Einschränken ", die die maximale Anzahl der zurückgegebenen Ergebniszeilen steuert.

Die Seite „ Durchsuchen "bietet eine flexible Schnittstelle, über die Traces und Metriken mit Standard-SQL abgefragt werden können.

Viel Spaß bei der Suche!🚀


本文总阅读量次