1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openharmony-hiviewdfx_hiappevent

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 8.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 27.11.2024 00:59 f92b612

HiAppEvent

Введение

HiAppEvent — это модуль OpenHarmony, который предоставляет функцию логирования событий для приложений. С помощью этой функции приложения могут регистрировать события, связанные с ошибками, статистикой, безопасностью и поведением пользователей во время работы. На основе информации о событиях можно анализировать состояние работы приложений.

Рисунок 1. Архитектура HiAppEvent

Структура директорий

/base/hiviewdfx/hiappevent   # Исходный код HiAppEvent
├── frameworks               # Код фреймворка
│   └── native               # Реализация кода нативных API логирования
├── interfaces               # Внешние API
│   └── js                   # JS API
│       └── innerkits        # Реализация кода JS API
│           └── napi         # Реализация JS API на основе NAPI
├── test                     # Тестовые случаи

Компиляция и сборка

Используйте Clang 8.0.0 и C++11 или более позднюю версию.

Использование

Доступные API

JS API

Таблица 1. JS API для логирования событий

Модуль API Описание
hiAppEvent write(string eventName, EventType type, object keyValues, AsyncCallback<void> callback): void Регистрирует события приложения в асинхронном режиме. Эта функция использует асинхронный обратный вызов для возврата результата.

Входные аргументы:

  • eventName: указывает имя события.
  • type: указывает тип события.
  • keyValues: указывает пары ключ-значение параметров события. Значение представлено в формате JSON.
  • callback: указывает обратный вызов, используемый для обработки полученного возвращаемого значения. Значение 0 указывает на успешную проверку параметров события, и событие будет записано в файл событий асинхронно. Значение больше 0 указывает на наличие недопустимых параметров в событии, и событие будет записано в файл событий асинхронно после игнорирования недопустимых параметров. Значение меньше 0 указывает на сбой проверки параметров события, и событие не будет записано в файл событий асинхронно.* Тип массива char и его добавление в ParamList.*

Таблица 3. Собственные API для настройки логирования событий

API Возвращаемое значение Описание
OH_HiAppEvent_Configure(const char* name, const char* value) bool Устанавливает параметры конфигурации логирования событий приложения.
Входные аргументы:
— name: указывает имя элемента конфигурации. Можно передать предопределённую константу элемента конфигурации;
— value: указывает значение элемента конфигурации.
Возвращаемое значение: значение true означает успешное выполнение операции, а значение false — обратное.

Таблица 4. Предопределённые константы элементов конфигурации

Константа Тип Описание
DISABLE const char[] Устанавливает переключатель логирования событий приложения. Значение true отключает функцию логирования событий приложения, а значение false означает обратное.
MAX_STORAGE const char[] Указывает максимальный размер каталога хранилища файлов событий. Значение по умолчанию — 10M.

Таблица 5. Предопределенные константы событий

Константа Тип Описание
EVENT_USER_LOGIN const char[] Имя события входа пользователя.
EVENT_USER_LOGOUT const char[] Имя события выхода пользователя из системы.
EVENT_DISTRIBUTED_SERVICE_START const char[] Имя события запуска распределённой службы.

Таблица 6. Предопределенные константы параметров

Константа Тип Описание
PARAM_USER_ID const char[] Пользовательский идентификатор пользователя.
PARAM_DISTRIBUTED_SERVICE_NAME const char[] Название распределённой службы.
PARAM_DISTRIBUTED_SERVICE_INSTANCE_ID const char[] Идентификатор экземпляра распределённой службы.

Как использовать

JS

  1. Разработайте исходный код. Импортируйте модуль HiAppEvent.
import hiAppEvent from '@ohos.hiAppEvent'
  1. Регистрируйте события приложения.
// Режим обратного вызова
hiAppEvent.write("test_event", hiAppEvent.EventType.FAULT, {"int_data":100, "str_data":"strValue"}, (err, value) => {
    if (err) {
        // Ошибка при записи события: событие содержит недопустимые параметры или проверка параметров события завершается неудачно.
        console.error(`failed to write event because ${err.code}`);
        return;
    }

    // Запись события прошла успешно.
    console.log(`success to write event: ${value}`);
});

// Режим Promise
hiAppEvent.write("test_event", hiAppEvent.EventType.FAULT, {"int_data":100, "str_data":"strValue"})
    .then((value) => {
        // Запись события прошла успешно.
        console.log(`success to write event: ${value}`);
    }).catch((err) => {
        // Ошибка при записи события: событие содержит недопустимые параметры или проверка параметров события завершается неудачно.
        console.error(`failed to write event because ${err.code}`);
    });
  1. Настройте функцию логирования событий приложения по своему усмотрению.
// Установите переключатель логирования событий приложения.
hiAppEvent.configure({
    disable: true
})

// Задайте максимальный размер каталога, в котором хранятся файлы логирования событий.
hiAppEvent.configure({
    maxStorage: '100M'
})

Native

  1. Разработайте исходный код. Импортируйте модуль HiAppEvent.
#include "hiappevent/hiappevent.h"
  1. Зарегистрируйте события приложения.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/openharmony-hiviewdfx_hiappevent.git
git@api.gitlife.ru:oschina-mirror/openharmony-hiviewdfx_hiappevent.git
oschina-mirror
openharmony-hiviewdfx_hiappevent
openharmony-hiviewdfx_hiappevent
master