Sobes.tech
Junior

Jak ustawiać wykresy na panelu Grafana?

sobes.tech AI

Odpowiedź od AI

Istnieje kilka sposobów:

  1. Edytor wizualny: W trybie edycji panelu wybierz typ wizualizacji "Graph". W zakładce Query dodaj źródła danych (np. Prometheus, InfluxDB). W zakładce "Graph" skonfiguruj wygląd: osie, legendę, zakres czasowy.

    // Przykład konfiguracji osi Y
    // Ustaw minimalną i maksymalną wartość
    // Jednostka: bytes, s, requests, itp.
    // Etykieta: Nazwa osi
    
  2. PromQL (dla Prometheus): Użyj języka zapytań Prometheus do pobierania danych i tworzenia wykresów.

    // Przykład zapytania: średnie obciążenie CPU w ostatnich 5 minutach
    avg(rate(node_cpu_seconds_total{mode="idle"}[5m]))
    
  3. InfluxQL (dla InfluxDB): Język zapytań dla InfluxDB.

    -- Przykład zapytania: średnia wartość metryki memory_usage za ostatnią godzinę, grupowana po host i device
    SELECT mean("memory_usage") FROM "telegraf"."autogen"."mem" WHERE time >= now() - 1h GROUP BY time(1m), "host", "device" fill(none)
    
  4. Jsonnet/Dashboard Grafana jako kod: Opis panelu i wykresów w pliku konfiguracyjnym. Umożliwia wersjonowanie paneli i automatyzację ich tworzenia.

    // Przykład definicji wykresu w Jsonnet
    {
      title: 'CPU Usage',
      type: 'graph',
      lines: true,
      targets: [
        {
          expr: '100 - avg(rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100',
          legendFormat: 'CPU Busy',
          refId: 'A',
        },
      ],
      fieldConfig: {
        defaults: {
          unit: 'percent',
        },
      },
    }
    

Edycja ustawień wizualnych odbywa się przez zakładkę "Graph" lub "Visualization", w zależności od typu wykresu i wersji Grafana. Konfigurujemy tutaj kolory, style linii, wyświetlanie punktów, obszar wykresu, podpowiedzi i inne elementy.

Ważne aspekty to wybór odpowiedniego zakresu czasowego (Time range), częstotliwość odświeżania danych (Refresh interval) oraz użycie funkcji agregacji (avg, sum, rate itp.) do przetwarzania danych z źródeł.