1 /* 2 * Copyright (c) 2022 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 #ifndef FOUNDATION_RESOURCESCHEDULE_WORKSCHEDULER_UTILS_HILOG_H 16 #define FOUNDATION_RESOURCESCHEDULE_WORKSCHEDULER_UTILS_HILOG_H 17 18 #include "hilog/log.h" 19 20 #ifndef WORKSCHEDULER_MGR_LOG_DOMAIN 21 #define WORKSCHEDULER_MGR_LOG_DOMAIN 0xD001712 22 #endif 23 24 #ifndef WORKSCHEDULER_MGR_LOG_TAG 25 #define WORKSCHEDULER_MGR_LOG_TAG "WORK_SCHEDULER" 26 #endif 27 28 #define FILENAME (__builtin_strrchr(__FILE__, '/') ? __builtin_strrchr(__FILE__, '/') + 1 : __FILE__) 29 30 #define WS_HILOGF(fmt, ...) \ 31 ((void)HILOG_IMPL(LOG_CORE, LOG_FATAL, WORKSCHEDULER_MGR_LOG_DOMAIN, WORKSCHEDULER_MGR_LOG_TAG, \ 32 "[%{public}s(%{public}s:%{public}d)]" fmt, FILENAME, __FUNCTION__, __LINE__, ##__VA_ARGS__)) 33 #define WS_HILOGE(fmt, ...) \ 34 ((void)HILOG_IMPL(LOG_CORE, LOG_ERROR, WORKSCHEDULER_MGR_LOG_DOMAIN, WORKSCHEDULER_MGR_LOG_TAG, \ 35 "[%{public}s(%{public}s:%{public}d)]" fmt, FILENAME, __FUNCTION__, __LINE__, ##__VA_ARGS__)) 36 #define WS_HILOGW(fmt, ...) \ 37 ((void)HILOG_IMPL(LOG_CORE, LOG_WARN, WORKSCHEDULER_MGR_LOG_DOMAIN, WORKSCHEDULER_MGR_LOG_TAG, \ 38 "[%{public}s(%{public}s:%{public}d)]" fmt, FILENAME, __FUNCTION__, __LINE__, ##__VA_ARGS__)) 39 #define WS_HILOGI(fmt, ...) \ 40 ((void)HILOG_IMPL(LOG_CORE, LOG_INFO, WORKSCHEDULER_MGR_LOG_DOMAIN, WORKSCHEDULER_MGR_LOG_TAG, \ 41 "[%{public}s(%{public}s:%{public}d)]" fmt, FILENAME, __FUNCTION__, __LINE__, ##__VA_ARGS__)) 42 #define WS_HILOGD(fmt, ...) \ 43 ((void)HILOG_IMPL(LOG_CORE, LOG_DEBUG, WORKSCHEDULER_MGR_LOG_DOMAIN, WORKSCHEDULER_MGR_LOG_TAG, \ 44 "[%{public}s(%{public}s:%{public}d)]" fmt, FILENAME, __FUNCTION__, __LINE__, ##__VA_ARGS__)) 45 46 #endif // FOUNDATION_RESOURCESCHEDULE_WORKSCHEDULER_UTILS_HILOG_H