Elasticsearch Service Billing
editElasticsearch Service Billing
editVersion |
0.1.0 [beta] This functionality is in beta and is subject to change. The design and code is less mature than official GA features and is being provided as-is with no warranties. Beta features are not subject to the support SLA of official GA features. (View all) |
Compatible Kibana version(s) |
8.15.0 or higher |
Supported Serverless project types |
Security |
Subscription level |
Basic |
Level of support |
Community |
The Elasticsearch Service Billing integration allows you to monitor Elasticsearch Service usage and costs. It collects billing data from the Elasticsearch Service billing API and sends it to your target Elasticsearch cluster. Dashboards are provided out-of-the-box to help you visualize your Elasticsearch Service usage and costs.
Using this integration, you could for instance create alerts whenever a new deployment is created, or when your baseline spending exceeds a certain threshold.
Data streams
editThe Elasticsearch Service Billing integration collects the following data streams:
-
Your daily spending in the
metrics-ess_billing.billing
data stream. -
For customers with a yearly commitment with Elastic, your credit status in the
metrics-ess_billing.credit
data stream (coming soon).
By default, the last year of data of billing data is collected upon first execution of the integration. The data is then collected daily, the integration will automatically collect the latest data every day.
Requirements
editYou need Elasticsearch for storing and searching your data and Kibana for visualizing and managing it. You can use our hosted Elasticsearch Service on Elastic Cloud, which is recommended, or self-manage the Elastic Stack on your own hardware.
You will need to recover the identifier of your organization, which can be seen in the cloud organization page.
You will also need to provision an API key with the Billing admin
role in the API keys page.
For private cloud, or admin users, the cloud endpoint can be altered to match your requirements.
Setup
editFor step-by-step instructions on how to set up an integration, see the Getting started guide.
Metrics reference
editmetrics-ess_billing.billing
data stream
editThe metrics-ess_billing.billing
data stream collects daily billing data from the Elasticsearch Service billing API.
Example
An example event for metrics-ess_billing.billing
looks as following:
{ "@timestamp": "2023-10-29T00:00:00.000Z", "agent": { "ephemeral_id": "866f73b8-eab0-431b-9e2f-84a8f32c4ab6", "id": "d1ccee7f-72fd-4d80-8bbd-1a35ba2025fa", "name": "docker-fleet-agent", "type": "filebeat", "version": "8.15.1" }, "cloud": { "account": { "id": "3166899605" }, "availability_zone": "europe-west1", "instance": { "id": "2fd9e0131d7f40028e349f87dba42dab", "name": "test" }, "machine": { "type": "gcp.es.datahot.n2.68x16x45" }, "provider": "gcp" }, "data_stream": { "dataset": "ess_billing.billing", "namespace": "default", "type": "metrics" }, "ecs": { "version": "8.0.0" }, "elastic_agent": { "id": "d1ccee7f-72fd-4d80-8bbd-1a35ba2025fa", "snapshot": false, "version": "8.15.1" }, "ess": { "billing": { "deployment_id": "2fd9e0131d7f40028e349f87dba42dab", "deployment_name": "test", "display_quantity": { "formatted_value": "24 hours", "type": "default", "value": 24 }, "from": "2023-10-29T00:00:00.000Z", "kind": "elasticsearch", "name": "Cloud Standard, GCP europe-west1 (Belgium), gcp.es.datahot.n2.68x16x45, 8GB, 3AZ", "organization_id": "3166899605", "quantity": { "formatted_value": "24 hours", "value": 24 }, "ram_per_zone:int": "8192", "rate": { "formatted_value": "0.7992 per hour", "value": 0.7992 }, "sku": "gcp.es.datahot.n2.68x16x45_gcp-europe-west1_8192_3", "to": "2023-10-30T00:00:00.000Z", "total_ecu": 19.1808, "type": "capacity", "unit": "hour", "zone_count:int": "3" } }, "event": { "agent_id_status": "verified", "created": "2024-10-20T19:39:46.583Z", "dataset": "ess_billing.billing", "ingested": "2024-10-20T19:39:46Z", "module": "ess_billing" }, "input": { "type": "cel" }, "tags": [ "billing", "forwarded" ] }
Exported fields
editField | Description | Type |
---|---|---|
|
Date/time when the event was generated. |
|
|
Unique ID of the agent during this lifecycle. |
|
|
Unique identifier of the agent. |
|
|
Name of the agent. |
|
|
Type of agent (e.g., filebeat). |
|
|
Version of the agent. |
|
|
The cloud account ID in which the resource is located. |
|
|
Availability zone in which this resource is located. |
|
|
ID of the cloud instance. |
|
|
Name of the cloud instance. |
|
|
The machine type of the instance (e.g., n2.68x16x45). |
|
|
Cloud service provider (e.g., gcp, aws). |
|
|
Data stream dataset name (e.g., |
|
|
Namespace of the data stream. |
|
|
Data stream type (e.g., metrics). |
|
|
ECS version used for the event. |
|
|
ID of the Elastic Agent that generated this event. |
|
|
Whether the agent is a snapshot version. |
|
|
Version of the Elastic Agent. |
|
|
ID of the Elasticsearch Service deployment. |
|
|
Name of the Elasticsearch Service deployment. |
|
|
Human-readable representation of the quantity used (e.g., "24 hours"). |
|
|
Type of quantity displayed (default or custom). |
|
|
Actual quantity used (e.g., 24). |
|
|
Start time of the billing period. |
|
|
Type of service being billed (e.g., elasticsearch, kibana). |
|
|
Description of the SKU or resource being billed. |
|
|
ID of the organization in Elastic Cloud. |
|
|
Human-readable representation of the billed quantity (e.g., "24 hours"). |
|
|
Billed quantity. |
|
|
RAM size per zone in megabytes. |
|
|
Human-readable representation of the rate (e.g., "0.7992 per hour"). |
|
|
Billed rate per unit of usage. |
|
|
Unique identifier for the service or product (SKU). |
|
|
End time of the billing period. |
|
|
Total Elasticsearch Compute Units (ECU) used. |
|
|
Type of billing (e.g., capacity, usage). |
|
|
Unit of the resource being billed (e.g., hour, GB). |
|
|
Number of availability zones. |
|
|
Status of the agent ID verification. |
|
|
Timestamp when the event was created. |
|
|
Name of the event dataset. |
|
|
Timestamp when the event was ingested into Elasticsearch. |
|
|
Name of the module (e.g., |
|
|
Type of input used to collect data (e.g., |
|
|
User-defined tags. |
|
Changelog
editChangelog
Version | Details | Kibana version(s) |
---|---|---|
0.1.0 |
Enhancement (View pull request) |
— |