Sobes.tech
Middle

Πώς μεταφέρουν οι εξαγωγείς τα μετρητικά στοιχεία;

sobes.tech AI

Απάντηση από AI

Οι εξαγωγείς χρησιμοποιούν διάφορα πρωτόκολλα και formats για τη μετάδοση μετρήσεων σε συστήματα παρακολούθησης, όπως Prometheus, Grafana και άλλα. Οι κύριες προσεγγίσεις:

  1. Πρωτόκολλο Prometheus:

    • Ο εξαγωγέας ανοίγει έναν HTTP διακομιστή σε μια συγκεκριμένη θύρα.
    • Το σύστημα παρακολούθησης (π.χ., ένας διακομιστής Prometheus) πραγματοποιεί περιοδικά "scraping" (λήψη) μετρήσεων από αυτόν τον διακομιστή.
    • Η μορφή δεδομένων είναι κειμενική, ειδική για το Prometheus, όπου κάθε γραμμή αντιπροσωπεύει μια μέτρηση με ετικέτες και τιμές.
    # HELP go_gc_duration_seconds Μια περίληψη των διαρκειών παύσεων του συλλέκτη garbage του Go.
    # TYPE go_gc_duration_seconds summary
    go_gc_duration_seconds{quantile="0"} 6.14e-06
    go_gc_duration_seconds{quantile="0.25"} 1.0281e-05
    go_gc_duration_seconds{quantile="0.5"} 1.2357e-05
    
  2. Protobuf μέσω gRPC ή άλλων πλαισίων RPC:

    • Πιο αποδοτική μορφή δεδομένων σε μέγεθος και ανάλυση.
    • Χρησιμοποιείται συχνά σε συστήματα υψηλού φόρτου ή κατά τη μετάδοση δεδομένων μέσω δικτύων με περιορισμένη χωρητικότητα.
    • Απαιτεί τον ορισμό της δομής των μετρήσεων σε αρχεία .proto.
  3. JSON μέσω HTTP API:

    • Διαδεδομένη μορφή που εύκολα αναλύεται από πολλά συστήματα.
    • Ο εξαγωγέας παρέχει ένα API HTTP, μέσω του οποίου μπορούν να ληφθούν μετρήσεις σε μορφή JSON.
    {
      "metrics": [
        {
          "name": "http_requests_total",
          "labels": {
            "method": "GET",
            "status": "200"
          },
          "value": 1024
        }
      ]
    }
    
  4. Πρωτόκολλο OpenTelemetry (OTLP):

    • Τυποποιημένο πρωτόκολλο για τη συλλογή τηλεμετρίας (μετρήσεις, διαδρομές, αρχεία καταγραφής).
    • Υποστηρίζει τη μετάδοση δεδομένων μέσω gRPC ή HTTP.
    • Τα πρωτόκολλα δεδομένων βασίζονται σε Protobuf.
  5. Ιδιωτικά πρωτόκολλα:

    • Ορισμένα συστήματα παρακολούθησης ή agents χρησιμοποιούν τα δικά τους πρωτόκολλα για τη μετάδοση δεδομένων, βελτιστοποιημένα για τις συγκεκριμένες ανάγκες τους.

Η επιλογή πρωτοκόλλου εξαρτάται από το σύστημα παρακολούθησης, τον τύπο του εξαγωγέα, τις απαιτήσεις απόδοσης και ευελιξίας. Η πιο διαδεδομένη προσέγγιση στο οικοσύστημα Prometheus είναι το scraping των μετρήσεων σε μορφή κειμένου μέσω HTTP.