Monitoring
Pinecone generates time-series performance metrics for each Pinecone index. You can monitor these metrics directly in the Pinecone console or with tools like Prometheus or Datadog.
Monitor in the Pinecone Console
To view performance metrics in the Pinesone console:
- Open the Pinecone console.
- Select the project containing the index you want to monitor.
- Go to Database > Indexes.
- Select the index.
- Go to the Metrics tab.
Monitor with Datadog
To monitor Pinecone with Datadog, use Datadog’s Pinecone integration.
This feature is available only on Standard and Enterprise plans.
Monitor with Prometheus
This feature is available only on Standard and Enterprise plans.
Configuration
To monitor all serverless indexes in a project, insert the following snippet into the scrape_configs
section of your prometheus.yml
file and update it with values for your Prometheus integration:
This method uses HTTP service discovery to automatically discover and target all serverless indexes across all regions in a project.
-
Replace
PROJECT_ID
with the unique ID of the project you want to monitor. You can find the project ID in the Pinecone console. -
Replace both instances of
API_KEY
with an API key for the project you want to monitor. The first instance is for service discovery, and the second instance is for the discovered targets. If necessary, you can create an new API key in the Pinecone console.
For more configuration details, see the Prometheus docs.
Available metrics
The following metrics are available when you integrate Pinecone with Prometheus:
Name | Type | Description |
---|---|---|
pinecone_db_record_total | gauge | The total number of records in the index. |
pinecone_db_op_upsert_total | counter | The number of upsert requests made to an index. |
pinecone_db_op_upsert_duration_total | counter | The total time taken processing upsert requests for an index in milliseconds. |
pinecone_db_op_query_total | counter | The number of query requests made to an index. |
pinecone_db_op_query_duration_total | counter | The total time taken processing query requests for an index in milliseconds. |
pinecone_db_op_fetch_total | counter | The number of fetch requests made to an index. |
pinecone_db_op_fetch_duration_total | counter | The total time taken processing fetch requests for an index in milliseconds. |
pinecone_db_op_update_total | counter | The number of update requests made to an index. |
pinecone_db_op_update_duration_total | counter | The total time taken processing update requests for an index in milliseconds. |
pinecone_db_op_delete_total | counter | The number of delete requests made to an index. |
pinecone_db_op_delete_duration_total | counter | The total time taken processing delete requests for an index in milliseconds. |
pinecone_db_write_unit_total | counter | The total number of write units consumed by an index. |
pinecone_db_read_unit_total | counter | The total number of read units consumed by an index. |
pinecone_db_storage_size_bytes | gauge | The total size of the index in bytes. |
Metric labels
Each metric contains the following labels:
Label | Description |
---|---|
index_name | Name of the index to which the metric applies. |
cloud | Cloud where the index is deployed: aws , gcp , or azure . |
region | Region where the index is deployed. |
capacity_mode | Type of index: pod or serverless . |
Example queries
Return the total number of records per index:
Return the total number of records in Pinecone index example-index
:
Return the total number of upsert requests per index:
Return the average processing time in millisconds for upsert requests per index:
Return the total read units consumed per index:
Return the total write units consumed for the Pinecone index example-index
:
Was this page helpful?