Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jjatria/mojolicious-plugin-opentelemetry
https://github.com/jjatria/mojolicious-plugin-opentelemetry
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/jjatria/mojolicious-plugin-opentelemetry
- Owner: jjatria
- License: other
- Created: 2023-12-03T15:10:04.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-05-09T17:00:40.000Z (6 months ago)
- Last Synced: 2024-05-10T15:15:50.594Z (6 months ago)
- Language: Perl
- Size: 36.1 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: Changes
- License: LICENSE
Awesome Lists containing this project
README
# OpenTelemetry for Mojolicious
[![Coverage Status]][coveralls]
This is part of an ongoing attempt at implementing the OpenTelemetry
standard in Perl. The distribution in this repository implements a
plugin for the [Mojolicious] web-framework, to generate and capture
telemetry data using the OpenTelemetry [API].## What is OpenTelemetry?
OpenTelemetry is an open source observability framework, providing a
general-purpose API, SDK, and related tools required for the instrumentation
of cloud-native software, frameworks, and libraries.OpenTelemetry provides a single set of APIs, libraries, agents, and collector
services to capture distributed traces and metrics from your application. You
can analyze them using Prometheus, Jaeger, and other observability tools.## How does this distribution fit in?
This distribution allows authors of [Mojolicious] applications to generate
telemetry data from their applications with minimal changes. In keeping with
the API / SDK separation described above, this plugin does not itself collect
or export this telemetry data. For that you will need to wire in the [SDK], for
which the best place to start is [that distribution's documentation][sdk].## How do I get started?
Install this distribution from CPAN:
```
cpanm Mojolicious::Plugin::OpenTelemetry
```
or directly from the repository if you want to install a development
version (although note that only the CPAN version is recommended for
production environments):
```
# On a local fork
cd path/to/this/repo
cpanm install .# Over the net
cpanm https://github.com/jjatria/mojolicious-plugin-opentelemetry.git
```Then, enable the plugin in your [Mojolicious] application. Remember to use the
SDK to be able to use this telemetry data.``` perl
use Mojolicious::Lite -signatures;plugin 'OpenTelemetry';
# Requests to this will automatically generate telemetry data
get '/' => { text => 'OK' };
```## How can I get involved?
We are in the process of setting up an OpenTelemetry-Perl special interest
group (SIG). Until that is set up, you are free to [express your
interest][sig] or join us in IRC on the #io-async channel in irc.perl.org.## License
This distribution is licensed under the same terms as Perl itself. See
[LICENSE] for more information.[mojolicious]: https://mojolicious.org/
[sdk]: https://github.com/jjatria/perl-opentelemetry-sdk
[api]: https://github.com/jjatria/perl-opentelemetry
[coveralls]: https://coveralls.io/github/jjatria/mojolicious-plugin-opentelemetry?branch=main
[license]: https://github.com/jjatria/mojolicious-plugin-opentelemetry/blob/main/LICENSE
[sig]: https://github.com/open-telemetry/community/issues/828