Esempio n. 1
0
        public GraylogSink(GraylogSinkOptions options)
        {
            ISinkComponentsBuilder sinkComponentsBuilder = new SinkComponentsBuilder(options);

            _transport = sinkComponentsBuilder.MakeTransport();
            _converter = sinkComponentsBuilder.MakeGelfConverter();
        }
Esempio n. 2
0
        public ErrorGelfModule(ITransport transport, IGelfConverter converter)
        {
            _transport = transport;
            Converter  = converter;

            _ignoredProperties = new List <string>();
        }
Esempio n. 3
0
        public PeriodicBatchingGraylogSink(GraylogSinkOptions options, int batchSizeLimit, TimeSpan period, int queueLimit) : base(batchSizeLimit, period, queueLimit)
        {
            ISinkComponentsBuilder sinkComponentsBuilder = new SinkComponentsBuilder(options);

            _transport = sinkComponentsBuilder.MakeTransport();
            _converter = sinkComponentsBuilder.MakeGelfConverter();
        }
Esempio n. 4
0
        public GraylogSink(GraylogSinkOptions options)
        {
            IDnsInfoProvider dns = new DnsWrapper();

            IPAddress[] ipAddreses = Task.Run(() => dns.GetHostAddresses(options.HostnameOrAdress)).Result;

            IPAddress ipAdress = ipAddreses.FirstOrDefault(c => c.AddressFamily == AddressFamily.InterNetwork);

            var ipEndpoint = new IPEndPoint(ipAdress, options.Port);

            IDataToChunkConverter chunkConverter = new DataToChunkConverter(new ChunkSettings
            {
                MessageIdGeneratorType = options.MessageGeneratorType
            }, new MessageIdGeneratorResolver());

            var client = new UdpTransportClient(ipEndpoint);

            _transport = options.Transport ?? new UdpTransport(client, chunkConverter);

            string hostName = Dns.GetHostName();

            IDictionary <BuilderType, IMessageBuilder> builders = new Dictionary <BuilderType, IMessageBuilder>
            {
                [BuilderType.Exception] = new ExceptionMessageBuilder(hostName, options),
                [BuilderType.Message]   = new GelfMessageBuilder(hostName, options)
            };

            _converter = options.GelfConverter ?? new GelfConverter(builders);
        }
 public GelfTarget(IEnumerable <ITransport> transports, IGelfConverter converter)
 {
     Transports      = transports;
     Converter       = converter;
     Parameters      = new List <ParameterInfo>();
     _lazyITransport = new Lazy <ITransport>(() =>
     {
         return(Transports.Single(x => x.Scheme.ToUpper() == _endpoint?.Scheme?.ToUpper()));
     });
 }
Esempio n. 6
0
        public GraylogSink(GraylogSinkOptions options)
        {
            _transport = MakeTransport(options);

            string hostName = Dns.GetHostName();

            IDictionary <BuilderType, Lazy <IMessageBuilder> > builders = new Dictionary <BuilderType, Lazy <IMessageBuilder> >
            {
                [BuilderType.Exception] = new Lazy <IMessageBuilder>(() => new ExceptionMessageBuilder(hostName, options)),
                [BuilderType.Message]   = new Lazy <IMessageBuilder>(() => new GelfMessageBuilder(hostName, options))
            };

            _converter = options.GelfConverter ?? new GelfConverter(builders);
        }
Esempio n. 7
0
        public GraylogSink(GraylogSinkOptions options)
        {
            _transport = options.Transport;

            if (_transport == null)
            {
                if (options.UseHttpTransport)
                {
                    _converter = new HttpGelfConverter(options.Facility, options.ShortMessageMaxLength);
                    _transport = new HttpTransport(options.HostnameOrAdress);   // should be in the form http://HostNameOrIp:Port//Gelf
                }
                else
                {
                    IDnsInfoProvider dns        = new DnsWrapper();
                    IPAddress[]      ipAddreses = Task.Run(() => dns.GetHostAddresses(options.HostnameOrAdress)).Result;

                    IPAddress ipAdress = ipAddreses.FirstOrDefault(c => c.AddressFamily == AddressFamily.InterNetwork);

                    var ipEndpoint = new IPEndPoint(ipAdress, options.Port);

                    IDataToChunkConverter chunkConverter = new DataToChunkConverter(new ChunkSettings
                    {
                        MessageIdGeneratorType = options.MessageGeneratorType
                    }, new MessageIdGeneratorResolver());

                    var client = new UdpTransportClient(ipEndpoint);
                    _transport = new UdpTransport(client, chunkConverter);
                }
            }

            string hostName = Dns.GetHostName();

            IDictionary <BuilderType, IMessageBuilder> builders = new Dictionary <BuilderType, IMessageBuilder>
            {
                [BuilderType.Exception] = new ExceptionMessageBuilder(hostName, options),
                [BuilderType.Message]   = new GelfMessageBuilder(hostName, options)
            };

            _converter = options.GelfConverter ?? new GelfConverter(builders);
        }
        public IGelfConverter MakeGelfConverter()
        {
            IGelfConverter converter = _options.GelfConverter ?? new GelfConverter(_builders);

            return(converter);
        }
 public GraylogPeriodicBatchSink(GraylogSinkOptions options)
     : base(options.BatchSizeLimit, options.Period)
 {
     transport = new LazyRetry <ITransport>(() => TransportFactory.FromOptions(options));
     converter = options.GelfConverter ?? GelfConverterFactory.FromOptions(options);
 }
 public GraylogSink(GraylogSinkOptions options)
 {
     transport = new LazyRetry <ITransport>(() => TransportFactory.FromOptions(options));
     converter = options.GelfConverter ?? GelfConverterFactory.FromOptions(options);
 }