private void InitializedOutputPlugins(Config config) { if (config.Output != null) { if (config.Output.StdOut != null) { _outputPlugins.Add(new StdOutput(config.Output.StdOut.Condition)); } if (config.Output.ApplicationInsights != null) { var appInsightsConfig = config.Output.ApplicationInsights; var traceConfig = appInsightsConfig.Trace == null ? null : new ApplicationInsightsOutput.AITraceConfig() { Condition = appInsightsConfig.Trace.Condition }; var metricConfig = appInsightsConfig.Metric == null ? null : new ApplicationInsightsOutput.AIMetricConfig() { Condition = appInsightsConfig.Metric.Condition, Name = appInsightsConfig.Metric.Name, Value = appInsightsConfig.Metric.Value }; _outputPlugins.Add(new ApplicationInsightsOutput(appInsightsConfig.InstrumentationKey, traceConfig, metricConfig)); } } }
private void InitializeFilterPlugins(Config config) { if (config.Filter != null) { var grokConfig = config.Filter.Grok; if (grokConfig != null) { if (grokConfig.Match.Count != 2) { throw new Exception("Grok filter's match property must be an array with 2 elements. The first element is the path of the property to match, the second element is the grok pattern."); } _filterPlugins.Add(new GrokFilter(grokConfig.Match, grokConfig.Condition)); } } }
private void InitializeInputPlugins(Config config) { if (config.Input != null) { var stdinConfig = config.Input.Stdin; if (stdinConfig != null) { _inputPlugins.Add(new StdInput(_messageQueue, stdinConfig.codec, stdinConfig.type)); } var etwEventSourceConfig = config.Input.EtwEventSource; if (etwEventSourceConfig != null) { _inputPlugins.Add(new EtwEventSourceInput(_messageQueue, etwEventSourceConfig.providers, etwEventSourceConfig.codec, etwEventSourceConfig.type)); } } }