Share via


Анализиране на генерирани от системата регистрационни файлове с помощта на Application Insights

Можете да свържете вашите платно приложения към Application Insights, функция на Azure Monitor. Application Insights включва мощни инструменти за анализ, които да Ви помогнат да диагностицирате проблеми и да разберете какво всъщност правят потребителите с приложенията Ви. Можете да събирате информация, която да Ви помогне да вземате по-добри бизнес решения и да подобрявате качеството на приложенията си.

В този бърз старт използваме приложение за платно, наречено Kudos, за да изследваме концепциите за генерирани от системата логове в приложенията за платно и да ги прилагаме към вашите приложения. Примерното приложение Kudos е част от пакет от приложения за ангажиране на служителите, достъпни за изтегляне от стартовия комплект за опит на служителите.

Предварителни изисквания

Бележка

За да видите информация за телеметрията, администраторът на клиента трябва да разреши прозрения за приложението Canvas. Влезте като администратор в Power Platform центъра за администриране. Отидете в Настройки > Настройки > на клиента Прозрения на приложението Canvas. В екрана Прозрения на приложението Canvas задайте превключвателя на Вкл. и запишете промените. За повече информация вижте Настройки на клиента.

Незадължителен

  • Изтеглете и инсталирайте приложението Kudos от стартовия комплект за опит на служителите. Можете също да използвате съществуващо приложение вместо това.

Създаване на ресурс на Application Insights

Преди да можете да изпращате генерирани от системата регистрационни файлове от приложение, трябва да създадете Application Insights ресурс за съхраняване на събитията.

  1. Влезте в портала на Azure.

  2. Търсете Application Insights:

    Application Insights.

  3. Създаване на ресурс на Application Insights:

    Добавете ресурс на Application Insights.

  4. Въведете съответните стойности и изберете Преглед + създаване.

    За повече подробности прочетете Създайте ресурс на Application Insights.

    Създаване на ресурс.

  5. След като екземплярът Application Insights е създаден, копирайте ключа за инструментариума в общия преглед на екземпляра за използване в предстояща стъпка.

    Копирайте ключа за инструментиране.

Свързване на приложението ви към Application Insights

Бележка

  • Когато задавате ключ за измервателна апаратура, имайте предвид, че данните могат да се изпращат между клиентите. Проследяването на събития се изпраща до ресурса App Insights, който съответства на ключа за инструменти, който сте задали за приложението си, дори ако целевият екземпляр на App Insights е в различен клиент от приложението.
  • Бъдете внимателни, когато импортирате съществуващи .msapp файлове, тъй като може да са налице ключове за инструменти за App Insights. Ръчно отворете приложението след импортиране, за да проверите дали се използва правилният ключ за инструменти на App Insights.
  1. Влезте в Power Apps.

  2. Изберете Приложения в левия навигационен екран. От списъка с приложения изберете приложението Kudos и след това изберете Редактиране:

    Редактиране на приложението Kudos.

    Бележка

    Можете също да създадете ново приложение или да редактирате всяко съществуващо приложение вместо това.

  3. Изберете обекта на приложението в изгледа на лявото дърво за навигация и поставете клавиша за инструменти:

    Добавяне на ключа за инструментиране.

  4. Запишете и публикувайте приложението си.

  5. Възпроизвеждане на публикуваното приложение и преглед на различните екрани.

Докато разглеждате екраните на приложенията, събитията се записват Application Insights автоматично, включително подробности за използването, като например:

  • Откъде е достъпно приложението
  • Кои устройства се използват
  • Използваните типове браузъри

Важно

Трябва да изпълните публикуваното приложение, за да изпращате събития към Application Insights. Събитията не се изпращат до Application Insights, когато визуализирате приложението в Power Apps Studio.

Преглед на събития в Application Insights

  1. Влезте в Портал на Azure и отворете ресурса Application Insights, който сте създали по-рано.

  2. Превъртете надолу в левия панел за навигация и изберете Потребители под секцията Използване.

    Бележка

    Изгледът "Потребители " показва подробности за използването на приложението, като например:

    • Брой потребители, разгледали приложението
    • Брой потребителски сесии
    • Брой регистрирани събития
    • Подробности за операционните системи на потребителите и версията на браузъра
    • Регион и местоположение на потребителите

    Научете повече за потребителите, сесиите и анализа на събития в Application Insights.

  3. Изберете една от потребителските сесии, за да разгледате конкретни подробности. Можете да видите информация като продължителност на сесията и посетените екрани:

    Данни за употреба за потребителите.

  4. Изберете изгледа Събития в левия навигационен екран под секцията Използване . Можете да видите обобщение на всички екрани, гледани през всички сесии на приложения:

    Подробности за събитието за приложението.

Съвет

Налични са още Application Insights функции, като например:

Създайте персонализирани събития за проследяване

Можете да запишете персонализирани следи директно в Application Insights и започнете да анализирате информация, специфична за вашия сценарий. Функцията Trace ви позволява да събирате:

  • Подробна информация за използването на контролите на екраните
  • Кои конкретни потребители имат достъп до приложението Ви
  • Какви грешки възникват

Проследяването може също да помогне за диагностициране на проблеми, тъй като можете да изпратите пътека с информация, докато потребителите ви разглеждат приложението ви и извършват различни действия. Проследяването на изпратените съобщения има Application Insights една от трите тежести:

  • Информация
  • Предупреждение
  • Грешка

В зависимост от вашия сценарий можете да изберете да изпратите съобщение за проследяване със съответната тежест. Можете да направите заявка за данните и да предприемете конкретни действия въз основа на тежестта.

Бележка

Ако регистрирате лични данни, бъдете наясно със задълженията си по отношение на различни закони и разпоредби за поверителност. Обърнете се към центъра за сигурност на Microsoft и портала за сигурност на услугите за повече информация.

Сега създайте нов компонент в приложението си, за да събирате обратна връзка на всеки екран и да Application Insights записвате събитията.

  1. Влезте в Power Apps.

  2. Изберете Приложения в левия навигационен екран. От списъка с приложения изберете приложението Kudos и след това изберете Редактиране.

    Бележка

    Можете също да създадете ново приложение или вместо това да редактирате съществуващо приложение.

  3. Изберете опцията Компоненти на Дървовидния изглед:

    Компоненти.

  4. Изберете Нов компонент и след това преоразмерете ширината до 200 и височината до 75:

    Височина и ширина.

  5. Изберете Вмъкване от менюто и след това изберете Икони, за да добавите Емотикона - намръщена и Емотикона - усмивка:

    Добавете икони.

  6. Изберете Ново персонализирано свойство, за да създадете персонализирано свойство:

    Създаване на персонализирано свойство.

  7. Въведете име и име за показване на свойството, като FeedbackSceen.

  8. Въведете описание на свойството.

  9. Изберете Тип свойство като Вход и Тип на данни като екран:

    Персонализирано свойство.

    Бележка

    Свойството за въвеждане ви позволява да заснемете името на екрана и неговия компонент, така че да можете да регистрирате тази информация в Application Insights.

  10. Изберете компонента в дървовидния изглед, изберете Още действия () и след това изберете Преименуване, за да преименувате компонента със смислено име, като например Компонент за обратна връзка.

    Преименувайте компонент и икони.

  11. Изберете иконите, изберете Още действия (), след което изберете Преименуване, за да преименувате иконите със смислени имена, като например FrownIcon и SmileIcon.

  12. Изберете FrownIcon, изберете свойството OnSelect и след това въведете следния израз в лентата с формули:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeedbackValue: "-1"
           }
         );
    Notify("Thanks for your feedback!");
    

    Формула на икона с гримаса.

    Бележка

    Изразът на формулата изпраща UserName, UserEmail, екран и Обратна връзка (със стойността -1) към Application Insights.

  13. Изберете SmileIcon, изберете свойството OnSelect и след това въведете следния израз в лентата с формули:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeebackValue: "1"
           }
         );
    Notify("Thanks for your feedback!");
    
  14. Добавете компонента към един от екраните в приложението си:

    Добавяне на компонент за обратна връзка.

  15. Изберете Запази и след това изберете публикуване, за да запазите и публикувате приложението си.

  16. Възпроизведете публикуваното приложение и изпратете усмихната и намръщена обратна връзка от екраните си.

    Важно

    Трябва да изпълните публикуваното приложение, за да изпращате събития към Application Insights. Събитията не се изпращат до Application Insights, когато визуализирате приложението в Power Apps Studio.

    Изпълнение на публикувано приложение.

Анализиране на данни в Application Insights

Сега можете да започнете да анализирате данните, които сте изпратили с помощта на функцията проследяване от приложението ви в Application Insights.

  1. Влезте в Портал на Azure и отворете ресурса Application Insights, който сте създали по-рано:

    Избор на Application Insights.

  2. Изберете Регистрационни файлове под Наблюдение в левия навигационен екран:

    Изберете регистрационни файлове.

  3. Въведете следната заявка и изберете Изпълни, за да видите обратната връзка, получена от приложението ви:

    traces
    | where message == "App Feedback"
    | order by timestamp
    

    Преглед на обратна връзка за приложение.

  4. Изберете ред в резултатите и разгънете полето customDimensions.

    Стойностите за екран, UserName, UserEmail и FeedbackValue за събитие OnSelect на иконата на усмивка или мръщене във вашия компонент са записани. Стойностите също се записват за всяко събитие, изпратено до Application Insights, като например appId, appName и appSessionId.

    Разширете персонализираните измерения.

  5. Със следната примерна заявка можете да разширите свойствата на персонализираните размери JSON и да проектирате колоните в изгледа с резултати.

    traces
        | extend customdims = parse_json(customDimensions)
        | where message == "App Feedback"
        | project timestamp
            , message
            , AppName = customdims.['ms-appName']
            , AppId = customdims.['ms-appId']
            , FeedbackFrom = customdims.UserEmail
            , Screen = customdims.Screen
            , FeedbackValue = customdims.FeedbackValue
        | order by timestamp desc
    

    Разширете заявката за customDimensions.

    Съвет

    Регистрационни запитвания са изключително мощни. Можете да ги използвате, за да се присъедините към множество таблици, да агрегирате големи количества данни и да извършвате сложни операции. Научете повече за заявките за регистриране.

Наблюдение на необработени грешки (експериментално)

[Тази секция съдържа предварителна версия на документацията и подлежи на промяна.]

Важно

  • Това е експериментална функция.
  • Екперименталните функции не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.

Не винаги можете да предвидите и планирате всички грешки, които могат да възникнат, докато приложението ви работи. Необработените Power Fx грешки във формули се съобщават на потребителите като банерни съобщения. Те също могат да бъдат докладвани, за да ви помогнат да разберете тяхната честота и тежест, без да Application Insights разчитате на потребителите на приложението ви да съобщават за проблеми. Можете също така да настроите предупреждения в реално време, когато възникнат грешки по време на изпълнение, за да предприемете по-проактивен подход.

Разрешете предаването на грешка към Application Insights

Трябва да активирате настройката, която позволява Power Apps да се предават необработени грешки по време на изпълнение на Azure Application Insights.

Предупреждение

Активирането на тази настройка може да доведе до допълнителни разходи, свързани със съхранението на регистри на Application Insights.

За да разрешите предаването на грешки, отидете на Настройки > Предстоящи функции > Експериментално > Предаване на грешки към Azure Application Insights като същевременно държите приложението си за платно отворено за редактиране. Запазете и публикувайте приложението си.

Настройки за активиране на подаване на грешки към Azure Application Insights.

Събития на грешки в Application Insights

Необработените Power Fx грешки, възникнали от потребителите по време на изпълнение на приложението, се отчитат в таблицата за проследяване . Необработените грешки могат да бъдат идентифицирани и разграничени от други събития за грешки чрез съобщението за събитие "Необработена грешка". Измерението "severityLevel" на тези събития е 3 (TraceSeverity.Error).

Подробни съобщения за грешки са предоставени в измерението „грешки“ на свойство customDimension. В ситуации, в които са възникнали множество грешки по време на една и съща операция, грешките се консолидират в измерението "грешки" на едно събитие за проследяване. Съобщенията за грешки са същите като съобщените в "Монитор" по време на сесия за отстраняване на грешки на живо.

Следната примерна заявка идентифицира необработените грешки и разширява всички съобщения за грешки, включени в събитието за проследяване:

traces
    | where message == "Unhandled error"
    | extend customdims = parse_json(customDimensions)
    | extend errors = parse_json(tostring(customdims.['errors']))
    | mv-expand errors
    | project timestamp
        , itemId //unique identifier for the trace event
        , AppName = customdims.['ms-appName']
        , AppId = customdims.['ms-appId']
        , errors = errors.['Message']
    | order by timestamp desc

Примерен резултат за примерна заявка.

Проследяване на корелация (експериментално)

[Тази секция съдържа предварителна версия на документацията и подлежи на промяна.]

Важно

  • Това е експериментална функция.
  • Екперименталните функции не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.

Връзките с външни данни и услуги са основни за повечето приложения. Проследяването на корелацията генерира и разпространява контекстна информация, за да се присъедини към генерираните от системата дневници в приложение за платно и неговите връзки, при спазване на определени ограничения. Като пример, приложението ви може да извика персонализиран конектор, който на свой ред извиква функция на Azure или друга REST API. Проследяването на корелацията ви позволява да съпоставяте действията, предприети в приложението, с основните API повиквания между нивата. Това може да бъде полезно при отстраняване на неизправности.

Проследяването на корелацията на приложението Canvas е реализация на контекстното проследяване и следва спецификацията на W3C.

Активиране на проследяването на корелацията

Предупреждение

Активирането на тази настройка може да доведе до допълнителни разходи, свързани със съхранението на регистри на Application Insights.

За да активирате функцията за проследяване на корелация, отидете на Настройки > Предстоящи функции > Експериментално > Активиране на Azure Application Insights корелационно проследяване като същевременно държите приложението си за платно отворено за редактиране. Запазете и публикувайте приложението си.

Активиране на корелационно проследяване на Azure Application Insights.

Ограничения

  • Проследяването на корелацията е налично само за потребителски конектори. Други типове конектори не се поддържат.
  • HTTP заявките се записват само Application Insights ако свързаната услуга също е свързана Application Insights.

Използване на проследяването на корелацията

Когато е разрешено, проследяването на корелацията добавя ново генерирано от системата лог събитие в таблицата със зависимости на екземпляра Application Insights на приложението за платно. Това събитие се записва в момента на получаване на отговор от мрежово повикване. Събитията на зависимост улавят подробности за мрежовото повикване, включително заглавките на заявката и отговора, кода на състоянието на отговора и продължителността на повикването.

Примерно събитие, регистрирано в таблицата на зависимостите.

Ако свързаната услуга също е свързана Application Insights, в таблицата със заявки на екземпляра Application Insights на услугата се генерира допълнително генерирано от системата лог събитие, което заснема заявката. Някои услуги на Azure, като например Azure Functions, могат да бъдат свързани без кодиране от портала на Azure. Както приложението canvas, така и няколко приложения и свързаните услуги могат да бъдат свързани към една и съща Application Insights инстанция.

Примерно събитие, регистрирано в таблицата за заявки.

Мрежовите повиквания за поддържани конектори могат да бъдат присъединени с други генерирани от системата регистрационни файлове в измерението "operation_Id". Следващата примерна заявка показва мрежово повикване, което се извършва заедно с проследяването на събития, излъчени по време на сесия на приложение.

traces | union dependencies | union requests | union pageViews | union customEvents
| project timestamp
    , itemType
    , name
    , operation_Name
    , message
    , severityLevel
    , customDimensions
    , operation_Id
    , operation_ParentId
| where operation_Id == "0a7729e3e83c4e4d93cb4f51149f73b9" //placeholder operation_Id, replace
| order by timestamp asc

Примерен резултат за по-ранна примерна заявка.

Експортиране на данни в Power BI

Можете да експортирате своите данни на Application Insights и резултати от запитвания към Power BI за анализ и представяне на данни.

  1. Влезте в Портал на Azure и отворете ресурса Application Insights, който сте създали по-рано:

  2. Изберете Регистрационни файлове под Наблюдение в левия навигационен екран:

  3. От прозореца на заявката за лог анализ изберете менюто Експортиране .

  4. Изберете опцията Експортиране в Power BI (M заявка), за да изтеглите файл със Power BI заявка:

    Експортиране на заявка на Power BI.

  5. Отворете изтегления файл в текстов редактор и копирайте заявката в клипборда.

  6. Отваряне на Power BI.

  7. Изберете менюто Получаване на данни в лентата Начало и след това изберете Празна заявка:

    Празна заявка на Power BI.

  8. В прозореца за заявки изберете Разширен редактор. Поставете заявката в прозореца, изберете Готово и след това изберете Затвори & Приложи:

    Разширена заявка на Power BI.

Можете също да създавате диаграми и визуализации в Power BI да представят обратна връзка, получена във вашето приложение, както и да взема решения и действия, базирани на данни.

Диаграми и визуализации.

Контекст и измерения на проследяване на събитията по подразбиране

Набор от размери по подразбиране също се добавя към свойството customDimensions на всяко събитие за проследяване. Тези величини могат да бъдат използвани за идентифициране на приложението и сесиите на приложението, в които са се случили събитията. Ако регистрирате допълнителни данни по избор с помощта на функцията Trace, те също ще се появят в персонализираните размери.

Име на измерение Представлява
ms-appId ИД на приложението, изпратило събитието.
ms-appname Име на приложението, изпратило събитието.
ms-appSessionId ИД на сесията на приложението. Тази стойност може да не бъде попълнена в някои сценарии. Когато е налице, тази стойност отменя стандарта измерение на sessionID на Application Insights.
ms-tenantID Уникалният идентификатор на клиента, където е публикувано приложението.
ms-environmentId Името на средата, в която е публикувано приложението.
userId Еднозначен идентификатор за потребителя, свързан със сесията.
ms-duration Присвоена стойност, измерваща времето, необходимо на потребителя да премине от един екран на друг. Тази стойност замества стандартното измерение за продължителност на Application Insights PageView.
sessionId Идентификатор на сесия, който може да се използва за корелиране на всички събития, свързани с една сесия на приложение. Тази стойност винаги присъства и се препоръчва за разбиране на уникалния брой сесии. Тази стойност се взема от идентификатора на сесията на играча и се показва, когато преглеждате подробностите за сесията, докато играете приложението. Идентификаторът на сесията понякога може да получи стандартен, произволен и уникална генерирана стойност на Application Insights. Тази стойност по подразбиране не е надеждна и не корелира с параметри, специфични за приложението.
Продължителност Присвоена стойност, измерваща времето, необходимо на потребителя да премине от един екран на друг. Тази стойност е същата като продължителността, отчетена от измерението ms-продължителност.
ms-isTest Показва дали сесията е свързана с тестовия бегач на Test Studio.
ms-currentScreenName Името на страницата, от която потребителят навигира (представя се за събития за навигация в страницата).
ms-targetScreenName Името на страницата, до която потребителят навигира (представя се за събития за навигация в страницата).

Неподдържани сценарии

Application Insights не поддържа следните сценарии.

  • Офлайн събитията на играчите не се заснемат.
  • Събитията за мобилни приложения (и двете iOS , и Android) не се заснемат, когато приложението е спряно.
  • GCC и непублични облаци не се поддържат.

Бележка

Можете ли да ни споделите повече за езиковите си предпочитания за документацията? Попълнете кратко проучване. (имайте предвид, че това проучване е на английски език)

Проучването ще отнеме около седем минути. Не се събират лични данни (декларация за поверителност).