This documentation does not apply to the most recent version of Splunk.
This documentation applies to the following versions of Splunk: 3.3 , 3.3.1 , 3.3.2 , 3.3.4 , 3.4 , 3.4.1 , 3.4.2 , 3.4.3 , 3.4.5 , 3.4.6 , 3.4.8 , 3.4.9 , 3.4.10 , 3.4.11 , 3.4.12 , 3.4.13
You can enable Splunk to accept an input on any TCP or UDP port. Splunk consumes any data sent on these ports. TCP is the protocol underlying Splunk's data distribution, which is the recommended method for sending data from any remote machine to your Splunk server. Note that the user you run Splunk as must have access to the port. On a Unix system you must run as root to access a port under 1024.
Important: In version 3.3.3 of Splunk, default syslog processing via UDP does not correctly handle line-breaks. To work around this issue, add _linebreaker = _linebreaker to the UDP stanza in $SPLUNK_HOME/etc/system/local/inputs.conf. This issue was resolved in 3.3.4.
Add inputs from network ports via Splunk Web.
1. Click Admin in the upper right-hand corner of Splunk Web.
2. Then click Data Inputs.
3. Pick Network Ports - Display and access configuration for UDP and TCP ports.
4. Click New Input to add an input.
5. Under the Source heading, select Protocol of UDP or TCP.
6. Accept the default port, 9998, or enter another port number.
7. Specify whether this port should accept connections from all hosts or one host. If you specify one host, enter the IP address of the host.
8. Now set the Source Type. Source type is a default field added to events. Source type is used to determine processing characteristics such as timestamps and event boundaries. Learn more about setting source type. Choose:
9. After specifying the source, host, and source type, click Submit.
Monitor files and directories via Splunk's Command Line Interface (CLI). To use Splunk's CLI, navigate to the $SPLUNK_HOME/bin/ directory and use the ./splunk command. Or add Splunk to your path and use the splunk command.
If you get stuck, Splunk's CLI has built-in help. Access the main CLI help by typing splunk help. Individual commands have their own help pages as well -- type splunk help <command>.
The following commands are available for input configuration via the CLI:
| Command | Command syntax | Action |
|---|---|---|
| add | add tcp | udp $SOURCE [-parameter value] ...
| Add inputs from $SOURCE. |
| edit | edit tcp | udp $SOURCE [-parameter value] ...
| Edit a previously added input for $SOURCE. |
| remove | remove tcp | udp $SOURCE
| Remove a previously added data input. |
| list | list tcp | udp
| List the currently configured monitor. |
Change the configuration of each data input type by setting additional parameters. Parameters are set via the syntax: -parameter value.
| Parameter | Required? | Description |
|---|---|---|
| $SOURCE | Require | Port number to listen for data to index. |
| sourcetype | Optional | Specify a sourcetype field value for events from the input source. |
| index | Optional | Specify the destination index for events from the input source. |
| hostname | Optional | Specify a host name to set as the host field value for events from the input source. |
| remotehost | Optional | Specify an IP address to exclusively accept data from. |
| resolvehost | Optional | Set True of False (T | F). Default is False. Set True to use DNS to set the host field value for events from the input source. |
Configure a network input, then set the sourcetype:
Important: In version 3.3.3 of Splunk, default syslog processing via UDP does not correctly handle line-breaks. To work around this issue, add _linebreaker = _linebreaker to the UDP stanza in $SPLUNK_HOME/etc/system/local/inputs.conf. This issue was resolved in 3.3.4.
Check the Splunk Wiki for information about the best practices for using UDP when configuring Syslog input.
./splunk add udp 514 -sourcetype syslog
auth with your username and password.
./splunk edit udp 514 -resolvehost true -auth admin:changeme
Note: Splunk must be running as root to watch ports under 1024.
To add an input, add a stanza for it to inputs.conf in $SPLUNK_HOME/etc/system/local/, or your own custom application directory in $SPLUNK_HOME/etc/apps/. If you have not worked with Splunk's configuration files before, read how configuration files work before you begin.
You can set any number of attributes and values following an input type. If you do not specify a value for one or more attributes, Splunk uses the defaults that are preset in $SPLUNK_HOME/etc/system/default/ (noted below).
[tcp://<remote server>:<port>] <attrbute1> = <val1> <attrbute2> = <val2> ...
This type of input stanza tells Splunk to listen to <remote server> on <port>. If <remote server> is blank, Splunk listens to all connections on the specified port.
host = <string>
host:: is automatically prepended to the value when this shortcut is used.
index = <string>
index:: is automatically prepended to the value when this shortcut is used.
main (or whatever you have set as your default index).
sourcetype = <string>
sourcetype:: is automatically prepended to the value when this shortcut is used.
source = <string>
source:: is automatically prepended to the value when this shortcut is used.
queue = <string> (parsingQueue, indexQueue, etc)
parsingQueue.
connection_host = [ip | dns]
Important: In version 3.3.3 of Splunk, default syslog processing via UDP does not correctly handle line-breaks. To work around this issue, add _linebreaker = _linebreaker to the UDP stanza in $SPLUNK_HOME/etc/system/local/inputs.conf. This was resolved in 3.3.4.
[udp://<port>] <attrbute1> = <val1> <attrbute2> = <val2> ...
This type of input stanza is similar to the TCP type, except that it listens on a UDP port.
host = <string>
host= is automatically prepended to the value when this shortcut is used.
index = <string>
index= is automatically prepended to the value when this shortcut is used.
main (or whatever you have set as your default index).
sourcetype = <string>
sourcetype= is automatically prepended to the value when this shortcut is used.
source = <string>
source= is automatically prepended to the value when this shortcut is used.
queue = <string> (parsingQueue, indexQueue, etc)
parsingQueue.
_rcvbuf = <int>
no_priority_stripping = true | false
no_appending_timestamp = true