Поділитися через


Аналіз журналів, створених системою, за допомогою Application Insights

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

У цьому короткому старті ми використовуємо програму полотна під назвою Kudos, щоб дослідити концепції журналів, створених системою, у програмах Canvas і застосувати їх до ваших програм. Зразок програми Kudos є частиною набору програм для залучення співробітників, доступних для завантаження зі стартового набору Employee Experience.

вимоги

Примітка

Щоб переглядати інформацію про телеметрію, адміністратор клієнта має ввімкнути статистику програми Canvas. Увійдіть як адміністратор у Power Platform Центрі адміністрування. Перейдіть до розділу Налаштування, > Налаштування > клієнта, Статистика програми Canvas. На панелі статистики програми Canvas установіть перемикач у положення Увімкнуто та збережіть зміни. Щоб дізнатися більше, перегляньте статтю Налаштування клієнта.

Необов'язково

  • Завантажте та встановіть програму Kudos зі стартового набору Employee Experience. Також можна скористатися наявною програмою.

Створення ресурсу 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. Виберіть об’єкт App у лівому перегляді дерева навігації та вставте клавішу Instrumentation Key:

    Додавання Ключа інструментарію.

  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 одну з трьох категорій серйозності:

  • Докладно
  • Попередження
  • Помилка

Залежно від сценарію можна надіслати повідомлення трасування з відповідною серйозністю. Ви можете запитувати дані та вживати конкретних дій залежно від ступеня серйозності.

Примітка

Якщо ви реєструєте будь-які персональні дані, пам’ятайте про свої зобов’язання щодо різних законів і правил про конфіденційність. Для отримання додаткових відомостей зверніться до Центру безпеки та конфіденційності корпорації Майкрософт і Порталу довіри служб.

Тепер створіть новий компонент у своєму додатку, щоб збирати відгуки на кожному екрані та записувати події до. Application Insights

  1. Увійти до Power Apps.

  2. На панелі переходів зліва виберіть пункт Програми. Зі списку програм виберіть програму Kudos, а потім натисніть Редагувати.

    Примітка

    Ви також можете створити нову програму або відредагувати наявну.

  3. Виберіть параметр Компоненти у поданні дерева.

    Компоненти.

  4. Виберіть пункт Новий компонент, та встановіть ширину 200 і висоту 75.

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

  5. Виберіть в меню пункт Вставити, а потім виберіть Піктограми, щоб додати емотикон - похмурий та емотикон - посмішка.

    Додавання піктограм.

  6. Виберіть пункт Нова настроювана властивість, щоб створити настроювану властивість.

    Створити настроювану властивість.

  7. Введіть Ім’я властивості та Коротке ім’я, наприклад FeedbackScreen.

  8. Введіть опис властивості.

  9. Виберіть Тип властивості: Ввід та Тип даних: Екран.

    Настроювана властивість.

    Примітка

    Властивість вводу дозволяє перехопити відображуване ім’я та його компонент, щоб зафіксувати цю інформацію в Application Insights.

  10. Виберіть компонент у перегляді дерева, виберіть пункт Інші дії (), а потім натисніть кнопку Перейменувати, щоб перейменувати компонент зі змістовним ім’ям, наприклад FeedbackComponent.

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

  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!");
    

    Формула похмурої піктограми.

    Примітка

    Вираз формули надсилає Ім’я користувача, Електронну пошту, Екран та Зворотний зв’язок (зі значенням -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.

    Значення полів Екран, Ім’я користувача, Електронна Пошта користувача та 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).

Докладні повідомлення про помилки надаються у вимірі «помилки» властивості customDisionsion. У ситуаціях, коли під час однієї операції виникло кілька помилок, помилки об’єднуються у вимір «помилки» однієї події трасування. Повідомлення про помилки збігаються з повідомленнями в Моніторі під час сеансу налагодження в реальному часі.

Наведений нижче приклад запиту визначає необроблені помилки та розгортає всі повідомлення про помилки, включені в подію трасування:

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

Приклад виводу, наприклад, запиту.

Трасування зв'язувань (експериментальні)

[Цей розділ містить попередню документацію, яку буде змінено.]

Важливо

  • Це експериментальна функція.
  • Експериментальні функції призначено для невиробничого використання, і вони можуть бути обмежені. Ці функції доступні до офіційного випуску, щоб клієнти могли ознайомитися з ними заздалегідь і залишити відгуки.

Підключення до зовнішніх даних і служб є незмінним для більшості програм. Кореляційне трасування генерує та розповсюджує контекстну інформацію для об’єднання журналів, створених системою, у програмі canvas та її зв’язках із певними обмеженнями. Наприклад, ваша програма може викликати налаштовуваний зєднувач, який у свою чергу викликає функцію Azure або інший REST API. Відстеження кореляцій дає змогу співвідносити дії, виконані в додатку, з базовими викликами API на різних рівнях. Це може бути корисним під час усунення несправностей.

Трасування кореляції додатків Canvas є реалізацією трасування контексту та відповідає специфікації W3C.

Увімкнути трасування зв’язування

Попередження

Якщо ввімкнути цей параметр, це може призвести до додаткових витрат, пов’язаних зі сховищем журналів Application Insights.

Щоб увімкнути функцію трасування зв'язування, перейдіть до меню Параметри > Заплановані функції > Експериментальні > Увімкнути трасування зв'язування Azure Application Insights, залишаючи компоновану програму відкритою для редагування. Збережіть і опублікуйте додаток.

Увімкнути трасування зв’язування Azure Application Insights

Обмеження

  • Трасування кореляції доступне лише для користувальницьких з’єднувачів. Інші типи з’єднувачів не підтримуються.
  • HTTP-запити реєструються Application Insights тільки в тому випадку, якщо підключена до неї служба Application Insights.

Використання трасування зв’язування

Якщо цей параметр увімкнено, трасування кореляції додає нову подію журналу, створену системою, у таблицю залежностей екземпляра програми canvas Application Insights . Ця подія фіксується в момент отримання відповіді від мережевого виклику. Події залежностей фіксують докладні відомості про мережевий виклик, включно з заголовками запитів і відповідей, кодом стану відповіді та тривалістю виклику.

Приклад події, записаного в таблицю залежностей.

Якщо підключений Application Insights сервіс також підключений, у таблиці запитів екземпляра Application Insights сервісу генерується додаткова згенерована системою подія журналу, яка фіксує запит. Деякі служби Azure, наприклад Azure Functions, можна підключити без будь-якого кодування з порталу Azure. До одного Application Insights екземпляра можна підключити як програму canvas, так і кілька програм і підключених служб.

Приклад події, записаної в таблицю запитів.

Мережеві виклики підтримуваних з’єднувачів можна об’єднувати з іншими журналами, створеними системою, у параметрі «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 у кожній події трасування додається набір параметрів за замовчуванням. Ці розміри можна використовувати для визначення сеансів програм і програм, в яких відбувалися події. Якщо ви введете в журнал додаткові спеціальні дані за допомогою функції трасування, вони також з’являться в спеціальних параметрах.

Ім’я критерію Представляє
ms-appId Ідентифікатор програми, яка надіслала подію.
ms-appname Назва програми, яка надіслала подію.
ms-appSessionId Ідентифікатор сесії програми. Деякі сценарії можуть не вказувати це значення. За наявності це значення заміняє стандартний вимір Application Insights sessionID.
ms-tenantID Унікальний ідентифікатор клієнта, в якому опубліковано програму.
ms-environmentId Назва середовища, в якому опубліковано програму.
userId Унікальний ідентифікатор користувача, пов’язаного з сеансом.
ms-duration Введене значення, яке вимірює час, за який користувач має переходити з одного екрана на інший. Це значення зміняє стандартне значення тривалості Application Insights PageView.
sessionId Ідентифікатор сеансу, який можна використовувати для зв’язування всіх подій, пов’язаних з одним сеансом програми. Це значення присутнє завжди і рекомендується для розуміння унікальної кількості сеансів. Це значення береться з ідентифікатора сеансу гравця і відображається протягом перегляду відомостей про сеанс під час відтворення програми. Ідентифікатор сеансу може також отримати значення за замовчуванням, випадкове та унікальне згенероване значення Application Insights. Це значення за замовчуванням не є надійним і не співвідноситься з параметрами програми.
Тривалість Введене значення, яке вимірює час, за який користувач має переходити з одного екрана на інший. Це значення збігається з тривалістю, вказаною у значенні ms-duration.
ms-isTest Указує, чи пов’язано сеанс із засобом запуску тестів Test Studio.
ms-currentScreenName Назва сторінки, з якої переходить користувач (присутня для подій навігації сторінкою).
ms-targetScreenName Назва сторінки, на яку переходить користувач (присутня для подій навігації по сторінці).

Не підтримувані сценарії

Application Insights не підтримує наведені далі сценарії.

  • Події гравців офлайн не фіксуються.
  • Події в мобільному додатку (і та iOS) Android не фіксуються, коли додаток призупинено.
  • Не підтримуються GCC і не загальнодоступні хмари.

Примітка

Розкажіть нам про свої уподобання щодо мови документації? Візьміть участь в короткому опитуванні. (зверніть увагу, що це опитування англійською мовою)

Проходження опитування займе близько семи хвилин. Персональні дані не збиратимуться (декларація про конфіденційність).