![Collaboration graph](classDebugModule__coll__graph.png)
Public Member Functions | |
DebugModule () | |
~DebugModule ()=delete | |
void | prepareToDie () |
void | log (const DebugMessageHeader &, const CompiledDebugMessageBody &) |
void | useCacheLog () |
void | banCacheLogUse () |
Public Attributes | |
CacheLogChannel | cacheLogChannel |
StderrChannel | stderrChannel |
SyslogChannel | syslogChannel |
Detailed Description
Manages private module state that must be available during program startup and (especially) termination. Any non-trivial state objects must be encapsulated here because debugs() may be called before dynamic initialization or after the destruction of static objects in debug.cc.
Constructor & Destructor Documentation
◆ DebugModule()
DebugModule::DebugModule | ( | ) |
Definition at line 435 of file debug.cc.
References DidResetSections, Debug::PrepareToDie(), and ResetSections().
◆ ~DebugModule()
|
delete |
Member Function Documentation
◆ banCacheLogUse()
void DebugModule::banCacheLogUse | ( | ) |
Start using stderr as the primary debugs() destination. Stop waiting for an open cache_log file (if we were doing that).
Definition at line 492 of file debug.cc.
References assert, cacheLogChannel, DebugFile::file(), stderrChannel, StderrChannel::takeOver(), and TheLog.
Referenced by Debug::BanCacheLogUse(), debugOpenLog(), prepareToDie(), and Debug::StopCacheLogUse().
◆ log()
void DebugModule::log | ( | const DebugMessageHeader & | header, |
const CompiledDebugMessageBody & | body | ||
) |
Log the given debugs() message to appropriate channel(s) (eventually). Assumes the message has passed the global section/level filter.
Definition at line 447 of file debug.cc.
References cacheLogChannel, DebugChannel::log(), stderrChannel, and syslogChannel.
Referenced by Debug::LogMessage().
◆ prepareToDie()
void DebugModule::prepareToDie | ( | ) |
Reacts to ongoing program termination (e.g., flushes buffered messages). Call this before logging the termination reason to maximize the chances of that valuable debugs() getting through to the admin.
Definition at line 455 of file debug.cc.
References banCacheLogUse(), cacheLogChannel, DebugChannel::collectingEarlyMessages(), DebugFile::file(), Debug::LogWaitingForIdle(), stderrChannel, DebugChannel::stopEarlyMessageCollection(), syslogChannel, and TheLog.
Referenced by Debug::PrepareToDie().
◆ useCacheLog()
void DebugModule::useCacheLog | ( | ) |
Start using an open cache_log file as the primary debugs() destination. Stop using stderr as a cache_log replacement (if we were doing that).
Definition at line 484 of file debug.cc.
References assert, cacheLogChannel, DebugFile::file(), stderrChannel, StderrChannel::stopCoveringForCacheLog(), DebugChannel::stopEarlyMessageCollection(), and TheLog.
Referenced by debugOpenLog().
Member Data Documentation
◆ cacheLogChannel
CacheLogChannel DebugModule::cacheLogChannel |
Definition at line 320 of file debug.cc.
Referenced by banCacheLogUse(), log(), prepareToDie(), Debug::StopCacheLogUse(), and useCacheLog().
◆ stderrChannel
StderrChannel DebugModule::stderrChannel |
Definition at line 321 of file debug.cc.
Referenced by banCacheLogUse(), log(), prepareToDie(), Debug::SettleStderr(), Debug::StderrEnabled(), and useCacheLog().
◆ syslogChannel
SyslogChannel DebugModule::syslogChannel |
Definition at line 322 of file debug.cc.
Referenced by log(), prepareToDie(), and Debug::SettleSyslog().
The documentation for this class was generated from the following file:
- src/debug/debug.cc
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products