Commit graph

10566 commits

Author SHA1 Message Date
Pete Fritchman
811ee9410c - make status & condrestart work 2009-10-20 21:07:28 +00:00
Pete Fritchman
a6bb2b9405 - rename agent.rb to logstash-agent 2009-10-20 20:59:47 +00:00
Jordan Sissel
2edda3d34c - Add locking to our pidfile. 2009-10-20 20:59:08 +00:00
Pete Fritchman
b9f811eea5 - fix pattern_dir support (again)
- some defaults
2009-10-20 20:50:02 +00:00
Pete Fritchman
7e7dc90cfa - proper support for pattern_dir 2009-10-20 20:37:57 +00:00
Pete Fritchman
a9bc1324f0 - If one of our children dies, send ourselves a SIGTERM and do a clean
shutdown. We want our OS/watcher/whatever to know logstash is dead,
  rather than continue to run with random children dead.
- Remove pidfile on shutdown
2009-10-20 20:35:16 +00:00
Pete Fritchman
4a70384313 - logfile option 2009-10-20 20:19:46 +00:00
Pete Fritchman
2711d2a6f6 - first pass at rhel init script & sample sysconfig 2009-10-20 20:13:53 +00:00
Pete Fritchman
24169ef165 - refactor agent to be a real daemon
- refactor configs (all inherit from BaseConfig)
- move beef of agent code to lib/net/clients/
- use optionparser's ".order" instead of ".parse"
2009-10-20 17:40:44 +00:00
Jordan Sissel
26082d9309 - Proper daemonizing
- Add --logfile for directing STDOUT and STDERR to a file.
- Require logfile if we are to daemonize
- Set parent process $0 to 'logstash (supervisor)'
2009-10-20 06:59:02 +00:00
Pete Fritchman
c151016413 - support daemonizing
- support a pid file
- set $0 on our indexer & parser children
- handle INT and TERM signals (clean up children)
- switch to waitpid/WNOHANG/sleep(5) loop instead of Process.waitall because
  of a lame bug with ruby 1.8.5 and SIGTERM
2009-10-20 04:55:34 +00:00
Pete Fritchman
8a332a01e2 - logstash_dir is where we write stuff. not necessarily where our patterns
are installed, so allow pattern_dir.
2009-10-20 04:06:44 +00:00
Pete Fritchman
ebbcb3697f - default location is /var/logstash 2009-10-20 03:53:06 +00:00
Pete Fritchman
33222b3ed4 - helper for building release tarball 2009-10-20 03:46:19 +00:00
Pete Fritchman
f47a0aaf48 - move configs into etc/ 2009-10-20 03:45:19 +00:00
Pete Fritchman
c02eb62bcc - remove hacks/testing files that we won't be packaging up 2009-10-20 01:20:58 +00:00
Pete Fritchman
d4459ebf46 - consolidate to one logstashd that forks parsers & indexers
- use logger for output
- stop handling QuitRequests
- re-up broadcast interval to 30 (was @ 5 for debugging)
- add debug output (logstashd -d ...)
2009-10-19 19:03:49 +00:00
Jordan Sissel
e8159ef438 - remove debugging 2009-10-19 10:21:59 +00:00
Jordan Sissel
bff4949129 - responses should always have the same id as the request. 2009-10-19 10:21:49 +00:00
Jordan Sissel
405a813f68 - Move search's Directory querying to be synchronous 2009-10-19 10:19:49 +00:00
Jordan Sissel
e1839d359d - Add ability to do synchronous-like messaging:
op = client.sendmsg("logstash-directory", msg) do |response|
    puts response
    :finished
  end

  op.wait_until_finished
  puts "Done!"

  If Socket#sendmsg is given a block, it will return an Operation that is
  useful shown above.
2009-10-19 10:06:39 +00:00
Jordan Sissel
cd4baf78a6 - move amqp/em into a separate thread.
- Things wanting to block until amqp/em are finished will still call
  Socket#run, which now only blocks until the new amqp/em thread complete (with
  Thread#join)
2009-10-19 08:57:43 +00:00
Pete Fritchman
4afa19646b - include log_type in a LogKeysResponse message 2009-10-19 07:42:10 +00:00
Pete Fritchman
4755c0ae1c - add ability to query what keys are available for a log type
- cache indexreaders, searchers, and queryparsers
2009-10-19 07:09:07 +00:00
Pete Fritchman
6c4c36cdd7 - support querying what log types are available 2009-10-19 06:56:07 +00:00
Pete Fritchman
344e1a4aef - send back [@DATE, @LINE] in search results so we can collate results
from multiple indexers
2009-10-19 06:27:31 +00:00
Pete Fritchman
eeeb7b4cd3 - AMQPize. 2009-10-19 06:23:09 +00:00
Pete Fritchman
257c2de5d0 - actually, since @close is set, it's safe to end EM right here 2009-10-19 05:53:17 +00:00
Pete Fritchman
e909d241ec - less verbose
- make @close work
- main @id queue cannot be :exclusive (nobody else can write)
- properly make topic exchange auto_delete and exclusive
- refactor search.rb client, start towards a common SearchClient class
  (and work with amqp)
2009-10-19 05:52:18 +00:00
Pete Fritchman
56aac96795 s/stomp/amqp/ 2009-10-19 04:36:06 +00:00
Pete Fritchman
27204e825b - remove some debugging cruft
- remove sample agent.redhat.rb; sample config is the same thing
- indexers now broadcast to each other and build up a directory
- indexers respond to a directory request and provide a list of indexers
- move some errors/usage messages to $stderr
- refactor search.rb to query all available indexers
2009-10-18 23:38:35 +00:00
Jordan Sissel
51a0e8ce8a - Add yaml config for agent
- Ignore dotfiles when considering files of grok patterns
- Fix our monkey patch adding String#strip_upper_ascii. This should probably
  just be in another module and take a string as argument.
- Fix bin/search.rb to point at the right queue (indexer serves searches now)
- Fix websearch to point at correct queue.
2009-10-16 09:57:13 +00:00
Jordan Sissel
9d6d58f1d3 - Moved cgrok's svn to named 'grok'. 2009-09-29 02:02:11 +00:00
Jordan Sissel
25c06132ce - Add logparsed. Runs N processes with a parser for each process. 2009-09-21 06:43:33 +00:00
Jordan Sissel
9b4e10e757 - Split indexer and parsers 2009-09-21 06:43:08 +00:00
Jordan Sissel
a592c6fa1a - Don't use GrokMatch#captures anymore, use GrokMatch#each_capture, as it is
more efficient. With this new method, we only iterate over the captures once.
2009-09-21 06:35:50 +00:00
Jordan Sissel
1582a29ce9 - Add instructions for running the web interface 2009-09-19 10:09:53 +00:00
Jordan Sissel
6ac738d73c - don't pp entry on index
- add output of log_type when searching (for debugging)
2009-09-19 10:09:43 +00:00
Jordan Sissel
3b8a9416b6 - Add cron patterns to linux-syslog 2009-09-19 10:06:49 +00:00
Jordan Sissel
82e5bf79e9 - Don't hack an exception onto String#scan (only needed it for debugging anyway) 2009-09-19 10:06:31 +00:00
Jordan Sissel
40fbf7a670 - Correctly set defaults for limit and offset
- Allow user to specify log_type
- Fix next/prev urls
- Escape form values when displaying them
2009-09-19 10:05:59 +00:00
Jordan Sissel
dc4cc2088a - Make search results have next/prev links and show current position
- Use GET instead of POST
2009-09-19 09:06:44 +00:00
Jordan Sissel
0c87bf740f - set / route to /search 2009-09-19 08:40:00 +00:00
Jordan Sissel
cf8ee9b312 - Add logstash web frontend. This is a Merb application. 2009-09-19 08:37:04 +00:00
Jordan Sissel
0061adadc3 - config.yaml -> logstashd.yaml 2009-09-14 08:19:44 +00:00
Jordan Sissel
4b870cc9fd - add haproxy bits 2009-09-11 10:54:57 +00:00
Jordan Sissel
e9c314dee6 - Move from config.rb to config.yaml
- logstashd now takes a config.yaml as the only argument.
2009-09-11 10:24:13 +00:00
Greg Retkowski
9df61fc0c1 Updated installation/running instructions. Created an agent with sane
defaults for redhat-based systems.
2009-09-10 21:24:20 +00:00
Greg Retkowski
13a54a1620 Fixed bug where server would crash if an invalid logtype was supplied to
search.rb. Instead server now returns zero results.
2009-09-10 21:03:24 +00:00
Jordan Sissel
fac8def339 - don't use stats anymore 2009-09-10 17:58:41 +00:00