http event collector, simplified developer logging
TRANSCRIPT
Copyright © 2015 Splunk Inc.
Glenn Block (@gblock) – Principal Product ManagerJian Lee – Senior Software Engineer Splunk Developer Platform & Core
HTTP Event Collector, Simplified Developer Logging
2
DisclaimerDuring the course of this presentation, we may make forward looking statements regarding future events
or the expected performance of the company. We caution you that such statements reflect our current expectations and estimates based on factors currently known to us and that actual events or results
could differ materially. For important factors that may cause actual results to differ from those contained in our forward-looking statements, please review our filings with the SEC. The forward-looking
statements made in the this presentation are being made as of the time and date of its live presentation. If reviewed after its live presentation, this presentation may not contain current or accurate information.
We do not assume any obligation to update any forward looking statements we may make.
In addition, any information about our roadmap outlines our general product direction and is subject to change at any time without notice. It is for informational purposes only and shall not, be incorporated
into any contract or other commitment. Splunk undertakes no obligation either to develop the features or functionality described or to include any such feature or functionality in a future release.
DemoApp Monitoring
4
HTTP Event CollectorA new token-based JSON API for eventsSend events directly from anywhere (servers, mobile devices, IOT)Easy to configure / works out of the box. Easy to secureHighly performant, scalable and available
DemoConfiguring HTTP Event Collector
How you useEnable HTTP Event CollectorCreate/Get a tokenSend events to Splunk using the token– Use HTTP Directly
Create a POST request and set the Auth header with the token
POST JSON in our event format to the collector
– Use logging libraries Support for .NET, Java and JavaScript loggers
6
Sending data//send with curlcurl -k https://localhost:8088/services/collector -H 'Authorization: Splunk 46931F1C-352C-4DF6-820C-F2689CF88494' -d '{"event":"Hello Event Collector"}'
7
./splunk_httpinput/local/inputs.confGlobal Stanza
TokenStanza
Token Name
Enable/Disable the collector
Auth tokenEnable/Disable the token
Default metadata
Default metadata
Default index
Allowed indexes
./splunk_httpinput/defaults/inputs.conf
Default port
SSL Enabled by default
Distributed deployment disabled
10
Event Collector CLI
./bin/splunk http-event-collector help
11
Permissions and delegation
HTTP Event Collector requires the edit_token_http cap.You can delegate token admin to devops / engToken admins can only manage the feature, they do not have any other admin permissions in Splunk
12
A few tipsCreate tokens per app, department, component, service. etc. Not per user or device especially if you are talking about a large number (> 10000)Consider partitioning tokens to different indexes. This will speed up searches and make it easy to archiveConsider delegating token management to devops/engExplicitly set allowed indexes on the token. If not set, the token can send data to any index.Use HTTP over HTTPS when you can. You can get about a 30% performance gain.Ask your devs to batch events. It greatly improves throughtput.
13
14
Scale and High Availability
Indexers
Search Head / Deployment Server
15
Scale and High Availability
Event Collectors Indexers Search Heads
16
Distributed deployment
HTTP Event Collector can scale to meet your needs!
• Build in to splunkd, nothing special to install• Run directly on the indexer• Or run on a dedicated Collector instance and forward to an indexer• Uses Deployment Server to to sync tokens across the Collector
instances
17
How to setup a DS client
splunk set deploy-poll [host]:8088splunk enable deploy serversplunk restart
DemoDistributed deployment
DemoTroubleshooting/Monitoring
20
3rd party integrations
21
Send your container logs DIRECTLY to Splunk
22
How it works
A new log driver capture container’s stdout and pushes to SplunkCurrently it is in development, but should be out of the box soon.We’re contributing to Docker!!!!!!!
docker run --log-driver=splunk --log-opt splunk-token=F81DD289-863D-45EF-B9CE-A7D3514AF2C7 --log-opt splunk-url=https://10.20.17.169:8088 --log-opt splunk-insecureskipverify=true hello-world
Demo:Docker driver
23
24
Next steps?
Breakouts Liberate Your Application Logging
More information docs.splunk.com, see "Getting Data In" dev.splunk.com
Come by the Developer Booth and say hi / ask questions!
Related breakout sessions and activities…
THANK YOU