Example #1
0
 def __init__(self,
              url,
              exchange='logging.gelf',
              debugging_fields=True,
              extra_fields=True,
              fqdn=False,
              exchange_type='fanout',
              localname=None,
              facility=None,
              virtual_host='/'):
     self.url = url
     parsed = urlparse(url)
     if parsed.scheme != 'amqp':
         raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
     host = parsed.hostname or 'localhost'
     port = _ifnone(parsed.port, 5672)
     virtual_host = virtual_host if not urllib.unquote(
         parsed.path[1:]) else urllib.unquote(parsed.path[1:])
     self.cn_args = {
         'host': '%s:%s' % (host, port),
         'userid': _ifnone(parsed.username, 'guest'),
         'password': _ifnone(parsed.password, 'guest'),
         'virtual_host': virtual_host,
         'insist': False,
     }
     self.exchange = exchange
     self.debugging_fields = debugging_fields
     self.extra_fields = extra_fields
     self.fqdn = fqdn
     self.exchange_type = exchange_type
     self.localname = localname
     self.facility = facility
     self.virtual_host = virtual_host
     SocketHandler.__init__(self, host, port)
     self.addFilter(ExcludeFilter('amqplib'))
Example #2
0
 def __init__(self, host, port=12201, chunk_size=WAN_CHUNK,
              debugging_fields=True, extra_fields=True, fqdn=False,
              localname=None, facility=None, level_names=False, compress=False):
     BaseGELFHandler.__init__(self, host, port, chunk_size,
                              debugging_fields, extra_fields, fqdn,
                              localname, facility, level_names, compress)
     SocketHandler.__init__(self, host, int(port))
    def __init__(self, host='localhost', port=5672, username='******',
                 password='******', exchange='logstash', exchange_type='fanout',
                 virtual_host='/', message_type='logstash', tags=None,
                 durable=False, version=0, extra_fields=True, fqdn=False,
                 facility=None, exchange_routing_key=''):


        # AMQP parameters
        self.host = host
        self.port = port
        self.username = username
        self.password = password
        self.exchange_type = exchange_type
        self.exchange = exchange
        self.exchange_is_durable = durable
        self.virtual_host = virtual_host
        self.routing_key = exchange_routing_key

        SocketHandler.__init__(self, host, port)

        # Extract Logstash paramaters
        self.tags = tags or []
        fn = formatter.LogstashFormatterVersion1 if version == 1 \
            else formatter.LogstashFormatterVersion0
        self.formatter = fn(message_type, tags, fqdn)

        # Standard logging parameters
        self.extra_fields = extra_fields
        self.fqdn = fqdn
        self.facility = facility
Example #4
0
 def __init__(self, url, exchange='logging.gelf', debugging_fields=True,
         extra_fields=True, fqdn=False, exchange_type='fanout', localname=None,
         facility=None, virtual_host='/'):
     self.url = url
     parsed = urlparse(url)
     if parsed.scheme != 'amqp':
         raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
     host = parsed.hostname or 'localhost'
     port = _ifnone(parsed.port, 5672)
     virtual_host = virtual_host if not urllib.unquote(parsed.path[1:]) else urllib.unquote(parsed.path[1:])
     self.cn_args = {
         'host': '%s:%s' % (host, port),
         'userid': _ifnone(parsed.username, 'guest'),
         'password': _ifnone(parsed.password, 'guest'),
         'virtual_host': virtual_host,
         'insist': False,
     }
     self.exchange = exchange
     self.debugging_fields = debugging_fields
     self.extra_fields = extra_fields
     self.fqdn = fqdn
     self.exchange_type = exchange_type
     self.localname = localname
     self.facility = facility
     self.virtual_host = virtual_host
     SocketHandler.__init__(self, host, port)
     self.addFilter(ExcludeFilter('amqplib'))
Example #5
0
 def __init__(self,
              url,
              exchange='logging.gelf',
              exchange_type='fanout',
              virtual_host='/'):
     self.url = url
     parsed = urlparse(url)
     if parsed.scheme != 'amqp':
         raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
     host = parsed.hostname or 'localhost'
     port = _ifnone(parsed.port, 5672)
     virtual_host = virtual_host if not unquote(parsed.path[1:]) \
         else unquote(parsed.path[1:])
     self.cn_args = {
         'host': '%s:%s' % (host, port),
         'userid': _ifnone(parsed.username, 'guest'),
         'password': _ifnone(parsed.password, 'guest'),
         'virtual_host': virtual_host,
         'insist': False,
     }
     self.exchange = exchange
     self.exchange_type = exchange_type
     self.virtual_host = virtual_host
     SocketHandler.__init__(self, host, port)
     self.addFilter(ExcludeFilter('amqp'))
Example #6
0
 def __init__(self, host, port, prefix=''):
     SocketHandler.__init__(self, host, port)
     self.closeOnError = 1
     self.prefix = prefix.format(hostname=socket.getfqdn())
     self.queue = Queue()
     self.thread = Thread(target=self.run)
     self.thread.setDaemon(True)
     self.thread.start()
Example #7
0
    def __init__(self, host, port, **kwargs):
        """
        Logging handler that transforms each record into GELF (graylog extended log format) and sends it over TCP.

        :param host: GELF TCP input host
        :param port: GELF TCP input port
        """

        SocketHandler.__init__(self, host, port)
        BaseHandler.__init__(self, **kwargs)
Example #8
0
    def __init__(self, host, port, **kwargs):
        """
        Logging handler that transforms each record into GELF (graylog extended log format) and sends it over TCP.

        :param host: GELF TCP input host
        :param port: GELF TCP input port
        """

        SocketHandler.__init__(self, host, port)
        BaseHandler.__init__(self, **kwargs)
Example #9
0
 def __init__(self,
              host,
              port,
              use_tls=False,
              cert_reqs=ssl.CERT_NONE,
              ca_certs=None):
     """description of __init__"""
     SocketHandler.__init__(self, host, port)
     self.ca_certs = ca_certs
     self.cert_reqs = cert_reqs
     self.use_tls = use_tls
Example #10
0
    def __init__(self,
                 url,
                 exchange="logging.gelf",
                 exchange_type="fanout",
                 virtual_host="/",
                 routing_key="",
                 ssl=False,
                 heartbeat=0,
                 **kwargs):
        """Initialize the GELFRabbitHandler

        :param url: RabbitMQ URL (ex: amqp://guest:guest@localhost:5672/)
        :type url: str

        :param exchange: RabbitMQ exchange. A queue binding must be defined
            on the server to prevent GELF logs from being dropped.
        :type exchange: str

        :param exchange_type: RabbitMQ exchange type.
        :type exchange_type: str

        :param virtual_host:
        :type virtual_host: str

        :param routing_key:
        :type routing_key: str

        :param ssl: whether to add TLS to the connection
        :type ssl: bool
        """
        self.url = url
        parsed = urlparse(url)
        if parsed.scheme != "amqp":
            raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
        host = parsed.hostname or "localhost"
        port = _ifnone(parsed.port, 5672)
        self.virtual_host = (virtual_host if not unquote(parsed.path[1:]) else
                             unquote(parsed.path[1:]))
        self.cn_args = {
            "host": "%s:%s" % (host, port),
            "userid": _ifnone(parsed.username, "guest"),
            "password": _ifnone(parsed.password, "guest"),
            "virtual_host": self.virtual_host,
            "insist": False,
            "ssl": ssl,
            "heartbeat": heartbeat
        }
        self.exchange = exchange
        self.exchange_type = exchange_type
        self.routing_key = routing_key
        BaseGELFHandler.__init__(self, **kwargs)
        SocketHandler.__init__(self, host, port)
        self.addFilter(ExcludeFilter("amqp"))
Example #11
0
    def __init__(self,
                 host='localhost',
                 port=5672,
                 username='******',
                 password='******',
                 exchange='logstash',
                 exchange_type='fanout',
                 virtual_host='/',
                 message_type='logstash',
                 tags=None,
                 durable=False,
                 passive=False,
                 extra_fields=True,
                 fqdn=False,
                 facility=None,
                 exchange_routing_key='',
                 limit_stacktrace=0,
                 limit_string_fields=0,
                 limit_containers=0):

        # AMQP parameters
        self.host = host
        self.port = port
        self.username = username
        self.password = password
        self.exchange_type = exchange_type
        self.exchange = exchange
        self.exchange_is_durable = durable
        self.declare_exchange_passively = passive
        self.virtual_host = virtual_host
        self.routing_key = exchange_routing_key

        SocketHandler.__init__(self, host, port)

        # Extract Logstash paramaters
        self.tags = tags or []
        self.formatter = formatter.LogstashFormatter(
            message_type,
            tags,
            fqdn,
            limit_stacktrace=limit_stacktrace,
            limit_string_fields=limit_string_fields,
            limit_containers=limit_containers)

        # Standard logging parameters
        self.extra_fields = extra_fields
        self.fqdn = fqdn
        self.facility = facility
Example #12
0
    def __init__(self,
                 url,
                 exchange='logging.gelf',
                 exchange_type='fanout',
                 virtual_host='/',
                 routing_key='',
                 **kwargs):
        """Initialize the GELFRabbitHandler

        :param url: RabbitMQ URL (ex: amqp://guest:guest@localhost:5672/)
        :type url: str

        :param exchange: RabbitMQ exchange. A queue binding must be defined
            on the server to prevent GELF logs from being dropped.
        :type exchange: str

        :param exchange_type: RabbitMQ exchange type.
        :type exchange_type: str

        :param virtual_host:
        :type virtual_host: str

        :param routing_key:
        :type routing_key: str
        """
        self.url = url
        parsed = urlparse(url)
        if parsed.scheme != 'amqp':
            raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
        host = parsed.hostname or 'localhost'
        port = _ifnone(parsed.port, 5672)
        self.virtual_host = virtual_host if not unquote(
            parsed.path[1:]) else unquote(parsed.path[1:])
        self.cn_args = {
            'host': '%s:%s' % (host, port),
            'userid': _ifnone(parsed.username, 'guest'),
            'password': _ifnone(parsed.password, 'guest'),
            'virtual_host': self.virtual_host,
            'insist': False,
        }
        self.exchange = exchange
        self.exchange_type = exchange_type
        self.routing_key = routing_key
        BaseGELFHandler.__init__(self, **kwargs)
        SocketHandler.__init__(self, host, port)
        self.addFilter(ExcludeFilter('amqplib'))
Example #13
0
    def __init__(self, url, exchange='logging.gelf', exchange_type='fanout',
                 virtual_host='/', routing_key='', **kwargs):
        """Initialize the GELFRabbitHandler

        :param url: RabbitMQ URL (ex: amqp://guest:guest@localhost:5672/)
        :type url: str

        :param exchange: RabbitMQ exchange. (default 'logging.gelf').
            A queue binding must be defined on the server to prevent
            log messages from being dropped.
        :type exchange: str

        :param exchange_type: RabbitMQ exchange type (default 'fanout').
        :type exchange_type: str

        :param virtual_host:
        :type virtual_host: str

        :param routing_key:
        :type routing_key: str
        """
        self.url = url
        parsed = urlparse(url)
        if parsed.scheme != 'amqp':
            raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
        host = parsed.hostname or 'localhost'
        port = _ifnone(parsed.port, 5672)
        self.virtual_host = virtual_host if not unquote(
            parsed.path[1:]) else unquote(parsed.path[1:])
        self.cn_args = {
            'host': '%s:%s' % (host, port),
            'userid': _ifnone(parsed.username, 'guest'),
            'password': _ifnone(parsed.password, 'guest'),
            'virtual_host': self.virtual_host,
            'insist': False,
        }
        self.exchange = exchange
        self.exchange_type = exchange_type
        self.routing_key = routing_key
        BaseGELFHandler.__init__(
            self,
            **kwargs
        )
        SocketHandler.__init__(self, host, port)
        self.addFilter(ExcludeFilter('amqplib'))
Example #14
0
    def __init__(self, host, port=12201, **kwargs):
        """Initialize the GELFTCPHandler

        :param host: GELF TCP input host.
        :type host: str

        :param port: GELF TCP input port.
        :type port: int

        .. attention::
            GELF TCP does not support compression due to the use of the null
            byte (``\\0``) as frame delimiter.

            Thus, :class:`.handler.GELFTCPHandler` does not support setting
            ``compress`` to :obj:`True` and is locked to :obj:`False`.
        """
        BaseGELFHandler.__init__(self, compress=False, **kwargs)
        SocketHandler.__init__(self, host, port)
    def __init__(
        self,
        host="localhost",
        port=5672,
        username="******",
        password="******",
        exchange="logstash",
        exchange_type="fanout",
        virtual_host="/",
        message_type="logstash",
        tags=None,
        durable=False,
        passive=False,
        version=0,
        extra_fields=True,
        fqdn=False,
        facility=None,
        exchange_routing_key="",
    ):

        # AMQP parameters
        self.host = host
        self.port = port
        self.username = username
        self.password = password
        self.exchange_type = exchange_type
        self.exchange = exchange
        self.exchange_is_durable = durable
        self.declare_exchange_passively = passive
        self.virtual_host = virtual_host
        self.routing_key = exchange_routing_key

        SocketHandler.__init__(self, host, port)

        # Extract Logstash paramaters
        self.tags = tags or []
        fn = (formatter.LogstashFormatterVersion1
              if version == 1 else formatter.LogstashFormatterVersion0)
        self.formatter = fn(message_type, tags, fqdn)

        # Standard logging parameters
        self.extra_fields = extra_fields
        self.fqdn = fqdn
        self.facility = facility
Example #16
0
    def __init__(self,
                 host,
                 port=12201,
                 chunk_size=WAN_CHUNK,
                 debugging_fields=True,
                 extra_fields=True,
                 fqdn=False,
                 localname=None,
                 facility=None,
                 level_names=False,
                 tls=False,
                 tls_server_name=None,
                 tls_cafile=None,
                 tls_capath=None,
                 tls_cadata=None,
                 tls_client_cert=None,
                 tls_client_key=None,
                 tls_client_password=None):
        BaseGELFHandler.__init__(self, host, port, chunk_size,
                                 debugging_fields, extra_fields, fqdn,
                                 localname, facility, level_names, False)
        SocketHandler.__init__(self, host, int(port))
        self.tls = tls
        if self.tls:
            self.tls_cafile = tls_cafile
            self.tls_capath = tls_capath
            self.tls_cadata = tls_cadata
            self.tls_client_cert = tls_client_cert
            self.tls_client_key = tls_client_key
            self.tls_client_password = tls_client_password

            self.ssl_context = ssl.create_default_context(
                purpose=ssl.Purpose.SERVER_AUTH,
                cafile=self.tls_cafile,
                capath=self.tls_capath,
                cadata=self.tls_cadata)
            self.tls_server_name = tls_server_name
            self.ssl_context.check_hostname = (self.tls_server_name
                                               is not None)
            if self.tls_client_cert is not None:
                self.ssl_context.load_cert_chain(self.tls_client_cert,
                                                 self.tls_client_key,
                                                 self.tls_client_password)
Example #17
0
 def __init__(self, url, exchange='logging.gelf', debugging_fields=True,
         extra_fields=True, fqdn=False):
     self.url = url
     parsed = urlparse(url)
     if parsed.scheme != 'amqp':
         raise ValueError('invalid URL scheme (expected "amqp"): %s' % url)
     host = parsed.hostname or 'localhost'
     port = _ifnone(parsed.port, 5672)
     self.cn_args = {
         'host': '%s:%s' % (host, port),
         'username': _ifnone(parsed.username, 'guest'),
         'password': _ifnone(parsed.password, 'guest'),
         'virtual_host': '/',
         'insist': False,
     }
     self.exchange = exchange
     self.debugging_fields = debugging_fields
     self.extra_fields = extra_fields
     self.fqdn = fqdn
     SocketHandler.__init__(self, host, port)
     self.addFilter(ExcludeFilter('amqplib'))
Example #18
0
    def __init__(self,
                 host='localhost',
                 port=5672,
                 username='******',
                 password='******',
                 exchange='logstash',
                 exchange_type='fanout',
                 virtual_host='/',
                 message_type='logstash',
                 tags=None,
                 durable=False,
                 version=0,
                 extra_fields=True,
                 fqdn=False,
                 facility=None,
                 exchange_routing_key=''):

        # AMQP parameters
        self.host = host
        self.port = port
        self.username = username
        self.password = password
        self.exchange_type = exchange_type
        self.exchange = exchange
        self.exchange_is_durable = durable
        self.virtual_host = virtual_host
        self.routing_key = exchange_routing_key

        SocketHandler.__init__(self, host, port)

        # Extract Logstash paramaters
        self.tags = tags or []
        fn = formatter.LogstashFormatterVersion1 if version == 1 \
            else formatter.LogstashFormatterVersion0
        self.formatter = fn(message_type, tags, fqdn)

        # Standard logging parameters
        self.extra_fields = extra_fields
        self.fqdn = fqdn
        self.facility = facility
Example #19
0
 def __init__(self, host, port):
     SocketHandler.__init__(self, host, port)
     #
     # Attemt to create the socket and let flow up the exception
     self.sock = self.makeSocket()
Example #20
0
 def __init__(self, host, port, fname):
     self.filename = fname
     SocketHandler.__init__(self, host, port)
Example #21
0
 def __init__(self, host, port):
     SocketHandler.__init__(self, host, port)
     #
     # Attemt to create the socket and let flow up the exception
     self.sock = self.makeSocket()
Example #22
0
 def __init__(self, host, port, fname):
     self.filename = fname
     SocketHandler.__init__(self, host, port)
Example #23
0
 def __init__(self, host, port):
     """
     Initializes the handler with a specific host address and port.
     """
     SocketHandler.__init__(self, host, port)
     self.closeOnError = False
Example #24
0
 def __init__(self, *args, **kwargs):
     SocketHandler.__init__(self, *args, **kwargs)
     self.retryStart = 0
     self.retryMax = 0
     self.retryFactor = 0
Example #25
0
 def __init__(
     self,
     host,
     port,
 ):
     SocketHandler.__init__()
Example #26
0
 def __init__(self, host, port, keyfile=None, certfile=None, ssl=True):
     SocketHandler.__init__(self, host, port)
     self.keyfile = keyfile
     self.certfile = certfile
     self.ssl = ssl
 def __init__(self, host, port, keyfile=None, certfile=None, ca_certs=None, ssl=True):
   SocketHandler.__init__(self, host, port)
   self.keyfile = keyfile
   self.certfile = certfile
   self.ca_certs = ca_certs
   self.ssl = ssl
Example #28
0
	def __init__(self,source,path,host,port):
		self.path = path
		SocketHandler.__init__(self,host,port)
		header = Header()
		header.name = str(source)
		self.hdr = self._pack16(header.SerializeToString())
Example #29
0
 def __init__(self, host, port, machine_id):
     SocketHandler.__init__(self, host, port)
     self.machine_id = machine_id
Example #30
0
 def __init__(self, *args, **kwargs):
     SocketHandler.__init__(self, *args, **kwargs)
     self.retryStart = 0
     self.retryMax = 0
     self.retryFactor = 0
Example #31
0
 def __init__(self, host, port=5959, message_type='logstash', fqdn=False, version=1):
     SocketHandler.__init__(self, host, port)
     if version == 1:
         self.formatter = formatter.LogstashFormatterVersion1(message_type, [], fqdn)
     else:
         self.formatter = formatter.LogstashFormatterVersion0(message_type, [], fqdn)