forked from apestel/vector
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(new sink): Initial
azure_monitor_logs
sink (vectordotdev#2811)
Solves vectordotdev#1808 Will add validations for configuration and unit tests Co-authored-by: Luke Steensen <luke.steensen@gmail.com> Co-authored-by: James Turnbull <james@lovedthanlost.net> Signed-off-by: Brian Menges <brian.menges@anaplan.com>
- Loading branch information
1 parent
eee89cc
commit 110a83e
Showing
6 changed files
with
854 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
description = """\ | ||
[Azure Monitor][urls.azure_monitor] is a service in Azure that provides \ | ||
performance and availability monitoring for applications and services in Azure, other \ | ||
cloud environments, or on-premises. Azure Monitor collects data from multiple sources into a \ | ||
common data platform where it can be analyzed for trends and anomalies.\ | ||
""" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
[sinks.azure_monitor_logs] | ||
title = "Azure Monitor Logs" | ||
noun = "Azure Monitor Logs" | ||
beta = true | ||
common = false | ||
<%= render("_partials/descriptions/_azure_monitor.toml") %> | ||
delivery_guarantee = "at_least_once" | ||
egress_method = "batching" | ||
features = [ | ||
"Send logs to Azure Monitor.", | ||
"Batch data to maximize throughput.", | ||
"Automatically retry failed requests, with backoff.", | ||
"Buffer your data in-memory or on-disk for performance and durability.", | ||
] | ||
function_category = "transmit" | ||
healthcheck = true | ||
input_types = ["log"] | ||
service_providers = ["Azure"] | ||
write_to_description = "[Azure Monitor's][urls.azure_monitor] logs via the [REST endpoint][urls.azure_monitor_logs_endpoints]" | ||
requirements = {} | ||
|
||
<%= render("_partials/fields/_component_options.toml", type: "sink", name: "azure_monitor_logs") %> | ||
<%= render("_partials/fields/_batch_options.toml", namespace: "sinks.azure_monitor_logs.options", common: false, max_bytes: 30000000, max_events: nil, timeout_secs: 1) %> | ||
<%= render("_partials/fields/_buffer_options.toml", namespace: "sinks.azure_monitor_logs.options") %> | ||
<%= render( | ||
"_partials/fields/_encoding_options.toml", | ||
namespace: "sinks.azure_monitor_logs.options", | ||
encodings: ["json", "text"] | ||
) %> | ||
|
||
[sinks.azure_monitor_logs.options.customer_id] | ||
type = "string" | ||
common = true | ||
examples = ["5ce893d9-2c32-4b6c-91a9-b0887c2de2d6", "97ce69d9-b4be-4241-8dbd-d265edcf06c4"] | ||
required = true | ||
description = "The [unique identifier](https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api#request-uri-parameters) for the Log Analytics workspace." | ||
|
||
[sinks.azure_monitor_logs.options.shared_key] | ||
type = "string" | ||
common = true | ||
examples = ["${AZURE_MONITOR_SHARED_KEY_ENV_VAR}", "SERsIYhgMVlJB6uPsq49gCxNiruf6v0vhMYE+lfzbSGcXjdViZdV/e5pEMTYtw9f8SkVLf4LFlLCc2KxtRZfCA=="] | ||
required = true | ||
description = "The [primary or the secondary key](https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api#authorization) for the Log Analytics workspace." | ||
|
||
[sinks.azure_monitor_logs.options.log_type] | ||
type = "string" | ||
common = true | ||
examples = ["MyTableName", "MyRecordType"] | ||
required = true | ||
description = "The [record type of the data that is being submitted](https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api#request-headers). Can only contain letters, numbers, and underscore (_), and may not exceed 100 characters." | ||
|
||
[sinks.azure_monitor_logs.options.azure_resource_id] | ||
type = "string" | ||
common = true | ||
examples = ["/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/otherResourceGroup/providers/Microsoft.Storage/storageAccounts/examplestorage", "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/examplegroup/providers/Microsoft.SQL/servers/serverName/databases/databaseName"] | ||
required = false | ||
description = "[Resource ID](https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api#request-headers) of the Azure resource the data should be associated with." | ||
|
||
<%= render( | ||
"_partials/fields/_tls_connector_options.toml", | ||
namespace: "sinks.azure_monitor_logs.options", | ||
can_enable: true, | ||
enabled_default: true, | ||
can_verify_certificate: true, | ||
can_verify_hostname: true | ||
) %> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.