A Channel that writes to a file. This class only supports simple log file rotation.
For more features, see the FileChannel class.
Only the message's text is written, followed by a newline.
Log file rotation based on log file size is supported.
If rotation is enabled, the SimpleFileChannel will alternate between two log files. If the size of the primary log file exceeds a specified limit, the secondary log file will be used, and vice versa.
Log rotation is configured with the "rotation" property, which supports the following values:
The path of the (primary) log file can be specified with the "path" property. Optionally, the path of the secondary log file can be specified with the "secondaryPath" property.
If no secondary path is specified, the secondary path will default to <primaryPath>.1.
The flush property specifies whether each log message is flushed immediately to the log file (which may hurt application performance, but ensures that everything is in the log in case of a system crash), Valid values are:
Direct Base Classes: Channel
Creates the FileChannel.
const std::string & path
Creates the FileChannel for a file with the given path.
Closes the FileChannel.
See also: Poco::Channel::close()
Timestamp creationDate() const;
Returns the log file's creation date.
const std::string & name
Returns the value of the property with the given name. See setProperty() for a description of the supported properties.
See also: Poco::Channel::getProperty()
const Message & msg
Logs the given message to the file.
See also: Poco::Channel::log()
Opens the FileChannel and creates the log file if necessary.
See also: Poco::Channel::open()
const std::string & path() const;
Returns the log file's primary path.
const std::string & secondaryPath() const;
Returns the log file's secondary path.
const std::string & name,
const std::string & value
Sets the property with the given name.
The following properties are supported:
See also: Poco::Channel::setProperty()
UInt64 size() const;
Returns the log file's current size in bytes.
const std::string & flush
const std::string & rotation
static const std::string PROP_FLUSH;
static const std::string PROP_PATH;
static const std::string PROP_ROTATION;
static const std::string PROP_SECONDARYPATH;