Где находятся Application Insights Телеметрия входит в систему Azure Portal - PullRequest
0 голосов
/ 24 января 2020

У меня есть этот класс:

public class TelemetryHelper : ITelemetryHelper
{
    private TelemetryClient TelemetryClient { get; set; }

    public TelemetryHelper()
    {
        TelemetryConfiguration configuration = TelemetryConfiguration.CreateDefault();
        configuration.InstrumentationKey = ConfigurationManager.AppSettings["APPINSIGHTS_INSTRUMENTATIONKEY"];
        TelemetryClient = new TelemetryClient(configuration);
    }

    #region Input

    public Task InfoAsync(DebugMessageType tag = DebugMessageType.Other, string message = null, Exception ex = null, [CallerMemberName] string callerFunction = "", [CallerLineNumber] int lineNumber = 0)
        => OutputInApplicationInsightsAsync(SeverityLevel.Information, tag, message, ex, callerFunction);

    public Task ErrorAsync(DebugMessageType tag = DebugMessageType.Other, string message = null, Exception ex = null, [CallerMemberName] string callerFunction = "", [CallerLineNumber] int lineNumber = 0)
        => OutputInApplicationInsightsAsync(SeverityLevel.Error, tag, message, ex, callerFunction);

    public Task WarnAsync(DebugMessageType tag = DebugMessageType.Other, string message = null, Exception ex = null, [CallerMemberName] string callerFunction = "", [CallerLineNumber] int lineNumber = 0)
        => OutputInApplicationInsightsAsync(SeverityLevel.Warning, tag, message, ex, callerFunction);

    #endregion Input

    private Task OutputInApplicationInsightsAsync(SeverityLevel level, DebugMessageType tag = DebugMessageType.Other, string message = null, Exception ex = null, string callerFunction = "")
    {
        var properties = new Dictionary<string, string> { { "Tag", tag.ToString() } };

        if (!string.IsNullOrWhiteSpace(callerFunction))
            properties.Add("CallerFunction", callerFunction);

        if (ex != null)
            properties.Add("Exception", ex.ToString());

        TelemetryClient.TrackTrace(message, level, properties);
        return Task.CompletedTask;
    }
}

И я могу использовать его следующим образом:

await TelemetryHelper.ErrorAsync(DebugMessageType.Service, ex.Message, ex, nameof(this.RunRemoveTasksAsync));

Однако кто-то может сказать мне, где эти журналы в Azure Portal. Я искал часы, которые не могу найти

1 Ответ

1 голос
/ 24 января 2020

Если сведения о приложении связаны правильно и данные телеметрии успешно отправлены, вы можете найти их через эти местоположения в сведениях о приложении.

Первый переход к порталу azure -> сведения о приложении, которые вы связали в своем приложении. код.

Местоположение 1:

В обзоре приложения -> Поиск -> вы можете выбрать правильный «диапазон времени» и «тип события» ->, затем нажмите кнопка «Refre sh». Вы можете просмотреть журналы:

enter image description here

Местоположение 2: В приложении идеи -> Журналы. Вы можете написать правильный запрос Kusto , чтобы увидеть ваши логи. Я вижу, что вы используете метод TelemetryClient.TrackTrace, поэтому ваши журналы должны быть в таблице traces . Вы можете следовать скриншоту ниже для более подробной информации:

enter image description here

...