Освоение Application Insights: настройка ключей программного инструментирования стала проще

Application Insights — это мощный инструмент мониторинга и ведения журналов, предоставляемый Microsoft Azure. Одним из важнейших компонентов использования Application Insights является настройка ключа инструментария. В этой статье блога мы рассмотрим различные методы программной настройки ключа инструмента, которые упрощают разработчикам интеграцию Application Insights в свои приложения.

Метод 1: переменная среды
Одним из распространенных подходов является использование переменной среды для хранения ключа инструмента. Этот метод позволяет легко настроить без изменения кода. Вот пример на Python:

import os
from azure.monitor.opentelemetry.exporter import AzureMonitorTraceExporter
instrumentation_key = os.environ.get("APP_INSIGHTS_INSTRUMENTATION_KEY")
if instrumentation_key:
    exporter = AzureMonitorTraceExporter(instrumentation_key=instrumentation_key)
    # Set up exporter with Application Insights SDK
else:
    # Handle missing instrumentation key

Метод 2: файл конфигурации
Другой метод — сохранить ключ инструментария в файле конфигурации, например в файле JSON или YAML. Этот подход обеспечивает гибкость, поскольку ключ можно обновлять без изменения кода. Вот пример использования файла конфигурации JSON в Node.js:

// config.json
{
  "instrumentationKey": "YOUR_INSTRUMENTATION_KEY"
}
// app.js
const config = require('./config.json');
const appInsights = require("applicationinsights");
appInsights.setup(config.instrumentationKey).start();

Метод 3: аргументы командной строки
Вы также можете передать ключ инструментария в качестве аргумента командной строки в свое приложение. Этот метод особенно полезен в сценариях, где вы хотите переопределить ключ по умолчанию для определенных развертываний. Вот пример на C#:

using Microsoft.ApplicationInsights.Extensibility;
class Program
{
    static void Main(string[] args)
    {
        string instrumentationKey = args[0];
        TelemetryConfiguration.Active.InstrumentationKey = instrumentationKey;

        // Rest of the application logic
    }
}

Метод 4: системы управления конфигурацией
Если вы используете систему управления конфигурацией, такую ​​как Azure Key Vault или AWS Secrets Manager, вы можете безопасно хранить ключ инструмента и получать его программно во время выполнения. Каждая система имеет собственный API и SDK для облегчения интеграции.

В этой статье мы рассмотрели несколько методов программного задания ключа инструментария в Application Insights. Предпочитаете ли вы использовать переменные среды, файлы конфигурации, аргументы командной строки или системы управления конфигурацией, есть метод, который соответствует вашим потребностям. Используя эти методы, вы можете легко интегрировать Application Insights в свои приложения и получить ценную информацию об их производительности и поведении.

Не забудьте выбрать метод, соответствующий архитектуре вашего приложения и требованиям безопасности. Приятного просмотра!