/Users/eugenesiegel/btc/bitcoin/src/logging.h
Line | Count | Source (jump to first uncovered line) |
1 | | // Copyright (c) 2009-2010 Satoshi Nakamoto |
2 | | // Copyright (c) 2009-present The Bitcoin Core developers |
3 | | // Distributed under the MIT software license, see the accompanying |
4 | | // file COPYING or http://www.opensource.org/licenses/mit-license.php. |
5 | | |
6 | | #ifndef BITCOIN_LOGGING_H |
7 | | #define BITCOIN_LOGGING_H |
8 | | |
9 | | #include <crypto/siphash.h> |
10 | | #include <threadsafety.h> |
11 | | #include <tinyformat.h> |
12 | | #include <util/fs.h> |
13 | | #include <util/string.h> |
14 | | #include <util/time.h> |
15 | | |
16 | | #include <atomic> |
17 | | #include <cstdint> |
18 | | #include <cstring> |
19 | | #include <functional> |
20 | | #include <list> |
21 | | #include <memory> |
22 | | #include <mutex> |
23 | | #include <source_location> |
24 | | #include <string> |
25 | | #include <unordered_map> |
26 | | #include <unordered_set> |
27 | | #include <vector> |
28 | | |
29 | | static const bool DEFAULT_LOGTIMEMICROS = false; |
30 | | static const bool DEFAULT_LOGIPS = false; |
31 | | static const bool DEFAULT_LOGTIMESTAMPS = true; |
32 | | static const bool DEFAULT_LOGTHREADNAMES = false; |
33 | | static const bool DEFAULT_LOGSOURCELOCATIONS = false; |
34 | | static constexpr bool DEFAULT_LOGLEVELALWAYS = false; |
35 | | extern const char * const DEFAULT_DEBUGLOGFILE; |
36 | | |
37 | | extern bool fLogIPs; |
38 | | |
39 | | struct SourceLocationEqual { |
40 | | bool operator()(const std::source_location& lhs, const std::source_location& rhs) const noexcept |
41 | 0 | { |
42 | 0 | return lhs.line() == rhs.line() && std::string_view(lhs.file_name()) == std::string_view(rhs.file_name()); |
43 | 0 | } |
44 | | }; |
45 | | |
46 | | struct SourceLocationHasher { |
47 | | size_t operator()(const std::source_location& s) const noexcept |
48 | 0 | { |
49 | | // Use CSipHasher(0, 0) as a simple way to get uniform distribution. |
50 | 0 | return size_t(CSipHasher(0, 0) |
51 | 0 | .Write(s.line()) |
52 | 0 | .Write(MakeUCharSpan(std::string_view{s.file_name()})) |
53 | 0 | .Finalize()); |
54 | 0 | } |
55 | | }; |
56 | | |
57 | | struct LogCategory { |
58 | | std::string category; |
59 | | bool active; |
60 | | }; |
61 | | |
62 | | namespace BCLog { |
63 | | using CategoryMask = uint64_t; |
64 | | enum LogFlags : CategoryMask { |
65 | | NONE = CategoryMask{0}, |
66 | | NET = (CategoryMask{1} << 0), |
67 | | TOR = (CategoryMask{1} << 1), |
68 | | MEMPOOL = (CategoryMask{1} << 2), |
69 | | HTTP = (CategoryMask{1} << 3), |
70 | | BENCH = (CategoryMask{1} << 4), |
71 | | ZMQ = (CategoryMask{1} << 5), |
72 | | WALLETDB = (CategoryMask{1} << 6), |
73 | | RPC = (CategoryMask{1} << 7), |
74 | | ESTIMATEFEE = (CategoryMask{1} << 8), |
75 | | ADDRMAN = (CategoryMask{1} << 9), |
76 | | SELECTCOINS = (CategoryMask{1} << 10), |
77 | | REINDEX = (CategoryMask{1} << 11), |
78 | | CMPCTBLOCK = (CategoryMask{1} << 12), |
79 | | RAND = (CategoryMask{1} << 13), |
80 | | PRUNE = (CategoryMask{1} << 14), |
81 | | PROXY = (CategoryMask{1} << 15), |
82 | | MEMPOOLREJ = (CategoryMask{1} << 16), |
83 | | LIBEVENT = (CategoryMask{1} << 17), |
84 | | COINDB = (CategoryMask{1} << 18), |
85 | | QT = (CategoryMask{1} << 19), |
86 | | LEVELDB = (CategoryMask{1} << 20), |
87 | | VALIDATION = (CategoryMask{1} << 21), |
88 | | I2P = (CategoryMask{1} << 22), |
89 | | IPC = (CategoryMask{1} << 23), |
90 | | #ifdef DEBUG_LOCKCONTENTION |
91 | | LOCK = (CategoryMask{1} << 24), |
92 | | #endif |
93 | | BLOCKSTORAGE = (CategoryMask{1} << 25), |
94 | | TXRECONCILIATION = (CategoryMask{1} << 26), |
95 | | SCAN = (CategoryMask{1} << 27), |
96 | | TXPACKAGES = (CategoryMask{1} << 28), |
97 | | ALL = ~NONE, |
98 | | }; |
99 | | enum class Level { |
100 | | Trace = 0, // High-volume or detailed logging for development/debugging |
101 | | Debug, // Reasonably noisy logging, but still usable in production |
102 | | Info, // Default |
103 | | Warning, |
104 | | Error, |
105 | | }; |
106 | | constexpr auto DEFAULT_LOG_LEVEL{Level::Debug}; |
107 | | constexpr size_t DEFAULT_MAX_LOG_BUFFER{1'000'000}; // buffer up to 1MB of log data prior to StartLogging |
108 | | constexpr uint64_t RATELIMIT_MAX_BYTES{1024 * 1024}; // maximum number of bytes per source location that can be logged within the RATELIMIT_WINDOW |
109 | | constexpr auto RATELIMIT_WINDOW{1h}; // time window after which log ratelimit stats are reset |
110 | | constexpr bool DEFAULT_LOGRATELIMIT{true}; |
111 | | |
112 | | //! Fixed window rate limiter for logging. |
113 | | class LogRateLimiter |
114 | | { |
115 | | public: |
116 | | //! Keeps track of an individual source location and how many available bytes are left for logging from it. |
117 | | struct Stats { |
118 | | //! Remaining bytes |
119 | | uint64_t m_available_bytes; |
120 | | //! Number of bytes that were consumed but didn't fit in the available bytes. |
121 | | uint64_t m_dropped_bytes{0}; |
122 | | |
123 | 0 | Stats(uint64_t max_bytes) : m_available_bytes{max_bytes} {} |
124 | | //! Updates internal accounting and returns true if enough available_bytes were remaining |
125 | | bool Consume(uint64_t bytes); |
126 | | }; |
127 | | |
128 | | private: |
129 | | mutable StdMutex m_mutex; |
130 | | |
131 | | //! Stats for each source location that has attempted to log something. |
132 | | std::unordered_map<std::source_location, Stats, SourceLocationHasher, SourceLocationEqual> m_source_locations GUARDED_BY(m_mutex); |
133 | | //! Whether any log locations are suppressed. Cached view on m_source_locations for performance reasons. |
134 | | std::atomic<bool> m_suppression_active{false}; |
135 | | LogRateLimiter(uint64_t max_bytes, std::chrono::seconds reset_window); |
136 | | |
137 | | public: |
138 | | using SchedulerFunction = std::function<void(std::function<void()>, std::chrono::milliseconds)>; |
139 | | /** |
140 | | * @param scheduler_func Callable object used to schedule resetting the window. The first |
141 | | * parameter is the function to be executed, and the second is the |
142 | | * reset_window interval. |
143 | | * @param max_bytes Maximum number of bytes that can be logged for each source |
144 | | * location. |
145 | | * @param reset_window Time window after which the stats are reset. |
146 | | */ |
147 | | static std::shared_ptr<LogRateLimiter> Create( |
148 | | SchedulerFunction&& scheduler_func, |
149 | | uint64_t max_bytes, |
150 | | std::chrono::seconds reset_window); |
151 | | //! Maximum number of bytes logged per location per window. |
152 | | const uint64_t m_max_bytes; |
153 | | //! Interval after which the window is reset. |
154 | | const std::chrono::seconds m_reset_window; |
155 | | //! Suppression status of a source log location. |
156 | | enum class Status { |
157 | | UNSUPPRESSED, // string fits within the limit |
158 | | NEWLY_SUPPRESSED, // suppression has started since this string |
159 | | STILL_SUPPRESSED, // suppression is still ongoing |
160 | | }; |
161 | | //! Consumes `source_loc`'s available bytes corresponding to the size of the (formatted) |
162 | | //! `str` and returns its status. |
163 | | [[nodiscard]] Status Consume( |
164 | | const std::source_location& source_loc, |
165 | | const std::string& str) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex); |
166 | | //! Resets all usage to zero. Called periodically by the scheduler. |
167 | | void Reset() EXCLUSIVE_LOCKS_REQUIRED(!m_mutex); |
168 | | //! Returns true if any log locations are currently being suppressed. |
169 | 0 | bool SuppressionsActive() const { return m_suppression_active; } |
170 | | }; |
171 | | |
172 | | class Logger |
173 | | { |
174 | | public: |
175 | | struct BufferedLog { |
176 | | SystemClock::time_point now; |
177 | | std::chrono::seconds mocktime; |
178 | | std::string str, threadname; |
179 | | std::source_location source_loc; |
180 | | LogFlags category; |
181 | | Level level; |
182 | | }; |
183 | | |
184 | | private: |
185 | | mutable StdMutex m_cs; // Can not use Mutex from sync.h because in debug mode it would cause a deadlock when a potential deadlock was detected |
186 | | |
187 | | FILE* m_fileout GUARDED_BY(m_cs) = nullptr; |
188 | | std::list<BufferedLog> m_msgs_before_open GUARDED_BY(m_cs); |
189 | | bool m_buffering GUARDED_BY(m_cs) = true; //!< Buffer messages before logging can be started. |
190 | | size_t m_max_buffer_memusage GUARDED_BY(m_cs){DEFAULT_MAX_LOG_BUFFER}; |
191 | | size_t m_cur_buffer_memusage GUARDED_BY(m_cs){0}; |
192 | | size_t m_buffer_lines_discarded GUARDED_BY(m_cs){0}; |
193 | | |
194 | | //! Manages the rate limiting of each log location. |
195 | | std::shared_ptr<LogRateLimiter> m_limiter GUARDED_BY(m_cs); |
196 | | |
197 | | //! Category-specific log level. Overrides `m_log_level`. |
198 | | std::unordered_map<LogFlags, Level> m_category_log_levels GUARDED_BY(m_cs); |
199 | | |
200 | | //! If there is no category-specific log level, all logs with a severity |
201 | | //! level lower than `m_log_level` will be ignored. |
202 | | std::atomic<Level> m_log_level{DEFAULT_LOG_LEVEL}; |
203 | | |
204 | | /** Log categories bitfield. */ |
205 | | std::atomic<CategoryMask> m_categories{BCLog::NONE}; |
206 | | |
207 | | void FormatLogStrInPlace(std::string& str, LogFlags category, Level level, const std::source_location& source_loc, std::string_view threadname, SystemClock::time_point now, std::chrono::seconds mocktime) const; |
208 | | |
209 | | std::string LogTimestampStr(SystemClock::time_point now, std::chrono::seconds mocktime) const; |
210 | | |
211 | | /** Slots that connect to the print signal */ |
212 | | std::list<std::function<void(const std::string&)>> m_print_callbacks GUARDED_BY(m_cs) {}; |
213 | | |
214 | | /** Send a string to the log output (internal) */ |
215 | | void LogPrintStr_(std::string_view str, std::source_location&& source_loc, BCLog::LogFlags category, BCLog::Level level, bool should_ratelimit) |
216 | | EXCLUSIVE_LOCKS_REQUIRED(m_cs); |
217 | | |
218 | | std::string GetLogPrefix(LogFlags category, Level level) const; |
219 | | |
220 | | public: |
221 | | bool m_print_to_console = false; |
222 | | bool m_print_to_file = false; |
223 | | |
224 | | bool m_log_timestamps = DEFAULT_LOGTIMESTAMPS; |
225 | | bool m_log_time_micros = DEFAULT_LOGTIMEMICROS; |
226 | | bool m_log_threadnames = DEFAULT_LOGTHREADNAMES; |
227 | | bool m_log_sourcelocations = DEFAULT_LOGSOURCELOCATIONS; |
228 | | bool m_always_print_category_level = DEFAULT_LOGLEVELALWAYS; |
229 | | |
230 | | fs::path m_file_path; |
231 | | std::atomic<bool> m_reopen_file{false}; |
232 | | |
233 | | /** Send a string to the log output */ |
234 | | void LogPrintStr(std::string_view str, std::source_location&& source_loc, BCLog::LogFlags category, BCLog::Level level, bool should_ratelimit) |
235 | | EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
236 | | |
237 | | /** Returns whether logs will be written to any output */ |
238 | | bool Enabled() const EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
239 | 4.70M | { |
240 | 4.70M | StdLockGuard scoped_lock(m_cs); |
241 | 4.70M | return m_buffering || m_print_to_console4.62M || m_print_to_file4.62M || !m_print_callbacks.empty()4.62M ; |
242 | 4.70M | } |
243 | | |
244 | | /** Connect a slot to the print signal and return the connection */ |
245 | | std::list<std::function<void(const std::string&)>>::iterator PushBackCallback(std::function<void(const std::string&)> fun) EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
246 | 0 | { |
247 | 0 | StdLockGuard scoped_lock(m_cs); |
248 | 0 | m_print_callbacks.push_back(std::move(fun)); |
249 | 0 | return --m_print_callbacks.end(); |
250 | 0 | } |
251 | | |
252 | | /** Delete a connection */ |
253 | | void DeleteCallback(std::list<std::function<void(const std::string&)>>::iterator it) EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
254 | 0 | { |
255 | 0 | StdLockGuard scoped_lock(m_cs); |
256 | 0 | m_print_callbacks.erase(it); |
257 | 0 | } |
258 | | |
259 | | /** Start logging (and flush all buffered messages) */ |
260 | | bool StartLogging() EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
261 | | /** Only for testing */ |
262 | | void DisconnectTestLogger() EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
263 | | |
264 | | void SetRateLimiting(std::shared_ptr<LogRateLimiter> limiter) EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
265 | 0 | { |
266 | 0 | StdLockGuard scoped_lock(m_cs); |
267 | 0 | m_limiter = std::move(limiter); |
268 | 0 | } |
269 | | |
270 | | /** Disable logging |
271 | | * This offers a slight speedup and slightly smaller memory usage |
272 | | * compared to leaving the logging system in its default state. |
273 | | * Mostly intended for libbitcoin-kernel apps that don't want any logging. |
274 | | * Should be used instead of StartLogging(). |
275 | | */ |
276 | | void DisableLogging() EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
277 | | |
278 | | void ShrinkDebugFile(); |
279 | | |
280 | | std::unordered_map<LogFlags, Level> CategoryLevels() const EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
281 | 0 | { |
282 | 0 | StdLockGuard scoped_lock(m_cs); |
283 | 0 | return m_category_log_levels; |
284 | 0 | } |
285 | | void SetCategoryLogLevel(const std::unordered_map<LogFlags, Level>& levels) EXCLUSIVE_LOCKS_REQUIRED(!m_cs) |
286 | 0 | { |
287 | 0 | StdLockGuard scoped_lock(m_cs); |
288 | 0 | m_category_log_levels = levels; |
289 | 0 | } |
290 | | bool SetCategoryLogLevel(std::string_view category_str, std::string_view level_str) EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
291 | | |
292 | 0 | Level LogLevel() const { return m_log_level.load(); } |
293 | 0 | void SetLogLevel(Level level) { m_log_level = level; } |
294 | | bool SetLogLevel(std::string_view level); |
295 | | |
296 | 0 | CategoryMask GetCategoryMask() const { return m_categories.load(); } |
297 | | |
298 | | void EnableCategory(LogFlags flag); |
299 | | bool EnableCategory(std::string_view str); |
300 | | void DisableCategory(LogFlags flag); |
301 | | bool DisableCategory(std::string_view str); |
302 | | |
303 | | bool WillLogCategory(LogFlags category) const; |
304 | | bool WillLogCategoryLevel(LogFlags category, Level level) const EXCLUSIVE_LOCKS_REQUIRED(!m_cs); |
305 | | |
306 | | /** Returns a vector of the log categories in alphabetical order. */ |
307 | | std::vector<LogCategory> LogCategoriesList() const; |
308 | | /** Returns a string with the log categories in alphabetical order. */ |
309 | | std::string LogCategoriesString() const |
310 | 77.7k | { |
311 | 2.17M | return util::Join(LogCategoriesList(), ", ", [&](const LogCategory& i) { return i.category; }); |
312 | 77.7k | }; |
313 | | |
314 | | //! Returns a string with all user-selectable log levels. |
315 | | std::string LogLevelsString() const; |
316 | | |
317 | | //! Returns the string representation of a log level. |
318 | | static std::string LogLevelToStr(BCLog::Level level); |
319 | | |
320 | | bool DefaultShrinkDebugFile() const; |
321 | | }; |
322 | | |
323 | | } // namespace BCLog |
324 | | |
325 | | BCLog::Logger& LogInstance(); |
326 | | |
327 | | /** Return true if log accepts specified category, at the specified level. */ |
328 | | static inline bool LogAcceptCategory(BCLog::LogFlags category, BCLog::Level level) |
329 | 18.8M | { |
330 | 18.8M | return LogInstance().WillLogCategoryLevel(category, level); |
331 | 18.8M | } Unexecuted instantiation: addition_overflow.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE addrman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 85.3k | { | 330 | 85.3k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 85.3k | } |
Unexecuted instantiation: autofile.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE banman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 38.8k | { | 330 | 38.8k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 38.8k | } |
Unexecuted instantiation: base_encode_decode.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: bip324.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: bitdeque.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: bitset.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: block.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: block_header.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: block_index.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: blockfilter.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: bloom_filter.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: buffered_file.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: chain.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: checkqueue.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: cluster_linearize.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: cmpctblock.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coins_view.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coinscache_sim.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: connman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_aes256.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_aes256cbc.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_chacha20.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_chacha20poly1305.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_common.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_diff_fuzz_chacha20.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_hkdf_hmac_sha256_l32.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypto_poly1305.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: cuckoocache.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: deserialize.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: feefrac.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: fee_rate.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: feeratediagram.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: fees.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: flatfile.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: float.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: golomb_rice.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: headerssync.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: http_request.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: i2p.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: integer.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: key.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: kitchen_sink.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: load_external_block_file.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: merkle.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: merkleblock.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: message.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: miniscript.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: minisketch.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mini_miner.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: muhash.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: multiplication_overflow.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE net.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 1.55M | { | 330 | 1.55M | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 1.55M | } |
Unexecuted instantiation: net_permissions.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: netaddress.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: netbase_dns_lookup.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: node_eviction.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: p2p_handshake.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: p2p_headers_presync.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: p2p_transport_serialization.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: pcp.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: package_eval.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: parse_hd_keypath.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: partially_downloaded_block.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: policy_estimator.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: policy_estimator_io.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: poolresource.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: pow.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: prevector.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: primitives_transaction.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: process_message.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: process_messages.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: protocol.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: psbt.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: random.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: rbf.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: rolling_bloom_filter.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: rpc.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_assets_test_minimizer.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_descriptor_cache.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_flags.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_format.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_interpreter.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_ops.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_sigcache.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: script_sign.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: scriptnum_ops.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: secp256k1_ec_seckey_import_export_der.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: secp256k1_ecdsa_signature_parse_der_lax.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: signature_checker.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: signet.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: socks5.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: span.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: string.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: strprintf.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: system.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: torcontrol.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: transaction.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txdownloadman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: tx_in.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: tx_out.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: tx_pool.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txgraph.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txorphan.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txrequest.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: utxo_snapshot.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: utxo_total_supply.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: validation_load_mempool.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: vecdeque.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: versionbits.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coincontrol.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coinselection.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: crypter.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: scriptpubkeyman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: spend.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: wallet_bdb_parser.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mempool.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: util.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: chainparams.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coins.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: bloom.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: config.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: netif.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: core_read.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: core_write.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: external_signer.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: common.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: net_types.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: netbase.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: request.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: signingprovider.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: asmap.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: batchpriority.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: exception.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: fs_helpers.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: sock.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: thread.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: logging.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: streams.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: db.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: dump.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: external_signer_scriptpubkeyman.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: feebumper.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: interfaces.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: load.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: migrate.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: receive.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: addresses.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: backup.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: encrypt.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: signmessage.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: transactions.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: wallet.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: sqlite.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: walletdb.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: walletutil.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mining.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: setup_common.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE txmempool.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 646k | { | 330 | 646k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 646k | } |
validation.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 3.13M | { | 330 | 3.13M | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 3.13M | } |
Unexecuted instantiation: addrdb.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE blockencodings.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 1.25M | { | 330 | 1.25M | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 1.25M | } |
dbwrapper.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 495k | { | 330 | 495k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 495k | } |
Unexecuted instantiation: httprpc.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: httpserver.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: base.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: blockfilterindex.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coinstatsindex.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txindex.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: init.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coinstats.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: context.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mapport.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE net_processing.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 9.50M | { | 330 | 9.50M | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 9.50M | } |
Unexecuted instantiation: netgroup.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: abort.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: blockmanager_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: blockstorage.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: caches.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: chainstate.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: chainstatemanager_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coin.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: coins_view_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: database_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: kernel_notifications.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mempool_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mempool_persist.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: mempool_persist_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: miner.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: peerman_args.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE timeoffsets.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 70.4k | { | 330 | 70.4k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 70.4k | } |
txdownloadman_impl.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 308k | { | 330 | 308k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 308k | } |
Unexecuted instantiation: txorphanage.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txreconciliation.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: noui.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: truc_policy.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: rest.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: blockchain.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: node.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: rawtransaction.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: server.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: server_util.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: txoutproof.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Unexecuted instantiation: sigcache.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE txdb.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 28.4k | { | 330 | 28.4k | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 28.4k | } |
validationinterface.cpp:_ZL17LogAcceptCategoryN5BCLog8LogFlagsENS_5LevelE Line | Count | Source | 329 | 1.71M | { | 330 | 1.71M | return LogInstance().WillLogCategoryLevel(category, level); | 331 | 1.71M | } |
|
332 | | |
333 | | /** Return true if str parses as a log category and set the flag */ |
334 | | bool GetLogCategory(BCLog::LogFlags& flag, std::string_view str); |
335 | | |
336 | | template <typename... Args> |
337 | | inline void LogPrintFormatInternal(std::source_location&& source_loc, BCLog::LogFlags flag, BCLog::Level level, bool should_ratelimit, util::ConstevalFormatString<sizeof...(Args)> fmt, const Args&... args) |
338 | 4.70M | { |
339 | 4.70M | if (LogInstance().Enabled()) { |
340 | 77.7k | std::string log_msg; |
341 | 77.7k | try { |
342 | 77.7k | log_msg = tfm::format(fmt, args...); |
343 | 77.7k | } catch (tinyformat::format_error& fmterr) { |
344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; |
345 | 0 | } |
346 | 77.7k | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); |
347 | 77.7k | } |
348 | 4.70M | } _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 687k | { | 339 | 687k | if (LogInstance().Enabled()) { | 340 | 38.8k | std::string log_msg; | 341 | 38.8k | try { | 342 | 38.8k | log_msg = tfm::format(fmt, args...); | 343 | 38.8k | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 38.8k | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 38.8k | } | 348 | 687k | } |
_Z22LogPrintFormatInternalIJiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 311k | { | 339 | 311k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 311k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEExxiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 119k | { | 339 | 119k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 119k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_S6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 219k | { | 339 | 219k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 219k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJtNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEtS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEtEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJhEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__121__quoted_output_proxyIcNS0_11char_traitsIcEEEEiEEvONS0_15source_locationEN5BCLog8LogFlagsENS7_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__121__quoted_output_proxyIcNS0_11char_traitsIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS7_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJNSt3__117basic_string_viewIcNS0_11char_traitsIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS7_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 77.7k | { | 339 | 77.7k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 77.7k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcjS1_yxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJyEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 38.8k | { | 339 | 38.8k | if (LogInstance().Enabled()) { | 340 | 38.8k | std::string log_msg; | 341 | 38.8k | try { | 342 | 38.8k | log_msg = tfm::format(fmt, args...); | 343 | 38.8k | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 38.8k | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 38.8k | } | 348 | 38.8k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJiPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPKcEEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA7_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcS1_EEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA8_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA9_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA14_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA5_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJA16_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 454 | { | 339 | 454 | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 454 | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJA12_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA16_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmNSt3__121__quoted_output_proxyIcNS0_11char_traitsIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS7_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiiiiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_iiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_mEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJimNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJiiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 77.7k | { | 339 | 77.7k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 77.7k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEmEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEmmmmjEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEddEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmPKciEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcimEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA6_ciEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxxyNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxxxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEES8_EEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEhiEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEhS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJdEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJdNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA17_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEExEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA3_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEdEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 1.47M | { | 339 | 1.47M | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 1.47M | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEjxEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEjS6_S6_xEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEES8_S8_EEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA9_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJA17_cbEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 38.8k | { | 339 | 38.8k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 38.8k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEmxEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA30_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEExEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxxmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJ12ServiceFlagsS0_NSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEbxEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiibxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS0_6atomicIiEES8_S6_bxS6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_iNS0_6atomicIiEExS6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 47.3k | { | 339 | 47.3k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 47.3k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJixEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_xEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 640k | { | 339 | 640k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 640k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJmyyxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPKcxEEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEExEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA20_cxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmjNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEixEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEmjEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA15_cxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEA17_cEEvONS0_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_mmEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_xS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_ixEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJixNSt3__16atomicIiEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEENS0_6atomicIyEEymEEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJhNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjjNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEjS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA16_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEjEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA16_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEjPKcS9_EEvONS1_15source_locationEN5BCLog8LogFlagsENSC_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEExEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cmNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_xEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cxNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEixEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmmiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA19_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA19_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJ14ChainstateRoleiiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJ14ChainstateRoleyyxiiiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJyNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA15_ciEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA18_ciEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJN4node13BlockfileTypeENS0_15BlockfileCursorEEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEijEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJibiEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEjyEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiyyEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxxxxxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJddmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxyxyEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJdiiddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEExEEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_xmmEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_jEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxjjEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjjEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxbEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJidddddfddddddfddddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEllEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjmjjmjPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmdEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJmmjEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 77.7k | { | 339 | 77.7k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 77.7k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEfEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__117basic_string_viewIcNS0_11char_traitsIcEEEENS0_12basic_stringIcS3_NS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPKcS6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA21_cmNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmxxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_S6_S6_S6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJmmxxEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_S6_iidyS6_ddjS6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 36.2k | { | 339 | 36.2k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 36.2k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_PKcEEvONS0_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA27_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJA18_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEidS7_EEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 648k | { | 339 | 648k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 648k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJdddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKciNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEEEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJjdddddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiddddEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcbbbbEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA22_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA14_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJA11_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_EEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 161k | { | 339 | 161k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 161k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJA42_cEEvONSt3__115source_locationEN5BCLog8LogFlagsENS4_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJiyyA13_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEA42_cEEvONS1_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA18_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA18_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_EEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJidEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 5.28k | { | 339 | 5.28k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 5.28k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJxdEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ _Z22LogPrintFormatInternalIJA12_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 177 | { | 339 | 177 | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 177 | } |
_Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiS6_dEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Line | Count | Source | 338 | 38.8k | { | 339 | 38.8k | if (LogInstance().Enabled()) { | 340 | 0 | std::string log_msg; | 341 | 0 | try { | 342 | 0 | log_msg = tfm::format(fmt, args...); | 343 | 0 | } catch (tinyformat::format_error& fmterr) { | 344 | 0 | log_msg = "Error \"" + std::string{fmterr.what()} + "\" while formatting log message: " + fmt.fmt; | 345 | 0 | } | 346 | 0 | LogInstance().LogPrintStr(log_msg, std::move(source_loc), flag, level, should_ratelimit); | 347 | 0 | } | 348 | 38.8k | } |
Unexecuted instantiation: _Z22LogPrintFormatInternalIJiNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_EEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA17_cPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA22_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_EEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA22_cyPKcEEvONSt3__115source_locationEN5BCLog8LogFlagsENS6_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEdEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJxfmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS3_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJymNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEES6_iEEvONS0_15source_locationEN5BCLog8LogFlagsENS9_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA24_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_PKcEEvONS1_15source_locationEN5BCLog8LogFlagsENSC_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEES8_bEEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA16_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEiEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEiEEvONS2_15source_locationEN5BCLog8LogFlagsENSB_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJPKcjmEEvONSt3__115source_locationEN5BCLog8LogFlagsENS5_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA13_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES7_EEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ Unexecuted instantiation: _Z22LogPrintFormatInternalIJA17_cNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEEEvONS1_15source_locationEN5BCLog8LogFlagsENSA_5LevelEbN4util21ConstevalFormatStringIXsZT_EEEDpRKT_ |
349 | | |
350 | 4.70M | #define LogPrintLevel_(category, level, should_ratelimit, ...) LogPrintFormatInternal(std::source_location::current(), category, level, should_ratelimit, __VA_ARGS__167k ) |
351 | | |
352 | | // Log unconditionally. Uses basic rate limiting to mitigate disk filling attacks. |
353 | | // Be conservative when using functions that unconditionally log to debug.log! |
354 | | // It should not be the case that an inbound peer can fill up a user's storage |
355 | | // with debug.log entries. |
356 | 4.50M | #define LogInfo(...) LogPrintLevel_(BCLog::LogFlags::ALL, BCLog::Level::Info, /*should_ratelimit=*/true, __VA_ARGS__) |
357 | 0 | #define LogWarning(...) LogPrintLevel_(BCLog::LogFlags::ALL, BCLog::Level::Warning, /*should_ratelimit=*/true, __VA_ARGS__) |
358 | 162k | #define LogError(...) LogPrintLevel_(BCLog::LogFlags::ALL, BCLog::Level::Error, /*should_ratelimit=*/true, __VA_ARGS__) |
359 | | |
360 | | // Deprecated unconditional logging. |
361 | 2.84M | #define LogPrintf(...) LogInfo(__VA_ARGS__) |
362 | | |
363 | | // Use a macro instead of a function for conditional logging to prevent |
364 | | // evaluating arguments when logging for the category is not enabled. |
365 | | |
366 | | // Log by prefixing the output with the passed category name and severity level. This can either |
367 | | // log conditionally if the category is allowed or unconditionally if level >= BCLog::Level::Info |
368 | | // is passed. If this function logs unconditionally, logging to disk is rate-limited. This is |
369 | | // important so that callers don't need to worry about accidentally introducing a disk-fill |
370 | | // vulnerability if level >= Info is used. Additionally, users specifying -debug are assumed to be |
371 | | // developers or power users who are aware that -debug may cause excessive disk usage due to logging. |
372 | | #define LogPrintLevel(category, level, ...) \ |
373 | 18.4M | do { \ |
374 | 18.4M | if (LogAcceptCategory((category), (level))) { \ |
375 | 0 | bool rate_limit{level >= BCLog::Level::Info}; \ |
376 | 0 | LogPrintLevel_(category, level, rate_limit, __VA_ARGS__); \ |
377 | 0 | } \ |
378 | 18.4M | } while (0) |
379 | | |
380 | | // Log conditionally, prefixing the output with the passed category name. |
381 | 18.4M | #define LogDebug(category, ...) LogPrintLevel(category, BCLog::Level::Debug, __VA_ARGS__) |
382 | 0 | #define LogTrace(category, ...) LogPrintLevel(category, BCLog::Level::Trace, __VA_ARGS__) |
383 | | |
384 | | #endif // BITCOIN_LOGGING_H |