Как устранить неполадки доставки телеметрии в корзину Application Insights? - PullRequest
0 голосов
/ 01 мая 2020

У меня есть код PowerShell, который отправляет телеметрию в Application Insights. Мы обнаружили, что телеметрия перестала поступать в ИИ, несмотря на то, что код не изменился. Нет ошибок.

Код использует следующую функцию Powershell для создания клиента телеметрии:

function New-TelemetryClient([Parameter(Mandatory)]$InstrumentationKey, $SessionKey)
{
    $MicrosoftApplicationInsightsDll = Get-LibraryFromNuGet Microsoft.ApplicationInsights net46 2.11.0
    Add-Type -Path $MicrosoftApplicationInsightsDll.FullName
    $tc = New-Object Microsoft.ApplicationInsights.TelemetryClient
    $tc.Context.InstrumentationKey = $InstrumentationKey
    if (!$SessionKey)
    {
        $SessionKey = [guid]::NewGuid().ToString()
    }
    $tc.Context.Session.Id = $SessionKey
    $tc
}

Мы создаем объект клиента телеметрии, вызываем кучу TrackEvent методов для отправки пользовательских событий, а затем позвоните Flush. Этот код отлично работает с локальной машины, но не передает телеметрию с машины сборки.

Странно, что когда мы меняем Ключ Инструментовки, он, кажется, работает на той же машине сборки. Так много странных вещей.

Я хотел бы получить диагностический вывод для Application Insights, но не могу найти никакой информации о том, как его включить.

Так что мой вопрос - как можно Я собираю диагностические сообщения c при отправке в Application Insights из Powershell?

Ответы [ 2 ]

0 голосов
/ 02 мая 2020

Существует несколько вариантов устранения неполадок Application Insights. NET SDK:

  1. Используйте Fiddler для проверки HTTP-запросов. Это поможет обнаружить такие проблемы, как недопустимый инструментальный ключ.
  2. Если AI SDK не отправляет HTTP-запросы, следуйте приведенным ниже инструкциям для сбора событий ETW из AI SDK: https://github.com/microsoft/ApplicationInsights-Home/tree/master/Samples/ETW#tools -to- collect-etw
0 голосов
/ 01 мая 2020

Вы должны проверить, если вы включаете выборку при приеме пищи для понимания этого приложения (в соответствии с вопросом, это работает, если переходить на понимание другого приложения).

как я могу собирать диагностические c сообщения при отправке в Application Insights из Powershell?

Единственный способ, о котором я могу думать, - это использовать fiddler для проверки http-запросов с информацией о приложении, чтобы увидеть, является ли информация о приложении отправлено или нет.

...