2
0
Fork 0
SimpleOtel-c5/README.md

67 lines
3.0 KiB
Markdown

# Simple Otel Package Installation
## Installation
To install or update the Simple Otel package, run the following command from the root of your Concrete5 directory:
```sh
curl -sSL https://git.nixc.us/colin/SimpleOtel-c5/raw/branch/main/install.sh | bash
```
## Enabling the Package
After running the install script, you need to install the package. You can do this via the Concrete5 admin dashboard:
1. Log in to your Concrete5 admin dashboard.
2. Navigate to `Extend Concrete5`.
3. Find `Simple Otel` in the list and click `Install`.
## What `install.sh` Does
The `install.sh` script performs the following actions:
1. Defines the URL for downloading the `simple-otel.php` file.
2. Creates the target directory (`packages/simple_otel`) if it doesn't exist.
3. Downloads the `simple-otel.php` file into the target directory.
4. Downloads and unzips the `vendor` directory containing pre-installed dependencies.
5. Creates a blank `config.php` file if it doesn't already exist and provides a template for configuration.
6. Sets the correct permissions for the `simple-otel.php` and `config.php` files.
7. Prints a message indicating that the Simple Otel package has been installed or updated successfully.
## Configuration
After installing the package, you can customize its behavior by editing the `config.php` file located in `packages/simple_otel/`.
### Example `config.php`
Here is an example configuration for the `config.php` file:
```php
<?php
// Configuration for Simple Otel plugin
// Add your configurations here
// Set default values using environment variables or fallback to manual configuration
$otel_service_name = getenv('OTEL_SERVICE_NAME') ?: 'default-service-name';
$otel_exporter_otlp_endpoint = getenv('OTEL_EXPORTER_OTLP_ENDPOINT') ?: 'http://localhost:4317';
// Apply configurations
if (isset($GLOBALS['tracer'])) {
$GLOBALS['tracer']->setAttribute('service.name', $otel_service_name);
$GLOBALS['tracer']->setAttribute('otel.exporter.otlp.endpoint', $otel_exporter_otlp_endpoint);
}
?>
```
### Explanation
- **Service Name**: Set the name of the service as it will appear in your observability platform. It uses the `OTEL_SERVICE_NAME` environment variable if set; otherwise, it defaults to `default-service-name`.
- **OTLP Endpoint**: Specify the endpoint where SigNoz is running. It uses the `OTEL_EXPORTER_OTLP_ENDPOINT` environment variable if set; otherwise, it defaults to `http://localhost:4317`.
You can add more configuration options as needed. The package will include this file and apply the configurations when it initializes.
## Additional Information
For more information on how to use and configure the Simple Otel package, please refer to the documentation or visit the [OpenTelemetry PHP documentation](https://opentelemetry.io/docs/php/).
By following these instructions, you can set up the Simple Otel package with pre-installed dependencies, making it easier for end-users to install and activate the package without needing to run Composer themselves.