public FileBuffer(ForwardOutputPlugin forwarder,
                   BufferSettingsConfig settingsConfig = null,
                   ILoggerFactory loggerFactory        = null)
     : base(Path.Combine(settingsConfig?.BufferPath ?? "LogBuffer", forwarder.System),
            settingsConfig?.ReadLimit ?? 4 * 1024,
            settingsConfig?.MemoryBufferLimit,
            settingsConfig?.FileBufferLimit,
            settingsConfig?.FlushTimeout,
            settingsConfig?.ResendTimeout,
            settingsConfig?.ResendIntervals,
            settingsConfig?.WorkerCount ?? 1,
            settingsConfig?.Encoding,
            loggerFactory)
 {
     _forwarder = forwarder;
 }
Ejemplo n.º 2
0
        public PluginFactory(IConfiguration configuration, ILogMetrics metrics, ILoggerFactory loggerFactory)
        {
            _metrics       = metrics;
            _loggerFactory = loggerFactory;

            _logger = _loggerFactory.CreateLogger <PluginFactory>();

            _logger.SLT00012_Debug_PluginFactory();
            try
            {
                var outputPluginsSection = configuration.GetSection("OutputPlugins");

                _bufferSettingsConfig = new BufferSettingsConfig();
                var bufferConfiguration = configuration.GetSection("BufferSettings");
                if (bufferConfiguration != null)
                {
                    bufferConfiguration.Bind(_bufferSettingsConfig);
                }

                if (outputPluginsSection == null)
                {
                    return;
                }

                foreach (var pluginSection in outputPluginsSection.GetChildren())
                {
                    var pluginName = pluginSection["Output"];
                    var systemName = pluginSection["System"];

                    if (systemName == null || pluginName == null)
                    {
                        continue;
                    }

                    _configs[systemName] = CreateOutputPlugin(pluginName, systemName, pluginSection);
                }
            }
            catch (Exception e)
            {
                _logger.SLT00014_Error_Plugin_not_created(e);
                throw e;
            }
            finally
            {
                _logger.SLT00011_Debug_PluginFactory_End();
            }
        }
Ejemplo n.º 3
0
 protected BufferedOutputPlugin(
     string systemName,
     ILogMetrics metrics,
     BufferSettingsConfig settingsConfig = null,
     ILoggerFactory loggerFactory        = null)
     : base(Path.Combine(settingsConfig?.BufferPath ?? "LogBuffer", systemName),
            settingsConfig?.ReadLimit ?? 4 * 1024,
            settingsConfig?.MemoryBufferLimit,
            settingsConfig?.FileBufferLimit,
            settingsConfig?.FlushTimeout,
            settingsConfig?.ResendTimeout,
            settingsConfig?.ResendIntervals,
            settingsConfig?.WorkerCount ?? 1,
            settingsConfig?.Encoding,
            loggerFactory)
 {
     _logger = loggerFactory?.CreateLogger(typeof(BufferedOutputPlugin)) ?? NullLogger.Instance;
     _logger.SLT00017_Trace_BufferedOutputPlugin_BufferSettingsConfig_config(settingsConfig);
     _metrics = metrics;
 }