diff --git a/dashboards/hcp-vault/hcp-vault.json b/dashboards/hcp-vault/hcp-vault.json
new file mode 100644
index 0000000000..bfc66b7a5b
--- /dev/null
+++ b/dashboards/hcp-vault/hcp-vault.json
@@ -0,0 +1,812 @@
+{
+ "name": "HCP Vault",
+ "description": null,
+ "pages": [
+ {
+ "name": "Overview",
+ "description": null,
+ "widgets": [
+ {
+ "title": "",
+ "layout": {
+ "column": 1,
+ "row": 1,
+ "width": 1,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.markdown"
+ },
+ "rawConfiguration": {
+ "text": "\n\n![New Rellog](https://www.datocms-assets.com/2885/1696356781-vault_verticallogo_black_rgb.svg)\n\n"
+ }
+ },
+ {
+ "title": "",
+ "layout": {
+ "column": 2,
+ "row": 1,
+ "width": 11,
+ "height": 1
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.markdown"
+ },
+ "rawConfiguration": {
+ "text": "# HCP Vault Metrics Overview"
+ }
+ },
+ {
+ "title": "Vault core Unsealed (1=true)",
+ "layout": {
+ "column": 2,
+ "row": 2,
+ "width": 2,
+ "height": 2
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.billboard"
+ },
+ "rawConfiguration": {
+ "dataFormatters": [
+ {
+ "name": "vault_core_unsealed",
+ "type": null
+ }
+ ],
+ "facet": {
+ "showOtherSeries": false
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT latest(vault_core_unsealed) WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}})"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "thresholds": [
+ {
+ "alertSeverity": "WARNING",
+ "value": 0
+ },
+ {
+ "alertSeverity": "CRITICAL",
+ "value": -1
+ }
+ ]
+ }
+ },
+ {
+ "title": "Number of Identity Entities",
+ "layout": {
+ "column": 4,
+ "row": 2,
+ "width": 4,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.stacked-bar"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT average(vault_identity_num_entities) TIMESERIES 5 minutes SINCE 1 hour ago WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}})"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Login request duration",
+ "layout": {
+ "column": 8,
+ "row": 2,
+ "width": 5,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT average(vault_core_handle_login_request) AS 'ms' TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Leases set to expire",
+ "layout": {
+ "column": 1,
+ "row": 4,
+ "width": 3,
+ "height": 2
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.billboard"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT latest(vault_expire_num_leases) as 'leases' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}})"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Policy get",
+ "layout": {
+ "column": 4,
+ "row": 5,
+ "width": 4,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT rate(sum(vault_policy_get_policy_count), 1 minute) as 'Gets per minute' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 5 minutes SINCE 1 hour ago "
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Policy set",
+ "layout": {
+ "column": 8,
+ "row": 5,
+ "width": 5,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT rate(sum(vault_policy_set_policy_count), 1 minute) as 'Sets per minute' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Secret Count",
+ "layout": {
+ "column": 1,
+ "row": 6,
+ "width": 3,
+ "height": 2
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.billboard"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT max(vault_secret_kv_count) as 'Secrets' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "",
+ "layout": {
+ "column": 1,
+ "row": 8,
+ "width": 12,
+ "height": 1
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.markdown"
+ },
+ "rawConfiguration": {
+ "text": "# Runtime metrics"
+ }
+ },
+ {
+ "title": "Total Go routines",
+ "layout": {
+ "column": 1,
+ "row": 9,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.area"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT average(vault_runtime_num_goroutines) as 'Go routines' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 1 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Allocated MB",
+ "layout": {
+ "column": 7,
+ "row": 9,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.area"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT average(vault_runtime_alloc_bytes)/1e+6 as 'MB' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Heap Objects used",
+ "layout": {
+ "column": 1,
+ "row": 12,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.area"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average((`__result_0` / `__result_1`)) as 'Heap objects used' FROM (SELECT latest(vault_runtime_heap_objects) AS `__result_0`, latest(vault_runtime_malloc_count) AS `__result_1` FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) FACET dimensions() LIMIT max TIMESERIES 2 minutes) SINCE 60 MINUTES AGO UNTIL NOW TIMESERIES 2 minutes"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Count of object on the heap",
+ "layout": {
+ "column": 7,
+ "row": 12,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.area"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT sum(vault_runtime_heap_objects) WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago UNTIL Now"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "",
+ "layout": {
+ "column": 1,
+ "row": 15,
+ "width": 12,
+ "height": 1
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.markdown"
+ },
+ "rawConfiguration": {
+ "text": "# Token related metrics"
+ }
+ },
+ {
+ "title": "Available token count",
+ "layout": {
+ "column": 1,
+ "row": 16,
+ "width": 3,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.billboard"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "FROM Metric SELECT latest(vault_token_count) as 'Tokens' WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}})"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Tokens by auth method",
+ "layout": {
+ "column": 4,
+ "row": 16,
+ "width": 3,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.stacked-bar"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_token_count_by_auth) FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) FACET auth_method TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Tokens by ttl Method",
+ "layout": {
+ "column": 7,
+ "row": 16,
+ "width": 3,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.stacked-bar"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_token_count_by_ttl) FROM Metric FACET creation_ttl WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Tokens by policy",
+ "layout": {
+ "column": 10,
+ "row": 16,
+ "width": 3,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.stacked-bar"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_token_count_by_policy) FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) FACET policy TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ }
+ }
+ },
+ {
+ "title": "Token creation/storage",
+ "layout": {
+ "column": 1,
+ "row": 19,
+ "width": 4,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_token_create) as 'create' FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago UNTIL now"
+ },
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_token_store) as 'store' FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago UNTIL now"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": false
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Token lookups",
+ "layout": {
+ "column": 5,
+ "row": 19,
+ "width": 4,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT rate(sum(vault_token_lookup_count), 1 minute) as 'Lookups per minute' FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) TIMESERIES 2 minutes SINCE 1 hour ago"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": false
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Renew/Revoke time (in ms)",
+ "layout": {
+ "column": 9,
+ "row": 19,
+ "width": 4,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_expire_revoke) as 'Revoke ms' FROM Metric WHERE project_id IN ({{vault_project}}) AND cluster_id IN ({{vault_cluster}}) SINCE 1 hour ago TIMESERIES 2 minutes"
+ },
+ {
+ "accountIds": [],
+ "query": "SELECT average(vault_expire_renew) as 'Renew ms' FROM Metric SINCE 1 hour ago TIMESERIES 5 minutes"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "",
+ "layout": {
+ "column": 1,
+ "row": 22,
+ "width": 12,
+ "height": 1
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.markdown"
+ },
+ "rawConfiguration": {
+ "text": "# Audit Logs"
+ }
+ },
+ {
+ "title": "Audit Log rate per minute",
+ "layout": {
+ "column": 1,
+ "row": 23,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT rate(count(*), 1 minute) as 'Logs per minute' FROM Log WHERE hcp_product = 'vault' TIMESERIES 5 minutes UNTIL now"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ },
+ {
+ "title": "Error logs (response/request)",
+ "layout": {
+ "column": 7,
+ "row": 23,
+ "width": 6,
+ "height": 3
+ },
+ "linkedEntityGuids": null,
+ "visualization": {
+ "id": "viz.line"
+ },
+ "rawConfiguration": {
+ "facet": {
+ "showOtherSeries": false
+ },
+ "legend": {
+ "enabled": true
+ },
+ "nrqlQueries": [
+ {
+ "accountIds": [],
+ "query": "SELECT count(*) as 'Response Log Errors' FROM Log WHERE response.data.error IS NOT NULL AND hcp_product='vault' TIMESERIES 5 minutes SINCE 1 hour ago UNTIL NOW"
+ },
+ {
+ "accountIds": [],
+ "query": "SELECT count(*) as 'Request Log Errors' FROM Log WHERE request.data.error IS NOT NULL AND hcp_product='vault' TIMESERIES 5 minutes SINCE 1 hour ago UNTIL NOW"
+ }
+ ],
+ "platformOptions": {
+ "ignoreTimeRange": false
+ },
+ "yAxisLeft": {
+ "zero": true
+ },
+ "yAxisRight": {
+ "zero": true
+ }
+ }
+ }
+ ]
+ }
+ ],
+ "variables": [
+ {
+ "name": "vault_cluster",
+ "items": null,
+ "defaultValues": [
+ {
+ "value": {
+ "string": "*"
+ }
+ },
+ {
+ "value": {
+ "string": "vault-cluster"
+ }
+ }
+ ],
+ "nrqlQuery": {
+ "accountIds": [],
+ "query": "SELECT uniques(cluster_id) FROM Metric WHERE hcp_product='vault'"
+ },
+ "options": {
+ "ignoreTimeRange": true
+ },
+ "title": "Cluster Id",
+ "type": "NRQL",
+ "isMultiSelection": true,
+ "replacementStrategy": "STRING"
+ },
+ {
+ "name": "vault_project",
+ "items": null,
+ "defaultValues": [
+ {
+ "value": {
+ "string": "*"
+ }
+ },
+ {
+ "value": {
+ "string": "d8ff14cb-a4ca-4666-8fdb-6f26b8d3a3d9"
+ }
+ }
+ ],
+ "nrqlQuery": {
+ "accountIds": [],
+ "query": "SELECT uniques(project_id) FROM Metric WHERE hcp_product='vault'"
+ },
+ "options": {
+ "ignoreTimeRange": true
+ },
+ "title": "Project Id",
+ "type": "NRQL",
+ "isMultiSelection": true,
+ "replacementStrategy": "STRING"
+ }
+ ]
+ }
\ No newline at end of file
diff --git a/dashboards/hcp-vault/hcp-vault01.png b/dashboards/hcp-vault/hcp-vault01.png
new file mode 100644
index 0000000000..141c9c4406
Binary files /dev/null and b/dashboards/hcp-vault/hcp-vault01.png differ
diff --git a/dashboards/hcp-vault/hcp-vault02.png b/dashboards/hcp-vault/hcp-vault02.png
new file mode 100644
index 0000000000..611b50302e
Binary files /dev/null and b/dashboards/hcp-vault/hcp-vault02.png differ
diff --git a/dashboards/hcp-vault/hcp-vault03.png b/dashboards/hcp-vault/hcp-vault03.png
new file mode 100644
index 0000000000..e96d723236
Binary files /dev/null and b/dashboards/hcp-vault/hcp-vault03.png differ
diff --git a/dashboards/hcp-vault/hcp-vault04.png b/dashboards/hcp-vault/hcp-vault04.png
new file mode 100644
index 0000000000..6b56721f23
Binary files /dev/null and b/dashboards/hcp-vault/hcp-vault04.png differ
diff --git a/data-sources/hcp-vault-logs/config.yml b/data-sources/hcp-vault-logs/config.yml
new file mode 100644
index 0000000000..542c5491e4
--- /dev/null
+++ b/data-sources/hcp-vault-logs/config.yml
@@ -0,0 +1,24 @@
+id: hcp-vault-logs
+displayName: HCP Vault audit logs
+description: |
+ This integration sends audit logs from your HCP vault clusters.
+
+icon: logo.svg
+install:
+ primary:
+ link:
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-audit-log-new-relic
+ fallback:
+ link:
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-guide
+keywords:
+ - hashicorp
+ - hcp
+ - cloud
+ - infrastructure
+ - newrelic partner
+ - vault
+ - secret management
+categoryTerms:
+ - newrelic partner
+ - infrastructure
diff --git a/data-sources/hcp-vault-logs/logo.svg b/data-sources/hcp-vault-logs/logo.svg
new file mode 100644
index 0000000000..1dd77b512e
--- /dev/null
+++ b/data-sources/hcp-vault-logs/logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/data-sources/hcp-vault-metrics/config.yml b/data-sources/hcp-vault-metrics/config.yml
new file mode 100644
index 0000000000..4ef7cc3aaf
--- /dev/null
+++ b/data-sources/hcp-vault-metrics/config.yml
@@ -0,0 +1,25 @@
+id: hcp-vault-metrics
+displayName: HCP Vault telemetry metrics
+description: |
+ This integration sends metrics from your HCP vault clusters to New Relic.
+
+icon: logo.svg
+install:
+ primary:
+ link:
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-new-relic
+ fallback:
+ link:
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-guide
+keywords:
+ - hashicorp
+ - hcp
+ - cloud
+ - infrastructure
+ - newrelic partner
+ - vault
+ - secret management
+ - metrics
+categoryTerms:
+ - newrelic partner
+ - infrastructure
diff --git a/data-sources/hcp-vault-metrics/logo.svg b/data-sources/hcp-vault-metrics/logo.svg
new file mode 100644
index 0000000000..1dd77b512e
--- /dev/null
+++ b/data-sources/hcp-vault-metrics/logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/install/third-party/hcp-vault/install.yml b/install/third-party/hcp-vault/install.yml
new file mode 100644
index 0000000000..ab8e83b27e
--- /dev/null
+++ b/install/third-party/hcp-vault/install.yml
@@ -0,0 +1,16 @@
+id: third-party-hcp-vault
+name: HCP Vault
+title: HCP Vault Integration
+description: |
+ This guide details how to deploy the HCP Vault integration, to monitor your Hashicorp HCP Vault environment with New Relic.
+
+target:
+ type: integration
+ destination: cloud
+
+level: Verified
+
+install:
+ mode: link
+ destination:
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-guide
diff --git a/quickstarts/hashicorp/hcp-vault/config.yml b/quickstarts/hashicorp/hcp-vault/config.yml
new file mode 100644
index 0000000000..f57e031332
--- /dev/null
+++ b/quickstarts/hashicorp/hcp-vault/config.yml
@@ -0,0 +1,47 @@
+slug: hcp-vault
+title: HCP Vault
+description: |-
+ ## HCP Vault
+
+ Secure, store, and tightly control access to tokens, passwords, certificates, encryption keys for protecting secrets, and other sensitive data using a UI, CLI, or HTTP API.
+
+ ### Monitor HCP Vault metrics with New Relic
+
+ Metrics observability is essential for ensuring the performance and security of your HCP Vault cluster. It's also useful for business operations, like understanding client-related usage.
+
+ ### HCP Vault integration highlights
+ The HCP Vault integration with New Relic provides a pre-made dashboard with HCP Vault metrics and audit logs to get started easily. This dashboard provides visibility into the health of your HCP Vault environment.
+
+ - Overview: Monitor key data points like identity entities, policy get/set, secret count, etc.
+ - Runtime metrics: Keep track of runtime metrics for your Vault instance, including allocated MB's, Heap objects used, etc.
+ - Token Metrics: Visualize token metrics like available token count, and count faceted by auth or ttl method.
+ - Audit Logs: review real time audit log rates, and error logs for response or request API errors.
+summary: Monitor your HCP Vault environment
+level: Verified
+authors:
+ - New Relic Labs
+keywords:
+ - hcp
+ - vault
+ - hashicorp
+ - consul
+ - nrlabs
+ - nrlabs-data
+ - infrastructure
+ - NR1_addData
+ - NR1_sys
+documentation:
+ - name: Metrics configuration documentation
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-new-relic
+ description: HCP Vault metrics guide
+ - name: Audit Logs configuration documentation
+ url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-audit-log-new-relic
+ description: HCP Vault audit logs guide
+icon: logo.svg
+installPlans:
+ - third-party-hcp-vault
+dataSourceIds:
+ - hcp-vault-logs
+ - hcp-vault-metrics
+dashboards:
+ - hcp-vault
diff --git a/quickstarts/hashicorp/hcp-vault/logo.svg b/quickstarts/hashicorp/hcp-vault/logo.svg
new file mode 100644
index 0000000000..1dd77b512e
--- /dev/null
+++ b/quickstarts/hashicorp/hcp-vault/logo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file