peerplays-fc/include/fc/log/gelf_appender.hpp
abitmore d35e296d29 Initialize max_object_depth in appender config
by setting a default value, for file_appender and gelf_appender.
For issue https://github.com/bitshares/bitshares-core/issues/1392
2018-10-19 15:37:55 +00:00

33 lines
877 B
C++

#pragma once
#include <fc/log/appender.hpp>
#include <fc/log/logger.hpp>
#include <fc/time.hpp>
namespace fc
{
// Log appender that sends log messages in JSON format over UDP
// https://www.graylog2.org/resources/gelf/specification
class gelf_appender : public appender
{
public:
struct config
{
string endpoint = "127.0.0.1:12201";
string host = "fc"; // the name of the host, source or application that sent this message (just passed through to GELF server)
uint32_t max_object_depth = FC_MAX_LOG_OBJECT_DEPTH;
};
gelf_appender(const variant& args);
~gelf_appender();
virtual void log(const log_message& m) override;
private:
class impl;
fc::shared_ptr<impl> my;
};
} // namespace fc
#include <fc/reflect/reflect.hpp>
FC_REFLECT(fc::gelf_appender::config,
(endpoint)(host)(max_object_depth))