1/*
2 * Copyright (c) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#ifndef FOUNDATION_RESOURCESCHEDULE_STANDBY_SERVICE_UTILS_INCLUDE_STANDBY_SERVICE_LOG_H
17#define FOUNDATION_RESOURCESCHEDULE_STANDBY_SERVICE_UTILS_INCLUDE_STANDBY_SERVICE_LOG_H
18
19#include "hilog/log.h"
20
21#ifdef LOG_DOMAIN
22#undef LOG_DOMAIN
23#endif
24#define LOG_DOMAIN 0xD001718
25
26#ifdef LOG_TAG
27#undef LOG_TAG
28#endif
29#define LOG_TAG "StandbyService"
30
31namespace OHOS {
32namespace DevStandbyMgr {
33#ifdef __aarch64__
34#define SPUBI64  "%{public}ld"
35#define SPUB_SIZE "%{public}lu"
36#define SPUBU64  "%{public}lu"
37#elif __x86_64__
38#define SPUBI64  "%{public}ld"
39#define SPUB_SIZE "%{public}lu"
40#define SPUBU64  "%{public}lu"
41#else
42#define SPUBI64  "%{public}lld"
43#define SPUB_SIZE "%{public}u"
44#define SPUBU64  "%{public}llu"
45#endif
46
47#ifndef FORMAT_LOG
48#define FORMAT_LOG(fmt, ...) "[%{public}s:%{public}d] " fmt, __FUNCTION__, __LINE__, ##__VA_ARGS__
49#endif
50
51#define STANDBYSERVICE_PRINT_LOGD(fmt, ...)  HILOG_DEBUG(LOG_CORE, fmt, ##__VA_ARGS__)
52#define STANDBYSERVICE_PRINT_LOGI(fmt, ...)  HILOG_INFO(LOG_CORE, fmt, ##__VA_ARGS__)
53#define STANDBYSERVICE_PRINT_LOGW(fmt, ...)  HILOG_WARN(LOG_CORE, fmt, ##__VA_ARGS__)
54#define STANDBYSERVICE_PRINT_LOGE(fmt, ...)  HILOG_ERROR(LOG_CORE, fmt, ##__VA_ARGS__)
55#define STANDBYSERVICE_PRINT_LOGF(fmt, ...)  HILOG_FATAL(LOG_CORE, fmt, ##__VA_ARGS__)
56
57#define STANDBYSERVICE_LOGD(...)  STANDBYSERVICE_PRINT_LOGD(FORMAT_LOG(__VA_ARGS__))
58#define STANDBYSERVICE_LOGI(...)  STANDBYSERVICE_PRINT_LOGI(FORMAT_LOG(__VA_ARGS__))
59#define STANDBYSERVICE_LOGW(...)  STANDBYSERVICE_PRINT_LOGW(FORMAT_LOG(__VA_ARGS__))
60#define STANDBYSERVICE_LOGE(...)  STANDBYSERVICE_PRINT_LOGE(FORMAT_LOG(__VA_ARGS__))
61#define STANDBYSERVICE_LOGF(...)  STANDBYSERVICE_PRINT_LOGF(FORMAT_LOG(__VA_ARGS__))
62}  // namespace DevStandbyMgr
63}  // namespace OHOS
64#endif  // FOUNDATION_RESOURCESCHEDULE_STANDBY_SERVICE_UTILS_INCLUDE_STANDBY_SERVICE_LOG_H
65