Skip to content

Commit

Permalink
[exporter/bmchelix] New component: BMC Helix Exporter
Browse files Browse the repository at this point in the history
* Apply suggestions from code review

Co-authored-by: Bertrand Martin <[email protected]>
  • Loading branch information
NassimBtk and bertysentry authored Jan 2, 2025
1 parent 9910f82 commit 6c4866e
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions exporter/bmchelixexporter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@
[development]: https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/component-stability.md#development
<!-- end autogenerated section -->

This exporter supports sending metrics to BMC Helix Operation Management.
This exporter supports sending metrics to [BMC Helix Operations Management](https://www.bmc.com/it-solutions/bmc-helix-operations-management.html) through its [metric ingestion REST API](https://docs.bmc.com/docs/helixoperationsmanagement/244/en/metric-operation-management-endpoints-in-the-rest-api-1392780044.html).

## Getting Started

The following settings are **required**:

- `endpoint`: is the URL of your BMC Helix environment, at **onbmc.com** (e.g., `https://company.onbmc.com`).
- `api_key`: API key to authenticate the exporter. Connect to BMC Helix Operations Management, go to the Administration > Repository page, and click on the Copy API Key button to get your API Key.
- `endpoint`: is the *BMC Helix Portal URL* of your environment, at **onbmc.com** for a BMC Helix SaaS tenant (e.g., `https://company.onbmc.com`), or your own Helix Portal URL for an on-prem instance.
- `api_key`: API key to authenticate the exporter. Connect to BMC Helix Operations Management, go to the Administration > Repository page, and click on the Copy API Key button to get your API Key. Alternatively, it is recommended to create and use a dedicated [authentication key for external integration](https://docs.bmc.com/docs/helixportal244/using-api-keys-for-external-integrations-1391501992.html).

Example:

Expand Down Expand Up @@ -67,13 +67,17 @@ To ensure resource attributes (e.g., `host.name`) are available for all metrics,

## Setting Required Attributes for Metrics

To ensure metrics are correctly populated in BMC Helix, the following attributes must be set:
To ensure metrics are correctly populated in BMC Helix, the following attributes must be set either at the *Resource* level, or at the *Metric* level:

- `entityName`: Unique identifier for the entity. Used as display name if `instanceName` is missing.
- `entityTypeId`: Type identifier for the entity.
- `instanceName`: Display name of the entity.

> **Note:** If `entityName` or `entityTypeId` is missing, the metric will not be populated.
> **Note:** If `entityName` or `entityTypeId` is missing, the metric will not be exported.

To ensure the necessary attributes are present, it is recommended to leverage the [transform processor](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/transformprocessor) with [OTTL](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/pkg/ottl), and include it in the configuration of the telemetry pipeline.

The minimal pipeline most often looks like: `OTEL metrics --> (batch/memory limit) --> transform processor --> bmchelix exporter`.

### Transformer Example for Hardware Metrics

Expand Down

0 comments on commit 6c4866e

Please sign in to comment.