الانتقال إلى المحتوى الرئيسي
تُستقبل جميع البيانات في ClickStack عبر مثيل OpenTelemetry (OTel) collector، الذي يعمل كنقطة الدخول الأساسية للسجلات والمقاييس والتتبعات وبيانات الجلسات. نوصي باستخدام توزيعة ClickStack الرسمية من الـ collector لهذا المثيل.
تتوفر أيضًا نسخة مُدارة من ClickStack — راجع Managed ClickStack.
يرسل المستخدمون البيانات إلى هذا الـ collector من خلال language SDKs أو عبر وكلاء جمع البيانات الذين يجمعون مقاييس البنية التحتية والسجلات (مثل OTel collectors التي تعمل بدور agent، أو تقنيات أخرى مثل Fluentd أو Vector). أما الفرق التي تريد pipeline مُدارة لـ OpenTelemetry، فإن Bindplane يوفر حلًا أصليًا لـ OpenTelemetry مع وجهة ClickStack أصلية، مما يبسّط جمع بيانات telemetry ومعالجتها وتوجيهها.

إرسال بيانات OpenTelemetry

تثبيت ClickStack OpenTelemetry collector

لإرسال البيانات إلى Managed ClickStack، يجب نشر OTel collector في دور gateway. سترسل أدوات instrumentation المتوافقة مع OTel الأحداث إلى هذا الـ OTel collector عبر OTLP باستخدام HTTP أو gRPC.
نوصي باستخدام ClickStack OpenTelemetry collectorيتيح لك ذلك الاستفادة من إدخال بيانات موحّد، وschemas موحّدة ومفروضة، وتوافق جاهز مع ClickStack UI ‏(HyperDX). كما يتيح استخدام schema الافتراضي الاكتشاف التلقائي للمصادر وعمليات تعيين الأعمدة المُعدّة مسبقًا.
لمزيد من التفاصيل، راجع “نشر الـ collector”.

إرسال البيانات إلى الـ collector

لإرسال البيانات إلى Managed ClickStack، وجّه أدوات OpenTelemetry instrumentation إلى نقاط النهاية التالية التي يوفّرها OpenTelemetry Collector:
  • HTTP (OTLP): http://localhost:4318
  • gRPC (OTLP): localhost:4317
بالنسبة إلى language SDKs ومكتبات telemetry التي تدعم OpenTelemetry، يمكنك ببساطة تعيين متغير البيئة OTEL_EXPORTER_OTLP_ENDPOINT في تطبيقك:
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
إذا كنت تنشر توزيعة contrib من OTel collector بدور agent، فيمكنك استخدام OTLP exporter للإرسال إلى ClickStack collector. فيما يلي مثال على إعداد agent يستهلك ملف السجل المهيكل هذا.
# clickhouse-agent-config.yaml
receivers:
  filelog:
    include:
      - /opt/data/logs/access-structured.log
    start_at: beginning
    operators:
      - type: json_parser
        timestamp:
          parse_from: attributes.time_local
          layout: '%Y-%m-%d %H:%M:%S'
exporters:
  # HTTP setup
  otlphttp/hdx:
    endpoint: 'http://localhost:4318'
    compression: gzip
 
  # gRPC setup (alternative)
  otlp/hdx:
    endpoint: 'localhost:4317'
    compression: gzip
processors:
  batch:
    timeout: 5s
    send_batch_size: 10000
service:
  telemetry:
    metrics:
      address: 0.0.0.0:9888 # Modified as 2 collectors running on same host
  pipelines:
    logs:
      receivers: [filelog]
      processors: [batch]
      exporters: [otlphttp/hdx]
آخر تعديل في ٢٥ يونيو ٢٠٢٦