process TEST = {
service = MessageLogger {
vstring destinations = { "detailedInfo.txt"
, "critical.txt"
, "jobdebug.txt"
, "anotherfile.txt"
, "cout"
, "cerr"
}
vstring categories = { "unimportant"
, "trkwarning"
, "serious_matter"
}
PSet critical.txt = { string threshold = "ERROR"
PSet default = { int32 limit = 10
int32 timespan = 180
}
PSet serious_matter = { int32 limit = 100000 }
}
PSet detailedInfo.txt = { string threshold = "INFO"
PSet default = { int32 limit = 10
int32 timespan = 60
}
PSet WARNING = { int32 limit = 100
int32 timespan = 60
}
PSet ERROR = { int32 limit = 100
int32 timespan = 60
}
PSet trkwarning = { int32 limit = 20
int32 timespan = 1200
}
PSet unimportant = { int32 limit = 5 }
PSet serious_matter = { int32 limit = 1000000 }
}
PSet cerr = { string threshold = "WARNING" }
PSet jobdebug.txt = { PSet default = { int32 limit = 1000000 }
}
PSet anotherfile.txt = { PSet serious_matter = { int32 limit = 1000 }
}
PSet default = { int32 limit = 10
int32 timespan = 60
}
}
untracked PSet maxEvents = {untracked int32 input = 10}
path p = { myAnalysisModule }
module myAnalysisModule = ModuleThatIssuesMessages { }
source = EmptySource { }
}
The vstring categories = { ... }
parameter lists the set of ID's that may be configured
specially with regards to limits of how many of each id
will be treated to be a given destination. The message ID
is the string placed as the argument of edm::LogError("ID")
or the other message-issuing functions.
This is a vstring parameter, so the ID's are comma-separated.
For each destination, any or all of the categories listed may be used as
a PSet name, to establish limits and timescales for that destination reacting
to messages of that type.

Mark Fischler
Last modified: Dec 1, 2005