# Using instrumentation libraries

LLMS index: [llms.txt](/llms.txt)

---


当你开发应用时，可能会使用第三方库和框架来加快开发进度。如果你随后使用 OpenTelemetry
对应用进行插桩，你可能希望避免额外花时间为所用的第三方库和框架手动添加链路、日志和指标。

许多库和框架已经原生支持 OpenTelemetry，或者通过 OpenTelemetry
的[插桩](/docs/concepts/instrumentation/libraries/)获得支持，
因此它们能够生成可导出到可观测性后端的遥测数据。

如果你正在为使用第三方库或框架的应用或服务进行插桩，
请按照以下说明学习如何为你的依赖项使用原生插桩库和插桩库。

## 使用原生插桩库 {#use-natively-instrumented-libraries}

如果某个库默认就支持 OpenTelemetry，你只需在应用中添加并配置 OpenTelemetry SDK，
就可以获取该库发出的链路、指标和日志。

该库可能需要一些额外的插桩配置。请查阅该库的文档以了解更多信息。
{{__hugo_ctx/}}






<div class="alert alert-secondary" role="alert"><div class="h4 alert-heading" role="heading">需要帮助！</div>



截至目前，我们还不知道有任何 PHP 库已原生集成 OpenTelemetry。
如果你知道这样的库，[请告诉我们][let us know]。

</div>






[let us know]: https://github.com/open-telemetry/opentelemetry.io/issues/new/choose
{{__hugo_ctx/}}



## Use instrumentation libraries

If a library doesn't include OpenTelemetry support, you can use
[instrumentation libraries](/docs/specs/otel/glossary/#instrumentation-library)
to generate telemetry data for a library or framework.

The OpenTelemetry PHP extension includes instrumentation libraries for many
common PHP frameworks. For example,
[the Laravel instrumentation](https://github.com/open-telemetry/opentelemetry-php-contrib/tree/main/src/Instrumentation/Laravel)
automatically creates [spans](/docs/concepts/signals/traces/#spans) based on the
application activity.

## Setup

Each instrumentation library is a Composer package. To install it, run the
following command:

```sh
php composer.phar install {name-of-instrumentation}:{version-number}
```

Where `{name-of-instrumentation}` is the Packagist reference for the specific
instrumentation you want to use.

You can turn off any instrumentation by adding its identifier to the
`OTEL_PHP_DISABLED_INSTRUMENTATIONS` environment variable.

## Available instrumentation libraries

For a list of available instrumentations, see
[OpenTelemetry instrumentation libraries](https://packagist.org/search/?query=open-telemetry&tags=instrumentation)
on Packagist.

## Next steps

After you've set up instrumentation libraries, you might want to add
[additional instrumentation](/docs/languages/php/instrumentation) to collect
custom telemetry data.

You might also want to configure an appropriate exporter to
[export your telemetry data](/docs/languages/php/exporters) to one or more
telemetry backends.
