2021-08-30 09:10:11 +00:00
|
|
|
/*
|
2021-08-30 09:22:27 +00:00
|
|
|
* Copyright (c) 2021 Huawei Device Co., Ltd.
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
* you may not use this file except in compliance with the License.
|
|
|
|
* You may obtain a copy of the License at
|
|
|
|
*
|
|
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
*
|
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
* See the License for the specific language governing permissions and
|
|
|
|
* limitations under the License.
|
|
|
|
*/
|
2021-08-30 09:10:11 +00:00
|
|
|
|
|
|
|
import { AsyncCallback } from './phone/basic';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Provides the event logging function for applications to log the fault, statistical, security,
|
|
|
|
* and user behavior events reported during running. Based on event information,
|
|
|
|
* you will be able to analyze the running status of applications.
|
|
|
|
*
|
|
|
|
* @since 7
|
2021-08-30 09:22:27 +00:00
|
|
|
* @devices phone, tablet, tv, wearable
|
2021-08-30 09:10:11 +00:00
|
|
|
*/
|
|
|
|
declare namespace hiAppEvent {
|
|
|
|
/**
|
|
|
|
* Enumerate application event types.
|
|
|
|
*/
|
|
|
|
enum EventType {
|
|
|
|
/**
|
2021-08-30 09:22:27 +00:00
|
|
|
* Fault event.
|
2021-08-30 09:10:11 +00:00
|
|
|
*/
|
|
|
|
FAULT = 1,
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Statistic event.
|
|
|
|
*/
|
|
|
|
STATISTIC = 2,
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Security event.
|
|
|
|
*/
|
|
|
|
SECURITY = 3,
|
|
|
|
|
|
|
|
/**
|
|
|
|
* User behavior event.
|
|
|
|
*/
|
|
|
|
BEHAVIOR = 4
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Preset event.
|
|
|
|
*/
|
|
|
|
namespace Event {
|
|
|
|
/**
|
|
|
|
* user login event.
|
|
|
|
*/
|
|
|
|
const USER_LOGIN: string;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* user logout event.
|
|
|
|
*/
|
|
|
|
const USER_LOGOUT: string;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* distributed service event.
|
|
|
|
*/
|
|
|
|
const DISTRIBUTED_SERVICE_START: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Preset param.
|
|
|
|
*/
|
|
|
|
namespace Param {
|
|
|
|
/**
|
|
|
|
* user id.
|
|
|
|
*/
|
|
|
|
const USER_ID: string;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* distributed service name.
|
|
|
|
*/
|
|
|
|
const DISTRIBUTED_SERVICE_NAME: string;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* distributed service instance id.
|
|
|
|
*/
|
|
|
|
const DISTRIBUTED_SERVICE_INSTANCE_ID: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* write application event.
|
|
|
|
*
|
|
|
|
* @static
|
|
|
|
* @param {string} eventName application event name.
|
|
|
|
* @param {EventType} eventType application event type.
|
|
|
|
* @param {object} keyValues application event key-value pair params.
|
|
|
|
* @param {AsyncCallback} [callback] callback function.
|
|
|
|
* @return {void | Promise<void>} no callback return Promise otherwise return void.
|
|
|
|
*/
|
|
|
|
function write(eventName: string, eventType: EventType, keyValues: object): Promise<void>;
|
|
|
|
function write(eventName: string, eventType: EventType, keyValues: object, callback: AsyncCallback<void>): void;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* application event logging configuration interface.
|
|
|
|
*
|
|
|
|
* @static
|
|
|
|
* @param {ConfigOption} config application event logging configuration item object.
|
|
|
|
* @return {boolean} configuration result.
|
|
|
|
*/
|
|
|
|
function configure(config: ConfigOption): boolean;
|
|
|
|
|
|
|
|
interface ConfigOption {
|
|
|
|
/**
|
|
|
|
* configuration item: application event logging switch.
|
|
|
|
*/
|
|
|
|
disable?: boolean;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* configuration item: event file directory storage quota size.
|
|
|
|
*/
|
|
|
|
maxStorage?: string;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default hiAppEvent;
|