[#BCLog]
= BCLog
:mrdocs:

Bitcoin Core logging facilities&colon; log categories and their bit flags&period;

== Types

[cols="1,4"]
|===
| Name| Description
| xref:BCLog/LogRateLimiter.adoc[`LogRateLimiter`] 
| Fixed window rate limiter for logging&period;
| xref:BCLog/Logger.adoc[`Logger`] 
| Central logger that formats entries and writes them to the console, a file and callbacks&period;
| xref:BCLog/Timer.adoc[`Timer`] 
| RAII&hyphen;style object that outputs timing information to logs&period;
|===


== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BCLog/CategoryMask.adoc[`CategoryMask`] 
| Bit mask holding a set of BCLog&colon;&colon;LogFlags log categories&period;
| xref:BCLog/Level.adoc[`Level`] 
| Alias for compatibility&period; Prefer util&colon;&colon;log&colon;&colon;Level over BCLog&colon;&colon;Level in new code&period;
|===


== Enums

[cols="1,4"]
|===
| Name| Description
| xref:BCLog/LogFlags.adoc[`LogFlags`] 
| Debug logging categories, each a distinct bit in a CategoryMask&period;
|===


== Variables

[cols="1,4"]
|===
| Name| Description
| xref:BCLog/DEFAULT_LOGRATELIMIT.adoc[`DEFAULT&lowbar;LOGRATELIMIT`] 
| Default for whether log rate limiting is enabled&period;
| xref:BCLog/DEFAULT_LOG_LEVEL.adoc[`DEFAULT&lowbar;LOG&lowbar;LEVEL`] 
| Default global log severity level&period;
| xref:BCLog/DEFAULT_MAX_LOG_BUFFER.adoc[`DEFAULT&lowbar;MAX&lowbar;LOG&lowbar;BUFFER`] 
| buffer up to 1MB of log data prior to StartLogging
| xref:BCLog/RATELIMIT_MAX_BYTES.adoc[`RATELIMIT&lowbar;MAX&lowbar;BYTES`] 
| maximum number of bytes per source location that can be logged within the rate&hyphen;limit window
| xref:BCLog/RATELIMIT_WINDOW.adoc[`RATELIMIT&lowbar;WINDOW`] 
| time window after which log ratelimit stats are reset
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
