> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> حزمة Java SDK لـ ClickStack - حزمة الرصد من ClickHouse

# Java

export const ClickStackIntegrates = ({signals = []}) => {
  const list = Array.isArray(signals) ? signals : String(signals).split(",");
  const supported = list.map(s => String(s).trim().toLowerCase());
  const pillStyle = {
    display: "inline-flex",
    alignItems: "center",
    padding: "0.125rem 0.625rem",
    borderRadius: "9999px",
    fontSize: "0.8125rem",
    fontWeight: 500,
    lineHeight: 1.6,
    color: "#161517",
    backgroundColor: "#faff69",
    border: "1px solid rgba(0, 0, 0, .1)",
    marginRight: "0.5rem"
  };
  return <div style={{
    margin: "0 0 1.25rem"
  }}>
      <span style={{
    marginRight: "0.5rem"
  }}>يتكامل هذا الدليل مع:</span>
      {supported.includes("logs") && <span style={pillStyle}>السجلات</span>}
      {supported.includes("metrics") && <span style={pillStyle}>المقاييس</span>}
      {supported.includes("traces") && <span style={pillStyle}>التتبعات</span>}
    </div>;
};

يستخدم ClickStack معيار OpenTelemetry لجمع بيانات القياس عن بُعد (السجلات
والتتبعات). وتُنشأ التتبعات تلقائيًا باستخدام instrumentation التلقائي، لذا لا
تحتاج إلى instrumentation يدوي للاستفادة من التتبع.

<ClickStackIntegrates signals={['logs', 'metrics', 'traces']} />

<h2 id="getting-started">
  البدء
</h2>

<Note>
  حاليًا، هذا التكامل متوافق فقط مع **Java 8+**
</Note>

<h3 id="download-opentelemetry-java-agent">
  تنزيل OpenTelemetry Java agent
</h3>

نزّل [`opentelemetry-javaagent.jar`](https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar)
وضع ملف JAR في الدليل الذي تفضّله. يحتوي ملف JAR على الوكيل
ومكتبات instrumentation. ويمكنك أيضًا استخدام الأمر التالي
لتنزيل الوكيل:

```shell theme={null}
curl -L -O https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar
```

<h3 id="configure-environment-variables">
  اضبط متغيرات البيئة
</h3>

بعد ذلك، ستحتاج إلى ضبط متغيرات البيئة التالية في shell لديك لإرسال بيانات القياس عن بُعد إلى ClickStack عبر OpenTelemetry Collector:

<Tabs>
  <Tab title="Managed ClickStack">
    ```shell theme={null}
    export JAVA_TOOL_OPTIONS="-javaagent:PATH/TO/opentelemetry-javaagent.jar" \
    OTEL_EXPORTER_OTLP_ENDPOINT=<YOUR_OTEL_COLLECTOR_HTTP_ENDPOINT> \
    OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
    OTEL_LOGS_EXPORTER=otlp \
    OTEL_SERVICE_NAME='<YOUR_SERVICE_NAME>'
    ```
  </Tab>

  <Tab title="ClickStack Open Source">
    ```shell theme={null}
    export JAVA_TOOL_OPTIONS="-javaagent:PATH/TO/opentelemetry-javaagent.jar" \
    OTEL_EXPORTER_OTLP_ENDPOINT=<YOUR_OTEL_COLLECTOR_HTTP_ENDPOINT> \
    OTEL_EXPORTER_OTLP_HEADERS='authorization=<YOUR_INGESTION_API_KEY>' \
    OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
    OTEL_LOGS_EXPORTER=otlp \
    OTEL_SERVICE_NAME='<YOUR_SERVICE_NAME>'
    ```
  </Tab>
</Tabs>

*يُستخدم متغير البيئة `OTEL_SERVICE_NAME` للتعريف بخدمتك في تطبيق HyperDX، ويمكن أن يكون أي اسم تريده.*

يحتوي متغير البيئة `OTEL_EXPORTER_OTLP_HEADERS` على مفتاح API المتاح عبر تطبيق HyperDX ضمن `Team Settings → API Keys`.

<h3 id="run-the-application-with-otel-java-agent">
  شغّل التطبيق باستخدام OpenTelemetry Java agent
</h3>

```shell theme={null}
java -jar target/<APPLICATION_JAR_FILE>
```

<br />

اقرأ المزيد عن instrumentation في Java لـ OpenTelemetry هنا: [https://opentelemetry.io/docs/instrumentation/java/](https://opentelemetry.io/docs/instrumentation/java/)
