Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Class syslog_backend

Boost , Chapter 1. Boost.Log v2 , Sinks

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Class syslog_backend

boost::log::sinks::syslog_backend — An implementation of a syslog sink backend.

Synopsis

// In header: <boost/log/sinks/syslog_backend.hpp>

class syslog_backend : public basic_formatted_sink_backend< char > {
public:
  // types
  typedef base_type::char_type   char_type;             // Character type. 
  typedef base_type::string_type string_type;           // String type that is used to pass message test. 
  typedef unspecified            severity_mapper_type;  // Syslog severity level mapper type. 
  // construct/copy/destruct
  syslog_backend();
  template<typename... ArgsT> explicit syslog_backend(ArgsT...const &);
  ~syslog_backend();
  // public member functions
  void set_severity_mapper(severity_mapper_type const &);
  void set_local_address(std::string const &, unsigned short = 514);
  void set_local_address(boost::asio::ip::address const &, 
                         unsigned short = 514);
  void set_target_address(std::string const &, unsigned short = 514);
  void set_target_address(boost::asio::ip::address const &, 
                          unsigned short = 514);
  void consume(record_view const &, string_type const &);
};

Description

Бэкэнд обеспечивает поддержку протокола syslog, определенного в RFC3164. Бэкэнд отправляет записи журнала на удаленный хост через UDP. Имя хоста может быть определено путем вызова метода<set_target_address>. По умолчанию записи журнала будут отправлены в localhost:514. Также можно указать местный адрес, позвонив по методу<set_local_address>. По умолчанию пакеты syslog будут отправляться с любого доступного локального адреса.

Безопасно создавать несколько раковинных бэкэндов с одинаковыми локальными адресами - бэкэнды в процессе будут делиться одним и тем же сокетом. То же самое относится к различным процессам, которые используют бэкэнды syslog для отправки записей из одного сокета. Тем не менее, он не гарантирует работу, если какой-либо сторонний объект использует розетку.

В системах с нативной реализацией syslog предпочтительно использовать POSIX syslog API вместо прямого управления сокетом, чтобы обойти возможные ограничения безопасности, которые могут быть в действии. Для этого нужно передать<use_impl = native>бэкэнд-конструктору. Обратите внимание, однако, что в этом случае у вас будет только один шанс указать syslog объект и процесс идентификации строки - на первой родной syslog бэкэнд строительства. Другие нативные бэкэнды Syslog будут игнорировать эти параметры. Очевидно, что методы<set_local_address>и<set_target_address>не имеют эффекта для нативных бэкэндов. Использование<use_impl = native>на платформах без встроенной поддержки POSIX syslog API не будет иметь никакого эффекта.

syslog_backend public construct/copy/destruct

  1. Конструктор. Установка UDP-подшипника-подшипникаsyslog::user. Это протокол IPv4.

    [ORIG_END] -->
  2. Конструктор. Устанавливает экклюзивную систему, а также параметры. Сопровождение:

    • facility- U-Sket. ** * * * * * * * * * *syslog::user

      <-- [ORIG_BEGIN]
      template<typename...ArgsT>explicitsyslog_backend(ArgsT...const&args);

      Конструктор. Создает бэкэнд раковины с заданными названными параметрами. Поддерживаются следующие названные параметры:

      • facility- Указывает код объекта. Если не указано,syslog::userбудет использоваться.

        [ORIG_END] -->[ORIG_END] -->
      • <use_impl>— указывается реализация бэкэнда. Может быть одним из:

      • <native>- Используйте нативный API-интерфейс, если он доступен. Если нет нативного API, он эквивалентен<udp_socket_based>.

      • <udp_socket_based>- Используйте реализацию на основе сокета UDP, соответствующую спецификации протокола RFC3164. Это дефолт.

      • <ip_version>- Указывает версию протокола IP для использования, в случае если используется реализация на основе сокета. Может быть<v4>(по умолчанию) или<v6>

        .
      • <ident>— строка идентификации процесса. Этот параметр поддерживается только встроенной реализацией syslog.

    • Разрушитель

      <-- [ORIG_BEGIN]
      ~syslog_backend();

      Разрушитель

      [ORIG_END] -->[ORIG_END] -->

syslog_backend public member functions

  1. Техподготовка, экипировка, экипировка

    [ORIG_END] -->
  2. Подземная подстанция, расположенная по адресу хоста, ????

    Примечание

[!-- [ORIG_BE Метод устанавливает локальное имя хоста, из которого будут отправлены записи журнала. Имя хоста решено для получения конечного IP-адреса.

[Note]Примечание

Не имеет эффекта, если бэкэнд был построен для использования нативного syslog API

Параметры:

Местный адрес

port

[ORIG_END] ...[ORIG_END] -->
  • voidset_local_address(boost::asio::ip::addressconst&addr,
                          unsignedshortport=514);

    Метод устанавливает местный адрес, с которого будут отправлены записи журнала.

    [Note]Примечание

    Не имеет эффекта, если бэкэнд был построен для использования нативного syslog API

    Параметры:

    addr

    Местный адрес

    port

    Номер местного порта

  • Подпрограмма называется "Радиостанция" (англ.)русск..

    [Note]Примечание

    [!-- [ORIG_BEGIN]
    voidset_target_address(std::stringconst&addr,unsignedshortport=514);
    voidset_target_address(std::stringconst&addr,unsignedshortport=514);

    [2 Метод устанавливает удаленное имя хоста, куда будут отправлены записи журнала. Имя хоста решено для получения конечного IP-адреса.

    [Note]Примечание

    Не имеет эффекта, если бэкэнд был построен для использования нативного syslog API

    Параметры:

    addr

    Удаленный адрес хоста

    port

    Номер порта на удаленном хосте

    [ORIG_END] -->[ORIG_END] -->
  • Схема адресной переадресации хоты,

    [Note]Примечание

    Параметры:

    addr

    Удаленный адрес хоста

    port

    [ORIG_END] -->
  • voidconsume(record_viewconst&rec,string_typeconst&formatted_message);

    Способ передает отформатированное сообщение в syslog API или отправляет на сервер syslog


  • PrevUpHomeNext

    Статья Class syslog_backend раздела Chapter 1. Boost.Log v2 Sinks может быть полезна для разработчиков на c++ и boost.




    Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



    :: Главная :: Sinks ::


    реклама


    ©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
    Top.Mail.Ru

    Время компиляции файла: 2024-08-30 11:47:00
    2025-05-19 20:47:02/0.0079469680786133/0