Getting Data In

Using same inputs.conf for multiple forwarders with different monitor paths

Jetj
Engager

I have a list of servers divided into different environments.
I will be installing a Splunk Universal Forwarder on each server and targeting a Splunk Enterprise instance.
I would like to create deployment apps on the enterprise instance, that will configure each environment.

Is it possible to use just one deployment app and thereby one inputs.conf for each environment, where it will monitor a path based on the hostname? e.g. something like:
if($hostname == "a")
[monitor://C:\LogFiles\A]
elif ($hostname == "b")
[monitor://C:\LogFiles\B]

Or will I need to create seperate inputs.conf for each individual server? And thereby also having to create a new deployment application for each server?

possible duplicate
[edit]: not enough karma for posting link.

inventsekar
Ultra Champion

it looks like a good option, but currently inputs.conf can not have if conditions.

maybe, simply add all files to the inputs.conf, the files will be present only on particular hosts, on that host, that file will get monitored and other file will not be available/not monitored.

[monitor://C:\LogFiles\A] 
----
----
----
[monitor://C:\LogFiles\B] 
----
---
---

kamal_jagga
Contributor

I am also facing similar issue. This usually works fine. But i have a dev server with thousands of files in the directory being monitored.

After I added this server, the performance of other servers has also deteriorated as Splunk keeps crawling through all the files and folders to find the match.

As a workaround, I have created separate app for the dev server.

Still looking for ideal solution where i can mention - if server=A monitor=path A and server=B monitor=path B

0 Karma

Jetj
Engager

Thank you for your answer.

I had thought of this solution and actually tested it. And it works fine, by monitoring a directory (or file) that doesn't exist and therby not forwarding anything from that particular server.

My issue with this solution however is if two servers would have different logs in the same path. Say server A has logs in C:\Logs\ for application 1 and server B has logs in C:\Logs\ for application 2. This would cause some confusion as to where logs where coming from, wouldn't it? Or would I just have to specify my search further, to something like:
source = "C:\Logs\*" host = "[hostname]"

0 Karma

inventsekar
Ultra Champion

i am not sure, but, maybe, check the Splunk Scripted inputs option.
http://docs.splunk.com/Documentation/Splunk/6.6.3/AdvancedDev/ScriptSetup

0 Karma
Get Updates on the Splunk Community!

What’s New in Splunk App for PCI Compliance 5.3.1?

The Splunk App for PCI Compliance allows customers to extend the power of their existing Splunk solution with ...

Extending Observability Content to Splunk Cloud

Register to join us !   In this Extending Observability Content to Splunk Cloud Tech Talk, you'll see how to ...

What's new in Splunk Cloud Platform 9.1.2312?

Hi Splunky people! We are excited to share the newest updates in Splunk Cloud Platform 9.1.2312! Analysts can ...