#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/time.h>
#include <string>
#include <vector>
#include "Logger.h"
Go to the source code of this file.
Namespaces | |
namespace | oasys |
Classes | |
struct | oasys::level2str_t |
class | oasys::Log |
Dynamic Log system implementation. More... | |
struct | oasys::Log::Rule |
Structure used to store a log rule as parsed from the debug file. More... | |
Defines | |
#define | PRINTFLIKE(a, b) |
#define | LOG_DEFAULT_THRESHOLD oasys::LOG_INFO |
#define | LOG_DEFAULT_DBGFILE "~/.debug" |
#define | LOG_MAX_PATHLEN (64) |
#define | LOG_MAX_LINELEN (256) |
#define | log_debug(p, args...) |
The set of macros below are implemented for more efficient implementation of logging functions. | |
#define | __log_debug(p, args...) |
#define | log_info(p, args...) |
#define | __log_info(p, args...) |
#define | log_notice(p, args...) |
#define | __log_notice(p, args...) |
#define | log_warn(p, args...) |
#define | __log_warn(p, args...) |
#define | log_err(p, args...) |
#define | __log_err(p, args...) |
#define | log_crit(p, args...) |
#define | __log_crit(p, args...) |
#define | log_always(p, args...) |
#define | __log_always(p, args...) |
Enumerations | |
enum | oasys::log_level_t { oasys::LOG_INVALID = -1, oasys::LOG_DEBUG = 1, oasys::LOG_INFO = 2, oasys::LOG_NOTICE = 3, oasys::LOG_WARN = 4, oasys::LOG_ERR = 5, oasys::LOG_CRIT = 6, oasys::LOG_ALWAYS = 7 } |
Functions | |
const char * | oasys::level2str (log_level_t level) |
log_level_t | oasys::str2level (const char *level) |
void | oasys::__log_assert (bool x, const char *what, const char *file, int line) |
int | oasys::vlogf (const char *path, log_level_t level, const char *fmt, va_list ap) |
Global vlogf function. | |
int | oasys::logf (const char *path, log_level_t level, const char *fmt,...) |
Global logf function. | |
int | oasys::log_multiline (const char *path, log_level_t level, const char *msg) |
Global log_multiline function. | |
int | oasys::__logf (log_level_t level, const char *path, const char *fmt,...) |
See the big block comment below for an explanation of the __logf variant. | |
bool | oasys::__log_enabled (log_level_t level, const char *path) |
Global function to determine if the log path is enabled. | |
Variables | |
level2str_t | oasys::log_levelnames [] |
#define __log_always | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_ALWAYS, (p))) ? \ oasys::__logf(oasys::LOG_ALWAYS, (p) , ## args) : 0)
#define __log_crit | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_CRIT, (p))) ? \ oasys::__logf(oasys::LOG_CRIT, (p) , ## args) : 0)
Definition at line 569 of file Log.h.
Referenced by dtnsim::Connectivity::create_conn().
#define __log_debug | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_DEBUG, (p))) ? \ oasys::__logf(oasys::LOG_DEBUG, (p) , ## args) : 0)
#define __log_err | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_ERR, (p))) ? \ oasys::__logf(oasys::LOG_ERR, (p) , ## args) : 0)
Definition at line 561 of file Log.h.
Referenced by oasys::BerkeleyDBStore::db_errcall(), and dtn::GlobalStore::do_init().
#define __log_info | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_INFO, (p))) ? \ oasys::__logf(oasys::LOG_INFO, (p) , ## args) : 0)
#define __log_notice | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_NOTICE, (p))) ? \ oasys::__logf(oasys::LOG_NOTICE, (p) , ## args) : 0)
#define __log_warn | ( | p, | |||
args... | ) |
Value:
((oasys::__log_enabled(oasys::LOG_WARN, (p))) ? \ oasys::__logf(oasys::LOG_WARN, (p) , ## args) : 0)
#define log_always | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_ALWAYS, (p))) ? \ __logf(oasys::LOG_ALWAYS, (p) , ## args) : 0)
Definition at line 573 of file Log.h.
Referenced by dtn::LoggingRegistration::deliver_bundle().
#define log_crit | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_CRIT, (p))) ? \ __logf(oasys::LOG_CRIT, (p) , ## args) : 0)
Definition at line 565 of file Log.h.
Referenced by dtn::BundleDaemon::cancel_custody_timers(), oasys::DurableStoreImpl::create_db_dir(), oasys::DurableStore::create_store(), dtn::BundleDaemon::delete_from_pending(), oasys::Notifier::drain_pipe(), dtn::APIClient::handle_bind(), dtn::APIClient::handle_unbind(), dtn::BundlePayload::init(), oasys::BerkeleyDBStore::init(), dtn::DTNServer::init_datastore(), dtn::DTNServer::init_dir(), dtn::BundlePayload::init_from_store(), dtntunnel::DTNTunnel::init_registration(), dtn::GlobalStore::load(), dtn::DTND::main(), oasys::TypeCollectionInstance< _Collection >::new_object(), dtn::Link::open(), dtn::BundleProtocol::parse_header_blocks(), dtn::UDPConvergenceLayer::send_bundle(), oasys::BerkeleyDBTable::size(), dtn::BundleActions::store_add(), dtn::BundleActions::store_del(), dtn::BundleActions::store_update(), dtn::DTNServer::tidy_dir(), dtn::DTNServer::validate_dir(), and dtn::APIClient::wait_for_bundle().
#define log_debug | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_DEBUG, (p))) ? \ __logf(oasys::LOG_DEBUG, (p) , ## args) : 0)
As noted in the comment above, these macros first check whether logging is enabled on the path and then call the output formatter. As such, all output string formatting and argument calculations are only done if the log path is enabled.
Note that the implementation is slightly confusing due to the need to support the Logger class. Logger implements a logf() and vlogf() function that doesn't take the path as the first parameter, but instead uses an instance variable to keep the path recorded. Thus, the macros need to support both a non-Logger call of the form:
log_debug("/path", "format string %s", "arguments");
and of the form:
log_debug("Logger format string %s", "arguments");
To implement this, the macro calls __log_enabled(path, level) which calls either the Logger member function or the global implementation with whatever the first argument to the macro is. The Logger::__log_enabled() implementation actually ignores this parameter (since it's actually the format string) and just checks whether its logpath_ path is enabled.
In addition, these macros call __logf() instead of logf, and both the global and the Logger class implementation take the log level as the first parameter.
What makes this slightly more complicated is that derived classes of Logger can optionally call logging functions with an explicit path, ignoring the logpath_ instance.
This poses a problem for the macro, since at compile time, it's impossible to distinguish between the following two cases:
log_debug("this is just %s", "a const char* argument"); log_debug("/path", "this is a path %s", "and a const char* argument");
The second call will actually generate a compilation error, since the compiler will assume that the first argument to the macro is the format string (which it isn't). To handle this case, the set of __log_debug style macros always assumes that the path is the first argument and can therefore be used in any context where the path is explicitly provided.
Definition at line 524 of file Log.h.
Referenced by dtn::TCPConvergenceLayer::Connection::accept(), dtn::BluetoothConvergenceLayer::Connection::accept(), dtn::TCPConvergenceLayer::Listener::accepted(), oasys::BerkeleyDBStore::acquire_table(), oasys::Thread::activate_start_barrier(), dtn::BundleList::add_bundle(), dtn::RouteTable::add_entry(), oasys::InitSequencer::add_extra_deps(), dtn::ContactManager::add_link(), dtn::Bundle::add_ref(), oasys::TimerSystem::add_sighandler(), dtn::BundleDaemon::add_to_pending(), dtn::BluetoothConvergenceLayer::ConnectionManager::addListener(), dtn::APIServer::APIServer(), dtn::CLConnection::break_contact(), dtn::CustodyTimerSpec::calculate_timeout(), dtn::BundleActions::cancel_bundle(), dtn::StreamConvergenceLayer::Connection::check_completed(), dtn::FragmentManager::check_completed(), dtn::TableBasedRouter::check_next_hop(), dtn::BundleDaemon::check_registrations(), dtnsim::SimContact::chew_message(), dtnsim::SimContact::chewing_complete(), oasys::OpenFdCache< _Key, _CloseFcn >::close(), dtn::Link::close(), oasys::OpenFdCache< _Key, _CloseFcn >::close_all(), dtnsim::GlueNode::close_contact(), dtn::ConvergenceLayer::close_contact(), dtn::ConnectionConvergenceLayer::close_contact(), dtn::CLConnection::close_contact(), dtn::BluetoothConvergenceLayer::close_contact(), dtn::BundleActions::close_link(), dtn::APIClient::close_session(), dtn::TCPConvergenceLayer::Connection::connect(), oasys::IPSocket::connect(), oasys::BluetoothSocket::connect(), oasys::BluetoothServiceDiscoveryClient::connect(), dtn::BluetoothConvergenceLayer::Connection::connect(), dtn::BluetoothConvergenceLayer::ConnectionManager::connection(), dtn::CLConnection::contact_up(), dtn::TcaRouter::create_route(), dtn::BundleList::del_bundle(), dtn::RouteTable::del_entries(), dtn::RouteTable::del_entries_for_nexthop(), dtn::RouteTable::del_entry(), dtn::ContactManager::del_link(), dtn::Bundle::del_ref(), dtn::BundleDaemon::delete_from_pending(), dtn::LinkStateRouter::LSRegistration::deliver_bundle(), dtn::AdminRegistration::deliver_bundle(), dtn::BundleDaemon::deliver_to_registration(), dtn::TCPConvergenceLayer::Connection::disconnect(), dtn::BundleEventHandler::dispatch_event(), oasys::BluetoothServiceDiscoveryClient::do_search(), oasys::TokenBucket::drain(), oasys::Notifier::drain_pipe(), oasys::TokenBucket::empty(), oasys::OpenFdCache< _Key, _CloseFcn >::evict(), dtnsim::NodeCommand::exec(), dtn::BundleCommand::exec(), dtnsim::GlueNode::execute_router_action(), oasys::SMTPUtils::extract_address(), dtn::LinkScheduleEstimator::extract_schedule(), dtn::ContactManager::find_link_to(), dtn::LinkStateGraph::findNextHop(), dtn::StreamConvergenceLayer::Connection::finish_bundle(), oasys::BufferedOutput::flush(), dtn::BundleProtocol::format_header_blocks(), dtn::TcaRouter::fwd_to_all(), dtn::TableBasedRouter::fwd_to_matching(), dtn::TcaRouter::fwd_to_matching_r(), dtn::TableBasedRouter::fwd_to_nexthop(), dtn::BundleDaemon::generate_status_report(), oasys::OpenFdCache< _Key, _CloseFcn >::get_and_pin(), oasys::FileSystemTable::get_common(), dtn::RouteTable::get_matching(), dtn::RegistrationTable::get_matching(), oasys::IO::get_nonblocking(), dtn::BundleProtocol::get_primary_len(), oasys::BerkeleyDBStore::get_table(), dtn::LinkStateGraph::getMatchingVertex(), dtn::LinkStateGraph::getVertex(), dtn::BluetoothConvergenceLayer::Connection::handle_ack(), dtn::StreamConvergenceLayer::Connection::handle_ack_segment(), dtn::TcaRouter::handle_add_route(), dtn::CLConnection::handle_announce_bundle(), dtn::TcaRouter::handle_anonymous_bundle(), dtn::APIClient::handle_begin_poll(), dtn::TcaRouter::handle_bl_control_bundle(), dtntunnel::TCPTunnel::handle_bundle(), dtn::FloodBundleRouter::handle_bundle_expired(), dtn::TableBasedRouter::handle_bundle_received(), dtn::LinkStateRouter::handle_bundle_received(), dtn::FloodBundleRouter::handle_bundle_received(), dtn::BundleDaemon::handle_bundle_received(), dtn::TableBasedRouter::handle_bundle_transmit_failed(), dtn::TcaRouter::handle_bundle_transmitted(), dtn::TcaRouter::handle_coa(), dtn::TcaRouter::handle_contact_down(), dtn::StreamConvergenceLayer::Connection::handle_contact_initiation(), dtn::TcaRouter::handle_contact_up(), dtn::ContactManager::handle_contact_up(), dtn::StreamConvergenceLayer::Connection::handle_data_segment(), dtn::StreamConvergenceLayer::Connection::handle_data_todo(), dtn::TcaRouter::handle_del_route(), dtn::StreamConvergenceLayer::Connection::handle_end_bundle(), dtn::TcaRouter::handle_get_routes(), dtn::StreamConvergenceLayer::Connection::handle_keepalive(), dtn::TcaRouter::handle_link_available(), dtn::FloodBundleRouter::handle_link_created(), dtn::TcaRouter::handle_link_unavailable(), dtn::ContactManager::handle_link_unavailable(), dtn::APIClient::handle_local_eid(), dtn::TCPConvergenceLayer::Connection::handle_poll_activity(), dtn::StreamConvergenceLayer::Connection::handle_poll_timeout(), dtn::APIClient::handle_recv(), dtn::TcaRouter::handle_register(), dtn::StreamConvergenceLayer::Connection::handle_shutdown(), dtn::TcaRouter::handle_shutdown_request(), dtn::BundleDaemon::handle_shutdown_request(), oasys::TimerSystem::handle_signals(), dtn::StreamConvergenceLayer::Connection::handle_start_bundle(), dtn::TcaRouter::handle_tca_unbound_bundle(), dtn::UDPConvergenceLayer::Sender::init(), dtn::Bundle::init(), dtn::DTNServer::init_commands(), dtn::DTNServer::init_components(), dtn::Registration::init_expiration_timer(), dtn::UDPConvergenceLayer::init_link(), dtn::ConvergenceLayer::init_link(), dtn::ConnectionConvergenceLayer::init_link(), dtn::BluetoothConvergenceLayer::init_link(), dtntunnel::DTNTunnel::init_registration(), dtn::StreamConvergenceLayer::Connection::initiate_contact(), dtn::BundleActions::inject_bundle(), dtn::ConvergenceLayer::interface_down(), dtn::UDPConvergenceLayer::interface_up(), dtn::TCPConvergenceLayer::interface_up(), dtn::ConvergenceLayer::interface_up(), dtn::BluetoothConvergenceLayer::interface_up(), oasys::BufferedInput::internal_read(), oasys::Thread::interrupt(), oasys::BluetoothServiceDiscoveryClient::is_dtn_router(), dtn::BluetoothConvergenceLayer::ConnectionManager::listener(), dtn::GlobalStore::load(), oasys::Mutex::lock(), dtn::log_bundle(), dtn::log_controlbundle(), dtn::LinkScheduleEstimator::log_dist(), dtntunnel::DTNTunnel::main(), oasys::InitSequencer::mark_dep(), dtn::TCAScheme::match(), dtn::DTNScheme::match(), dtn::ContactManager::new_opportunistic_link(), oasys::BluetoothInquiry::next(), dtn::GlobalStore::next_bundleid(), dtn::GlobalStore::next_regid(), dtn::StreamConvergenceLayer::Connection::note_data_rcvd(), dtn::BluetoothConvergenceLayer::Connection::note_data_rcvd(), dtn::StreamConvergenceLayer::Connection::note_data_sent(), oasys::Notifier::Notifier(), oasys::Notifier::notify(), dtn::TcaRouter::on_adv_transmitted(), dtn::TcaRouter::on_ask_transmitted(), dtn::TcaRouter::on_coa_transmitted(), oasys::OnOffNotifier::OnOffNotifier(), dtn::Link::open(), dtn::UDPConvergenceLayer::open_contact(), dtnsim::SimpleNode::open_contact(), dtnsim::SimConvergenceLayer::open_contact(), dtnsim::GlueNode::open_contact(), dtn::ConnectionConvergenceLayer::open_contact(), dtn::BluetoothConvergenceLayer::open_contact(), dtn::BundleActions::open_link(), dtn::BundleProtocol::parse_header_blocks(), dtn::BlockingBundleList::pop_blocking(), oasys::TimerSystem::pop_timer(), dtn::TcaRouter::post_bundle(), dtn::BundleDaemon::post_event(), dtn::LinkScheduleEstimator::print_log(), dtnsim::TrAgent::process(), dtnsim::SimContact::process(), dtnsim::Node::process(), dtnsim::Node::process_bundle_events(), oasys::SMTP::process_cmd(), dtn::CLConnection::process_command(), dtn::UDPConvergenceLayer::Receiver::process_data(), dtn::StreamConvergenceLayer::Connection::process_data(), dtn::FragmentManager::process_for_reassembly(), oasys::SMTP::process_response(), oasys::MemoryTable::put(), oasys::FileSystemTable::put(), oasys::BerkeleyDBTable::put(), oasys::OpenFdCache< _Key, _CloseFcn >::put_and_pin(), oasys::RFCOMMClient::rc_connect(), oasys::BufferedInput::read_bytes(), oasys::BufferedInput::read_line(), oasys::BufferedInput::read_some_bytes(), dtn::BluetoothConvergenceLayer::Connection::recv_announce(), dtn::BluetoothConvergenceLayer::Connection::recv_bundle(), dtn::TCPConvergenceLayer::Connection::recv_data(), dtn::BluetoothConvergenceLayer::Connection::recv_loop(), oasys::Thread::release_start_barrier(), oasys::BerkeleyDBStore::release_table(), dtn::ContactManager::reopen_link(), oasys::BerkeleyDBStore::DeadlockTimer::reschedule(), dtn::UDPConvergenceLayer::Receiver::run(), dtntunnel::TCPTunnel::Connection::run(), dtnsim::Simulator::run(), dtn::FileConvergenceLayer::Scanner::run(), dtn::CLConnection::run(), dtn::BundleDaemon::run(), dtn::BluetoothConvergenceLayer::NeighborDiscovery::run(), dtn::BluetoothConvergenceLayer::Connection::run(), dtn::APIClient::run(), oasys::TimerSystem::run_expired_timers(), oasys::InitSequencer::run_steps(), oasys::TimerSystem::schedule_at(), oasys::RateLimitedSocket::send(), dtn::BluetoothConvergenceLayer::Connection::send_announce(), dtnsim::SimConvergenceLayer::send_bundle(), dtn::NullConvergenceLayer::send_bundle(), dtn::FileConvergenceLayer::send_bundle(), dtn::ConnectionConvergenceLayer::send_bundle(), dtn::BundleActions::send_bundle(), dtn::BluetoothConvergenceLayer::Connection::send_bundle(), dtn::TCPConvergenceLayer::Connection::send_data(), dtn::StreamConvergenceLayer::Connection::send_data_todo(), dtn::StreamConvergenceLayer::Connection::send_keepalive(), dtn::BluetoothConvergenceLayer::Connection::send_loop(), dtn::StreamConvergenceLayer::Connection::send_next_segment(), dtn::StreamConvergenceLayer::Connection::send_pending_acks(), dtn::APIClient::send_response(), oasys::RateLimitedSocket::sendto(), oasys::IO::set_nonblocking(), dtn::Link::set_state(), dtnsim::Connectivity::set_state(), dtn::TableBasedRouter::should_fwd(), dtnsim::SimRegistration::SimRegistration(), oasys::FileSystemTable::size(), oasys::Thread::start(), dtn::DTNServer::start(), dtn::StreamConvergenceLayer::Connection::start_next_bundle(), dtn::BundleActions::store_add(), dtn::BundleActions::store_del(), dtn::BundleActions::store_update(), dtn::TclRegistration::TclRegistration(), dtn::DTNServer::tidy_dir(), oasys::TokenBucket::time_to_fill(), oasys::BerkeleyDBStore::DeadlockTimer::timeout(), oasys::TCPClient::timeout_connect(), oasys::TokenBucket::TokenBucket(), oasys::InitSequencer::topo_sort(), dtn::BundleDaemon::try_delete_from_pending(), oasys::Mutex::try_lock(), dtn::FragmentManager::try_to_reactively_fragment(), oasys::Mutex::unlock(), oasys::OpenFdCache< _Key, _CloseFcn >::unpin(), oasys::TokenBucket::update(), dtn::GlobalStore::update(), dtn::TCAScheme::validate(), dtn::DTNScheme::validate(), dtn::DTNServer::validate_dir(), oasys::OnOffNotifier::wait(), oasys::Notifier::wait(), dtn::APIClient::wait_for_bundle(), dtn::BundlePayload::write_data(), dtn::APIClient::~APIClient(), oasys::BerkeleyDBTable::~BerkeleyDBTable(), dtn::Bundle::~Bundle(), oasys::DurableStore::~DurableStore(), oasys::Mutex::~Mutex(), oasys::Notifier::~Notifier(), and oasys::OnOffNotifier::~OnOffNotifier().
#define LOG_DEFAULT_THRESHOLD oasys::LOG_INFO |
#define log_err | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_ERR, (p))) ? \ __logf(oasys::LOG_ERR, (p) , ## args) : 0)
Definition at line 557 of file Log.h.
Referenced by dtn::BundleDaemon::accept_custody(), dtn::RegistrationTable::add(), dtn::InterfaceTable::add(), dtn::BundleList::add_bundle(), dtn::APIServer::APIServer(), oasys::BerkeleyDBIterator::BerkeleyDBIterator(), oasys::DurableStoreImpl::check_db_dir(), dtn::BundleTimestamp::check_local_clock(), dtn::check_nargs(), dtnsim::SimContact::chewing_complete(), dtn::Link::close(), dtn::BundleActions::close_link(), oasys::BluetoothSocket::connect(), dtn::TCPConvergenceLayer::Connection::Connection(), oasys::FileIOClient::copy_contents(), dtn::TcaRouter::create_link(), dtn::TcaRouter::create_route(), oasys::DurableStore::create_store(), dtn::SDNV::decode(), dtn::RegistrationTable::del(), dtn::InterfaceTable::del(), oasys::FileSystemTable::del(), oasys::BerkeleyDBTable::del(), dtn::BundleList::del_bundle(), dtn::ContactManager::del_link(), oasys::BerkeleyDBStore::del_table(), dtn::BundleDaemon::delete_from_pending(), dtn::LinkStateRouter::LSRegistration::deliver_bundle(), dtn::AdminRegistration::deliver_bundle(), dtn::GlobalStore::do_init(), DTNRecvCommand::exec(), dtn::FileConvergenceLayer::extract_dir(), oasys::BufferedOutput::flush(), dtn::BundleDaemon::generate_custody_signal(), oasys::MemoryTable::get(), oasys::BerkeleyDBTable::get(), oasys::FileSystemTable::get_common(), oasys::MemoryIterator::get_key(), oasys::BerkeleyDBIterator::get_key(), oasys::BerkeleyDBStore::get_meta_table(), oasys::FileSystemStore::get_table(), oasys::BerkeleyDBStore::get_table(), oasys::FileSystemStore::get_table_names(), oasys::BerkeleyDBStore::get_table_names(), oasys::gethostbyname(), dtn::BluetoothConvergenceLayer::Connection::handle_ack(), dtn::StreamConvergenceLayer::Connection::handle_ack_segment(), dtn::APIClient::handle_begin_poll(), dtn::APIClient::handle_bind(), dtntunnel::UDPTunnel::handle_bundle(), dtntunnel::DTNTunnel::handle_bundle(), dtn::StreamConvergenceLayer::Connection::handle_contact_initiation(), dtn::BundleDaemon::handle_custody_timeout(), dtn::StreamConvergenceLayer::Connection::handle_data_segment(), dtn::StreamConvergenceLayer::Connection::handle_data_todo(), dtn::StreamConvergenceLayer::Connection::handle_end_bundle(), dtn::APIClient::handle_find_registration(), dtn::APIClient::handle_handshake(), dtn::BundleDaemon::handle_link_state_change_request(), dtn::ContactManager::handle_link_unavailable(), dtn::APIClient::handle_local_eid(), dtn::APIClient::handle_recv(), dtn::APIClient::handle_register(), dtn::BundleDaemon::handle_registration_added(), dtn::BundleDaemon::handle_registration_expired(), dtn::BundleDaemon::handle_registration_removed(), dtn::BluetoothConvergenceLayer::Connection::handle_reply(), dtn::APIClient::handle_send(), dtn::StreamConvergenceLayer::Connection::handle_start_bundle(), dtn::TcaRouter::handle_tca_unbound_bundle(), dtn::APIClient::handle_unbind(), dtn::APIClient::handle_unregister(), dtn::UDPConvergenceLayer::Sender::init(), oasys::FileSystemStore::init(), dtn::BundlePayload::init(), dtn::UDPConvergenceLayer::init_link(), dtnsim::SimConvergenceLayer::init_link(), dtn::ConnectionConvergenceLayer::init_link(), dtn::BluetoothConvergenceLayer::init_link(), dtn::UDPConvergenceLayer::interface_up(), dtn::TCPConvergenceLayer::interface_up(), dtn::BluetoothConvergenceLayer::interface_up(), oasys::BerkeleyDBTable::key_exists(), dtntunnel::TCPTunnel::kill_connection(), dtn::BundleDaemon::load_bundles(), dtn::BundleDaemon::load_registrations(), dtntunnel::DTNTunnel::main(), main(), dtn::DTND::main(), oasys::FileIOClient::mkstemp(), dtntunnel::TCPTunnel::new_connection(), oasys::BluetoothInquiry::next(), oasys::BerkeleyDBIterator::next(), oasys::Notifier::notify(), dtn::UDPConvergenceLayer::open_contact(), dtn::BundleActions::open_link(), oasys::ExpatXMLParser::parse(), dtn::DTNServer::parse_conf_file(), dtn::BundleProtocol::parse_header_blocks(), dtn::TCPConvergenceLayer::parse_link_params(), dtn::TCPConvergenceLayer::parse_nexthop(), dtn::UDPConvergenceLayer::Receiver::process_data(), dtn::StreamConvergenceLayer::Connection::process_data(), oasys::MemoryTable::put(), oasys::FileSystemTable::put(), oasys::BerkeleyDBTable::put(), oasys::RFCOMMServerThread::rc_bind(), oasys::RFCOMMClient::rc_connect(), dtn::ConnectionConvergenceLayer::reconfigure_link(), dtn::BluetoothConvergenceLayer::Connection::recv_bundle(), dtn::BluetoothConvergenceLayer::Connection::recv_contact_header(), dtn::TCPConvergenceLayer::Connection::recv_data(), dtn::BluetoothConvergenceLayer::Connection::recv_loop(), oasys::Log::redirect_stdio(), dtn::BundleDaemon::release_custody(), dtn::BundlePayload::reopen_file(), dtn::ContactManager::reopen_link(), dtntunnel::UDPTunnel::Listener::run(), dtn::UDPConvergenceLayer::Receiver::run(), dtntunnel::TCPTunnel::Connection::run(), dtn::FileConvergenceLayer::Scanner::run(), dtn::CLConnection::run(), dtn::BundleDaemon::run(), dtn::BluetoothConvergenceLayer::NeighborDiscovery::run(), dtn::BluetoothConvergenceLayer::Connection::run(), dtn::APIClient::run(), dtn::UDPConvergenceLayer::Sender::send_bundle(), dtn::FileConvergenceLayer::send_bundle(), dtntunnel::DTNTunnel::send_bundle(), dtn::BundleActions::send_bundle(), dtn::BluetoothConvergenceLayer::Connection::send_bundle(), dtn::BluetoothConvergenceLayer::Connection::send_contact_header(), dtn::APIClient::send_response(), oasys::BasicSMTPSender::smtp_error(), oasys::Thread::start(), dtn::TclRegistration::TclRegistration(), oasys::TCPClient::timeout_connect(), dtn::BundleDaemon::try_delete_from_pending(), dtn::RegistrationTable::update(), dtn::FileConvergenceLayer::validate_dir(), dtn::APIClient::wait_for_bundle(), oasys::BerkeleyDBIterator::~BerkeleyDBIterator(), oasys::BerkeleyDBStore::~BerkeleyDBStore(), oasys::DurableStore::~DurableStore(), and oasys::Notifier::~Notifier().
#define log_info | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_INFO, (p))) ? \ __logf(oasys::LOG_INFO, (p) , ## args) : 0)
Definition at line 533 of file Log.h.
Referenced by dtn::BundleDaemon::accept_custody(), dtn::RegistrationTable::add(), dtn::InterfaceTable::add(), dtnsim::SimContact::chew_message(), dtnsim::SimpleNode::chewing_complete(), dtnsim::SimContact::chewing_complete(), dtn::UDPConvergenceLayer::close_contact(), dtnsim::SimContact::close_contact(), dtn::ConnectionConvergenceLayer::close_contact(), dtn::BluetoothConvergenceLayer::close_contact(), dtn::TCPConvergenceLayer::Connection::connect(), dtn::Contact::Contact(), oasys::DurableStore::create_store(), dtn::CustodyTimer::CustodyTimer(), dtn::RegistrationTable::del(), dtn::InterfaceTable::del(), oasys::MemoryStore::del_table(), oasys::BerkeleyDBStore::del_table(), dtnsim::SimRegistration::deliver_bundle(), dtn::LinkStateRouter::LSRegistration::deliver_bundle(), dtn::APIRegistration::deliver_bundle(), dtn::AdminRegistration::deliver_bundle(), dtn::GlobalStore::do_init(), dtnsim::FloodConsumer::enqueue_bundle(), dtnsim::Simdtn2Command::exec(), dtnsim::GlueNode::execute_router_action(), dtn::LinkStateGraph::findNextHop(), dtn::FloodBundleRouter::FloodBundleRouter(), dtnsim::FloodConsumer::FloodConsumer(), dtn::LinkStateGraph::getMatchingVertex(), dtnsim::GlueNode::GlueNode(), dtn::APIClient::handle_begin_poll(), dtn::APIClient::handle_bind(), dtntunnel::UDPTunnel::handle_bundle(), dtntunnel::TCPTunnel::Connection::handle_bundle(), dtntunnel::TCPTunnel::handle_bundle(), dtn::BundleDaemon::handle_bundle_delivered(), dtn::BundleDaemon::handle_bundle_expired(), dtn::BundleDaemon::handle_bundle_received(), dtn::BundleDaemon::handle_bundle_transmit_failed(), dtn::BundleDaemon::handle_bundle_transmitted(), dtn::APIClient::handle_close(), dtn::LinkStateRouter::handle_contact_down(), dtn::BundleDaemon::handle_contact_down(), dtn::NeighborhoodRouter::handle_contact_up(), dtn::LinkStateRouter::handle_contact_up(), dtn::BundleDaemon::handle_contact_up(), dtn::BundleDaemon::handle_custody_signal(), dtn::BundleDaemon::handle_custody_timeout(), dtn::BundleDaemon::handle_link_available(), dtn::BundleDaemon::handle_link_state_change_request(), dtn::BundleDaemon::handle_link_unavailable(), dtn::TCPConvergenceLayer::Connection::handle_poll_activity(), dtn::StreamConvergenceLayer::Connection::handle_poll_timeout(), dtn::BundleDaemon::handle_reassembly_completed(), dtn::APIClient::handle_recv(), dtn::BundleDaemon::handle_registration_added(), dtn::BundleDaemon::handle_registration_expired(), dtn::BundleDaemon::handle_registration_removed(), dtn::BluetoothConvergenceLayer::Connection::handle_reply(), dtn::BundleDaemon::handle_route_add(), dtn::BundleDaemon::handle_route_del(), dtn::APIClient::handle_send(), dtn::BundleDaemon::handle_status_request(), dtn::APIClient::handle_unbind(), oasys::FileSystemStore::init(), oasys::BerkeleyDBStore::init(), oasys::BluetoothInquiry::inquire(), dtn::BundleList::insert_random(), dtn::BluetoothConvergenceLayer::ConnectionManager::listener(), dtn::LoggingRegistration::LoggingRegistration(), dtntunnel::DTNTunnel::main(), main(), dtn::DTND::main(), dtnsim::SimpleNode::message_received(), dtnsim::GlueNode::message_received(), dtn::NeighborhoodRouter::NeighborhoodRouter(), dtnsim::Node::Node(), dtn::DTNServer::parse_conf_file(), oasys::InitSequencer::print_dot(), dtn::FragmentManager::proactively_fragment(), dtnsim::SimpleNode::process(), dtnsim::SimContact::process(), dtnsim::GlueNode::process(), oasys::SMTP::process_cmd(), oasys::SMTP::process_response(), dtn::ProphetRouter::ProphetRouter(), dtn::ConnectionConvergenceLayer::reconfigure_link(), dtn::BluetoothConvergenceLayer::Connection::recv_announce(), dtn::BluetoothConvergenceLayer::Connection::recv_bundle(), dtn::TCPConvergenceLayer::Connection::recv_data(), dtn::BluetoothConvergenceLayer::Connection::recv_loop(), dtn::BundleDaemon::release_custody(), dtntunnel::UDPTunnel::Listener::run(), dtntunnel::TCPTunnel::Connection::run(), dtnsim::Simulator::run(), dtn::FileConvergenceLayer::Scanner::run(), dtn::BluetoothConvergenceLayer::NeighborDiscovery::run(), dtn::BluetoothConvergenceLayer::Connection::run(), dtn::APIClient::run(), dtn::DTND::run_console(), dtn::BluetoothConvergenceLayer::Connection::send_ack(), dtn::BluetoothConvergenceLayer::NeighborDiscovery::send_announce(), dtn::UDPConvergenceLayer::Sender::send_bundle(), dtnsim::TrAgent::send_bundle(), dtntunnel::DTNTunnel::send_bundle(), dtn::BluetoothConvergenceLayer::Connection::send_bundle(), dtn::BluetoothConvergenceLayer::send_bundle(), dtn::TCPConvergenceLayer::Connection::send_data(), dtn::BluetoothConvergenceLayer::Connection::send_keepalive(), dtn::BluetoothConvergenceLayer::Connection::send_loop(), oasys::SMTP::server_session(), dtn::DTNServer::shutdown(), dtnsim::SimContact::SimContact(), dtn::TcaRouter::TcaRouter(), dtn::TclRegistration::TclRegistration(), dtn::CustodyTimer::timeout(), dtn::RegistrationTable::update(), oasys::BerkeleyDBStore::~BerkeleyDBStore(), and oasys::MemoryStore::~MemoryStore().
#define LOG_MAX_LINELEN (256) |
Definition at line 131 of file Log.h.
Referenced by oasys::Log::log_multiline(), and oasys::Log::vlogf().
#define LOG_MAX_PATHLEN (64) |
Definition at line 130 of file Log.h.
Referenced by oasys::Log::log_multiline(), and oasys::Log::vlogf().
#define log_notice | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_NOTICE, (p))) ? \ __logf(oasys::LOG_NOTICE, (p) , ## args) : 0)
Definition at line 541 of file Log.h.
Referenced by dtn::BluetoothConvergenceLayer::Connection::break_contact(), dtn::DTNServer::close_datastore(), oasys::DurableStoreImpl::create_db_dir(), dtn::BundleDaemon::handle_bundle_received(), dtn::BundleDaemon::handle_custody_signal(), dtn::BundleDaemon::handle_shutdown_request(), oasys::FileSystemStore::init_database(), dtntunnel::DTNTunnel::init_registration(), dtn::BundleDaemon::load_bundles(), dtntunnel::DTNTunnel::main(), main(), dtn::DTND::main(), oasys::DurableStoreImpl::prune_db_dir(), dtn::DTND::seed_random(), dtn::DTNServer::shutdown(), oasys::FileSystemStore::tidy_database(), dtn::DTNServer::tidy_dir(), and dtn::DTNServer::~DTNServer().
#define log_warn | ( | p, | |||
args... | ) |
Value:
((__log_enabled(oasys::LOG_WARN, (p))) ? \ __logf(oasys::LOG_WARN, (p) , ## args) : 0)
Definition at line 549 of file Log.h.
Referenced by oasys::InitSequencer::add_step(), dtn::BundleDaemon::add_to_pending(), dtn::BluetoothConvergenceLayer::Connection::break_contact(), oasys::OpenFdCache< _Key, _CloseFcn >::close_all(), dtn::CLConnection::close_contact(), oasys::FileSystemTable::del(), oasys::FileSystemStore::del_table(), dtn::LinkStateRouter::LSRegistration::deliver_bundle(), dtn::AdminRegistration::deliver_bundle(), oasys::Notifier::drain_pipe(), oasys::OpenFdCache< _Key, _CloseFcn >::evict(), dtn::StreamConvergenceLayer::Connection::finish_bundle(), oasys::BerkeleyDBStore::get_table(), dtn::BundleDaemon::handle_bundle_received(), dtn::StreamConvergenceLayer::Connection::handle_contact_initiation(), dtn::BundleDaemon::handle_custody_signal(), dtn::ContactManager::handle_link_available(), dtn::BundleDaemon::handle_link_state_change_request(), oasys::FileSystemStore::init_database(), dtn::Registration::init_expiration_timer(), dtn::StreamConvergenceLayer::Connection::initiate_contact(), dtn::TCAScheme::match(), dtn::DTNScheme::match(), oasys::Notifier::notify(), dtn::DTNServer::parse_conf_file(), dtn::BundleProtocol::parse_header_blocks(), dtn::IPConvergenceLayerUtils::parse_nexthop(), dtn::IPConvergenceLayer::parse_nexthop(), dtn::BluetoothConvergenceLayer::parse_nexthop(), oasys::TimerSystem::pop_timer(), oasys::SMTP::process_cmd(), dtn::StreamConvergenceLayer::Connection::process_data(), oasys::SMTP::process_response(), oasys::DurableStoreImpl::prune_db_dir(), oasys::FileSystemTable::put(), dtn::BluetoothConvergenceLayer::Connection::recv_bundle(), dtn::BluetoothConvergenceLayer::Connection::recv_contact_header(), dtn::FileConvergenceLayer::Scanner::run(), dtn::BundleDaemon::run(), dtn::APIClient::run(), oasys::InitSequencer::run_steps(), oasys::SMTP::server_session(), dtn::StreamConvergenceLayer::Connection::start_next_bundle(), and oasys::BerkeleyDBStore::DeadlockTimer::timeout().