Esempio n. 1
0
        /// <summary>
        /// Create an instance of the Splunk sink.
        /// </summary>
        /// <param name="batchSizeLimit">The maximum number of log events to send in a single batch.</param>
        /// <param name="period">The time allowed to elapse before a non-empty buffer of events will be flushed.</param>
        /// <param name="connectionInfo">Connection info.</param>
        public SplunkSink(int batchSizeLimit, TimeSpan period, SplunkConnectionInfo connectionInfo)
            : base(batchSizeLimit, period)
        {
            _connectionInfo = connectionInfo;
            _service = new Service(connectionInfo.ServiceArgs);

            _receiveSubmitArgs = new ReceiverSubmitArgs
            {
                Source = _connectionInfo.SplunkSource,
                SourceType = _connectionInfo.SplunkEventType
            };
        }
Esempio n. 2
0
        /// <summary>
        /// Create an instance of the Splunk sink.
        /// </summary>
        /// <param name="batchSizeLimit">The maximum number of log events to send in a single batch.</param>
        /// <param name="period">The time allowed to elapse before a non-empty buffer of events will be flushed.</param>
        /// <param name="connectionInfo">Connection info.</param>
        public SplunkSink(int batchSizeLimit, TimeSpan period, SplunkConnectionInfo connectionInfo)
            : base(batchSizeLimit, period)
        {
            _connectionInfo = connectionInfo;
            _service        = new Service(connectionInfo.ServiceArgs);

            _receiveSubmitArgs = new ReceiverSubmitArgs
            {
                Source     = _connectionInfo.SplunkSource,
                SourceType = _connectionInfo.SplunkEventType
            };
        }
Esempio n. 3
0
        private static void Main(string[] args)
        {
            var host = "192.168.93.128";
            var userName = "******";
            var password = "******";

            var connectArgs = new ServiceArgs { Host = host, };

            var splunkConnectionInfoInfo = new SplunkConnectionInfo
            {
                ServiceArgs = connectArgs,
                UserName = userName,
                Password = password,
                SplunkEventType = "Serilog",
                SplunkSource = "Serilog.SplunkSample"
            };

            Log.Logger = new LoggerConfiguration()
                .Enrich.With(new ThreadIdEnricher())
                .WriteTo.ColoredConsole(outputTemplate: OutputTemplate)
                .WriteTo.Splunk(splunkConnectionInfoInfo, 3, TimeSpan.FromSeconds(1))
                .CreateLogger();

            var serilogLogger = Log.ForContext<Program>();
            var username = Environment.UserName;

            serilogLogger.Information("Hello from Serilog, running as {Username}!", username);

            var items = Enumerable.Range(1,10);

            foreach (var item in items)
            {
               serilogLogger.Information("Logging an int, what fun {item}", item);
            }

            System.Console.WriteLine("ok");
            Console.ReadLine();
        }
        /// <summary>
        /// Adds a sink that writes log events as rolling files for consumption in a Splunk instance.
        /// </summary>
        /// <param name="loggerConfiguration">The logger configuration.</param>
        /// <param name="splunkConnectionInfoInfo"></param>
        /// <param name="batchSizeLimit"></param>
        /// <param name="defaultPeriod"></param>
        /// <param name="restrictedToMinimumLevel">The minimum log event level required in order to write an event to the sink.</param>
        /// <param name="formatProvider">Supplies culture-specific formatting information, or null.</param>
        /// <returns>Logger configuration, allowing configuration to continue.</returns>
        /// <exception cref="ArgumentNullException">A required parameter is null.</exception>
        public static LoggerConfiguration Splunk(
            this LoggerSinkConfiguration loggerConfiguration,
            SplunkConnectionInfo splunkConnectionInfoInfo,
            int batchSizeLimit,
            TimeSpan? defaultPeriod,
            LogEventLevel restrictedToMinimumLevel = LevelAlias.Minimum,
            IFormatProvider formatProvider = null)
        {
            var defaultedPeriod = defaultPeriod ?? SplunkSink.DefaultPeriod;

            return loggerConfiguration.Sink(new SplunkSink(batchSizeLimit, defaultedPeriod, splunkConnectionInfoInfo), restrictedToMinimumLevel);
        }