Metadata-Version: 2.5
Name: huaweicloud-opentelemetry-instrumentation-pi
Version: 1.0.0
Summary: Huawei Cloud standalone instrumentation for Pi framework (PiCollector + PiNode)
License-Expression: Apache-2.0
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.9
Requires-Dist: grpcio>=1.60.0
Requires-Dist: opentelemetry-api==1.39.1
Requires-Dist: opentelemetry-exporter-otlp==1.39.1
Requires-Dist: opentelemetry-instrumentation==0.60b1
Requires-Dist: opentelemetry-sdk==1.39.1
Requires-Dist: opentelemetry-semantic-conventions-ai>=0.5.0
Requires-Dist: wrapt<2.0.0,>=1.0.0
Description-Content-Type: text/x-rst

Huawei Cloud OpenTelemetry Instrumentation — Pi framework
=========================================================

Standalone OpenTelemetry instrumentation for the Pi framework (Pi Agent /
Pi Coding Agent), reporting to Huawei Cloud AgentArts (APM / AOM). Fully
isolated from the main probe package
(huaweicloud-opentelemetry-instrumentation), so it can be installed and
iterated independently.

It contains two parts:

- ``pi_collector`` (Python): standalone JSONL collector process that reads
  Pi Agent JSONL events and exports OpenTelemetry traces/metrics to
  APM/AOM.
- ``pi_node`` (TypeScript): Pi Agent core / Pi Coding Agent / Pi Common
  instrumented packages, emitting JSONL events consumed by the collector.

Installation
------------

.. code-block:: bash

   pip install huaweicloud-opentelemetry-instrumentation-pi

Quick start
-----------

1. Configure Huawei Cloud AgentArts environment variables (local mode):

.. code-block:: bash

   export agentarts_agentops_otel_agent_apm_enable=true
   export agentarts_agentops_otel_agent_aom_enable=true
   export agent_domain_id=<your-domain-id>
   export agentarts_project_id=<your-project-id>
   export agent_resource_id=<your-agent-id>
   export resource_type=agent
   export agentarts_agentops_apm_token=<your-apm-token>
   export agentarts_agentops_apm_exporter_endpoint=<apm-endpoint>
   export agentarts_agentops_aom_access_code=<your-aom-access-code>
   export agentarts_agentops_aom_exporter_endpoint=<aom-endpoint>
   export agentarts_agentops_aom_prometheus_id=<your-prometheus-id>

2. Start the Pi agent (pi_node emits JSONL events to ``PI_JSONL_DIR``),
   then start the collector:

.. code-block:: bash

   pi-collector --input-dir "$PI_JSONL_DIR" --exporter otlp
