Go to the documentation of this file. 1 #ifndef FWCore_MessageService_ThreadSafeLogMessageLoggerScribe_h
2 #define FWCore_MessageService_ThreadSafeLogMessageLoggerScribe_h
22 #include "tbb/concurrent_queue.h"
35 class ELadministrator;
90 std::vector<std::string>
const& destination_names);
100 std::shared_ptr<ELdestination> dest_ctrl,
108 t =
p.template getUntrackedParameter<T>(
id,
def);
111 t =
p.template getParameter<T>(
id);
130 std::vector<edm::propagate_const<std::shared_ptr<std::ofstream>>>
m_file_ps;
131 std::map<std::string, edm::propagate_const<std::ostream*>>
m_stream_ps;
149 #endif // FWCore_MessageService_ThreadSafeLogMessageLoggerScribe_h
value_ptr< MessageLoggerDefaults > m_messageLoggerDefaults
void triggerStatisticsSummaries()
edm::propagate_const< std::shared_ptr< ELadministrator > > m_admin_p
static constexpr int NO_VALUE_SET
void log(ErrorObj *errorobj_p)
static ConfigurableDefaults parseDefaults(edm::ParameterSet const &job_pset)
std::atomic< bool > m_messageBeingSent
void configure_statistics(edm::ParameterSet const &, ConfigurableDefaults const &defaults, vString const &categories, std::vector< std::string > const &destination_names)
bool m_clean_slate_configuration
void parseCategories(std::string const &s, std::vector< std::string > &cats)
void configure_dest(edm::ParameterSet const &job_pset, ConfigurableDefaults const &, vString const &categories, std::shared_ptr< ELdestination > dest_ctrl, edm::ParameterSet const &dest_pset, std::string const &filename)
static T getAparameter(edm::ParameterSet const &p, std::string const &id, T const &def)
void triggerFJRmessageSummary(std::map< std::string, double > &sm)
std::shared_ptr< ELdestination > makeDestinationCtrl(std::string const &filename)
size_t m_waitingThreshold
void configure_errorlog_new(edm::ParameterSet &)
void configure_statistics_dest(edm::ParameterSet const &job_pset, ConfigurableDefaults const &defaults, vString const &categories, edm::ParameterSet const &stat_pset, std::string const &psetname, std::string const &filename)
static constexpr int COMMON_DEFAULT_TIMESPAN
std::map< std::string, edm::propagate_const< std::ostream * > > m_stream_ps
ThreadSafeLogMessageLoggerScribe()
— If queue is NULL, this sets singleThread true
tbb::concurrent_queue< ErrorObj * > m_waitingMessages
std::atomic< int > m_count
std::shared_ptr< ELdestination > m_early_dest
void runCommand(MessageLoggerQ::OpCode opcode, void *operand) override
std::vector< std::shared_ptr< ELstatistics > > m_statisticsDestControls
std::atomic< unsigned long > m_tooManyWaitingMessagesCount
static constexpr int COMMON_DEFAULT_LIMIT
void configure_errorlog(edm::ParameterSet &)
std::string destinationFileName(edm::ParameterSet const &, std::string const &) const
std::vector< std::string > vString
~ThreadSafeLogMessageLoggerScribe() override
void validate(edm::ParameterSet &) const
static constexpr int COMMON_DEFAULT_INTERVAL
std::vector< std::string > configure_ordinary_destinations(edm::ParameterSet const &, ConfigurableDefaults const &defaults, vString const &categories)
int def(FILE *, FILE *, int)
std::vector< edm::propagate_const< std::shared_ptr< std::ofstream > > > m_file_ps
std::atomic< bool > m_purge_mode
std::vector< bool > m_statisticsResets