Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
agora_log_i.h
1//
2// Agora Media SDK
3//
4// Created by ChenZhipeng in 2022-06.
5// Copyright (c) 2022 Agora IO. All rights reserved.
6//
7#pragma once
8
9#include "stdarg.h"
10#include <inttypes.h>
11#include <stdint.h>
12
13namespace agora {
14namespace commons {
15
17 AGORA_LOG_NONE = 0x0000, // no trace
27 AGORA_LOG_MEM = 0x0100, // memory info
28 AGORA_LOG_TIMER = 0x0200, // timing info
29 AGORA_LOG_STREAM = 0x0400, // "continuous" stream of data
30 // used for debug purposes
31 AGORA_LOG_DEBUG = 0x0800, // debug
34 AGORA_LOG_ALL = 0xffff,
36
37 AGORA_LOG_INVALID = (int32_t)-1,
38};
39
40#if defined(__APPLE__)
41#if defined(__clang__) && \
42 (__clang_major__ * 100 + __clang_minor__ * 10 + __clang_patchlevel__ >= \
43 1316)
44#define LOG_FORMAT_CHECK 1
45#endif
46#elif defined(__clang__) || defined(__GNUC__)
47#define LOG_FORMAT_CHECK 1
48#endif
49
50#if defined(LOG_FORMAT_CHECK)
51__attribute__((format(printf, 2, 3)))
52#endif
53void log(log_filters level, const char* fmt, ...);
54
55void logv(log_filters level, const char *fmt, va_list ap);
56
57} // namespace commons
58} // namespace agora
59
60// Log format is strict now, for instance: you must use PRId64 when print
61// int64_t If you have any trouble with or advice to log format goto
62// https://confluence.agoralab.co/pages/viewpage.action?pageId=1037828374
Definition agora_log_i.h:14
__attribute__((format(printf, 2, 3))) void log(log_filters level
log_filters
Definition agora_log_i.h:16
@ AGORA_LOG_DEBUG
Definition agora_log_i.h:31
@ AGORA_LOG_ALL
Definition agora_log_i.h:34
@ AGORA_LOG_DEFAULT
Definition agora_log_i.h:22
@ AGORA_LOG_MEM
Definition agora_log_i.h:27
@ AGORA_LOG_DIAGNOSE
Definition agora_log_i.h:26
@ AGORA_LOG_TIMER
Definition agora_log_i.h:28
@ AGORA_LOG_NONE
Definition agora_log_i.h:17
@ AGORA_LOG_CONSOLE
Definition agora_log_i.h:33
@ AGORA_LOG_FATAL
Definition agora_log_i.h:21
@ AGORA_LOG_ERROR
Definition agora_log_i.h:20
@ AGORA_LOG_QUALITY
Definition agora_log_i.h:25
@ AGORA_LOG_WARN
Definition agora_log_i.h:19
@ AGORA_LOG_INFO
Definition agora_log_i.h:18
@ AGORA_LOG_USER_API_CALL
Definition agora_log_i.h:32
@ AGORA_LOG_MODULE_CALL
Definition agora_log_i.h:24
@ AGORA_LOG_INVALID
Definition agora_log_i.h:37
@ AGORA_LOG_API_CALL
Definition agora_log_i.h:23
@ AGORA_LOG_STREAM
Definition agora_log_i.h:29
@ AGORA_LOG_NO_API
Definition agora_log_i.h:35
const char void logv(log_filters level, const char *fmt, va_list ap)
const char * fmt
Definition agora_log_i.h:53
Definition AgoraAtomicOps.h:21