1 /* 2 * Copyright (c) 2021-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 16 #ifndef INTERFACES_KITS_JS_SRC_COMMON_LOG_H 17 #define INTERFACES_KITS_JS_SRC_COMMON_LOG_H 18 19 #include <cstdio> 20 #include <string> 21 #include <vector> 22 23 #ifndef FILE_SUBSYSTEM_DEBUG_LOCAL 24 #include "hilog/log.h" 25 #endif 26 27 namespace OHOS { 28 namespace DistributedFS { 29 #ifndef FILE_SUBSYSTEM_DEBUG_LOCAL 30 #define FILEIO_DOMAIN_ID 0xD004388 31 static constexpr OHOS::HiviewDFX::HiLogLabel FILEIO_LABEL = { LOG_CORE, FILEIO_DOMAIN_ID, "file_api" }; 32 33 #ifdef HILOGD 34 #undef HILOGD 35 #endif 36 37 #ifdef HILOGF 38 #undef HILOGF 39 #endif 40 41 #ifdef HILOGE 42 #undef HILOGE 43 #endif 44 45 #ifdef HILOGW 46 #undef HILOGW 47 #endif 48 49 #ifdef HILOGI 50 #undef HILOGI 51 #endif 52 53 #define HILOGD(fmt, ...) \ 54 (void)OHOS::HiviewDFX::HiLog::Debug(OHOS::DistributedFS::FILEIO_LABEL, "%{public}s: " fmt, __func__, ##__VA_ARGS__) 55 #define HILOGI(fmt, ...) \ 56 (void)OHOS::HiviewDFX::HiLog::Info(OHOS::DistributedFS::FILEIO_LABEL, "%{public}s: " fmt, __func__, ##__VA_ARGS__) 57 #define HILOGW(fmt, ...) \ 58 (void)OHOS::HiviewDFX::HiLog::Warn(OHOS::DistributedFS::FILEIO_LABEL, "%{public}s: " fmt, __func__, ##__VA_ARGS__) 59 #define HILOGE(fmt, ...) \ 60 (void)OHOS::HiviewDFX::HiLog::Error(OHOS::DistributedFS::FILEIO_LABEL, "%{public}s: " fmt, __func__, ##__VA_ARGS__) 61 #define HILOGF(fmt, ...) \ 62 (void)OHOS::HiviewDFX::HiLog::Fatal(OHOS::DistributedFS::FILEIO_LABEL, "%{public}s: " fmt, __func__, ##__VA_ARGS__) 63 64 #else 65 66 #define HILOGF(fmt, ...) \ 67 ((void)HILOG_IMPL(LOG_CORE, LOG_FATAL, FILEIO_DOMAIN_ID, FILEMGMT_LOG_TAG, \ 68 "[%{public}s:%{public}d->%{public}s] " fmt, FILEMGMT_FILE_NAME, __LINE__, __FUNCTION__, ##__VA_ARGS__)) 69 #define HILOGE(fmt, ...) \ 70 ((void)HILOG_IMPL(LOG_CORE, LOG_ERROR, FILEIO_DOMAIN_ID, FILEMGMT_LOG_TAG, \ 71 "[%{public}s:%{public}d->%{public}s] " fmt, FILEMGMT_FILE_NAME, __LINE__, __FUNCTION__, ##__VA_ARGS__)) 72 #define HILOGW(fmt, ...) \ 73 ((void)HILOG_IMPL(LOG_CORE, LOG_WARN, FILEIO_DOMAIN_ID, FILEMGMT_LOG_TAG, \ 74 "[%{public}s:%{public}d->%{public}s] " fmt, FILEMGMT_FILE_NAME, __LINE__, __FUNCTION__, ##__VA_ARGS__)) 75 #define HILOGI(fmt, ...) \ 76 ((void)HILOG_IMPL(LOG_CORE, LOG_INFO, FILEIO_DOMAIN_ID, FILEMGMT_LOG_TAG, \ 77 "[%{public}s:%{public}d->%{public}s] " fmt, FILEMGMT_FILE_NAME, __LINE__, __FUNCTION__, ##__VA_ARGS__)) 78 #define HILOGD(fmt, ...) \ 79 ((void)HILOG_IMPL(LOG_CORE, LOG_DEBUG, FILEIO_DOMAIN_ID, FILEMGMT_LOG_TAG, \ 80 "[%{public}s:%{public}d->%{public}s] " fmt, FILEMGMT_FILE_NAME, __LINE__, __FUNCTION__, ##__VA_ARGS__)) 81 82 #endif 83 } // namespace DistributedFS 84 } // namespace OHOS 85 #endif // INTERFACES_KITS_JS_SRC_COMMON_LOG_H