R. Tyler Croy
3778a24044
Add the --exclude CLI option for filtering out unwanted consumer groups
...
Fixes #34
2015-09-01 17:10:43 -07:00
R. Tyler Croy
921ef7be64
Only build on JDK8, targeting JDK7 compatibility though
...
Stupid errors in Travis make the build feedback not very useful
2015-09-01 16:39:44 -07:00
R. Tyler Croy
7b918d448a
Don't use groovy strings where we don't need to
2015-09-01 16:29:34 -07:00
R. Tyler Croy
4f416e84dd
Configure the intellij integration with sources
2015-09-01 16:06:49 -07:00
R. Tyler Croy
e18ac81468
Introduce codenarc and make the project adhere to some coding standards
2015-09-01 15:50:31 -07:00
R. Tyler Croy
fc97f67100
Add support for a customized delay in seconds between reports (defaulting to 5s)
2015-09-01 14:41:16 -07:00
R. Tyler Croy
0168f5c805
Disable generation of tar and zip archives
...
Fixes #28
2015-09-01 14:21:38 -07:00
R. Tyler Croy
b6bbcf92a4
Don't reconnect if we have invalid data in our brokerConsumerMap, just warn about it
...
Fixes #30
2015-08-14 15:11:16 -07:00
R. Tyler Croy
be33333bfa
Bail out and try to force a reconnect if our broker's consumer is nulled
...
Still need to explore how we're getting into this state, but this is a start to
handling that scenario more gracefully
References #130
2015-08-14 10:50:45 -07:00
R. Tyler Croy
5df6083e6d
Log a single error line for KafkaException exceptions when polling
...
Fixes #31
2015-08-14 10:13:17 -07:00
R. Tyler Croy
623aa6b10a
Remove some unnecessary maven repos from our build
2015-08-14 10:04:31 -07:00
R. Tyler Croy
9535100528
Rely on Gradle 2.6 which is more gooder
2015-08-14 10:04:28 -07:00
R. Tyler Croy
457d2a195c
Ignore intellij files
2015-08-14 09:57:34 -07:00
R. Tyler Croy
e01e699861
Move the hacking docs out and link to groovydocs properly
2015-07-04 15:08:22 -07:00
R. Tyler Croy
f968a2c1c8
Move the README over to asciidoc and wire together publishing asciidoc to gh-pages
2015-07-04 15:02:35 -07:00
R. Tyler Croy
8c7046aa44
Remove duplicative work from the builds in Travis
2015-07-04 14:31:54 -07:00
R. Tyler Croy
39db2912ad
Update the build script to be more explicity about cleaning and running default tasks
...
Giving this another try with an auto-deploy
2015-07-04 14:27:46 -07:00
R. Tyler Croy
08e4076f95
Update the readme with release notes
2015-07-04 14:12:27 -07:00
R. Tyler Croy
cb3465f715
Merge pull request #27 from lookout/auto-deployment
...
Add support for automatically publishing to Bintray
2015-07-04 14:09:13 -07:00
R. Tyler Croy
27d51c84e4
Use Gradle 2.4 for future builds
2015-07-04 14:06:24 -07:00
R. Tyler Croy
1c588f6bff
Change the automatic deployment to only operate when a user has published a tag that successfully builds
2015-07-04 14:02:58 -07:00
R. Tyler Croy
5cc83eef08
Dry run for now to avoid publishing builds
2015-07-04 13:50:39 -07:00
R. Tyler Croy
685f0353f2
Add support for automatically publishing to Bintray when a build succeeds
2015-07-04 13:40:25 -07:00
R. Tyler Croy
81d15d53ec
Let's call this 0.2.0
2015-03-22 11:11:03 -07:00
R. Tyler Croy
f053d9b68c
Catch and log exceptions coming from the dumpMetadata() call
...
Fixes #23
2015-03-22 11:08:40 -07:00
R. Tyler Croy
3a9caa2535
Avoid computing negative values for offsets, making zero the lowest possible value
...
Fixes #25
2015-03-22 10:56:26 -07:00
R. Tyler Croy
dc33298435
Groovy's getStrings() method with string interpolation doesn't do what you think it does
...
groovy:000> user = "Ron"
===> Ron
groovy:000> "hello ${user}"
===> hello Ron
groovy:000> "hello ${user}".getStrings()
===> [hello , ]
groovy:000> "hello ${user}".toString()
===> hello Ron
Fixes #24
2015-03-20 15:13:40 -07:00
R. Tyler Croy
789e7e863c
Merge pull request #20 from lookout/dropwizard-metrics
...
Introduce dropwizard-metrics
2015-03-20 11:37:14 -07:00
R. Tyler Croy
38e8c62e00
Properly report metrics to datadog with the appropriate tags
...
This requires a much more recent version of our metrics-datadog library but
does result in the right values being reported into datadog.
2015-03-20 10:58:45 -07:00
R. Tyler Croy
71347594ca
Major refactor to support dropwizard-metrics as the means of outputting metrics
...
This commit changes the structure of Verspaetung pretty dramatically to allow
for the registering of Gauges for the various offsets
With this change the KafkaPoller is pushing the latest offsets into a map and the
ZK consumer tree watchers are pushing consumer offsets into a separate map.
References #17
2015-02-06 08:34:19 -08:00
R. Tyler Croy
f4042894fe
Add a compile and runtime dependency on the metrics core and graphite code
...
References #17
2015-01-30 07:30:15 -08:00
R. Tyler Croy
7b13050ee2
Restructure KafkaPoller to make catching and logging exceptions easier
...
I've not cleaned this up enough to make things easier to test, partially
because mocking the Kafka client APIs is a giant pain in the ass
Fixes #16
2015-01-30 02:45:16 -08:00
R. Tyler Croy
0fa983d0e8
Add support for prefixing the metrics with a CLI supplied option
...
Fixes #15
2015-01-30 02:45:16 -08:00
R. Tyler Croy
95c244867a
Leave a skipped test in place for later
...
Going to get back to #14
2015-01-30 02:45:16 -08:00
R. Tyler Croy
0c59dcee70
Add some notes about using Verspaetung
2015-01-28 03:33:52 -08:00
R. Tyler Croy
100b6ab28a
Add latest version badge from Bintray
2015-01-28 03:20:10 -08:00
R. Tyler Croy
5b086f670e
Bump versions
2015-01-28 03:17:46 -08:00
R. Tyler Croy
8995351bba
Parse the consumer group from the KafkaSpout ZK path instead of using the JSON
...
The JSON in the Znode is actually the name of the topology, not necessarily the
name of the consumer group used by a KafkSpout
Fixes #9
2015-01-28 03:05:30 -08:00
R. Tyler Croy
d0c99b9a34
Implement the KafkaSpoutTreeWatcher for processing Storm KafkaSpout offset data
...
Fixes #9
2015-01-28 02:45:49 -08:00
R. Tyler Croy
b4b9fe9860
Introduce the AbstractConsumerTreeWatcher to handle watchers on Kafka consumer trees
...
This gives us two kinds of AbstractTreeWatcher instances, those that watch
special-case subtrees (e.g. the BrokerTreeWatcher) and then those which need to
watch and report Kafka consumer offset information (e.g. StandardTreeWatcher)
References #9
2015-01-28 02:02:59 -08:00
R. Tyler Croy
af19abfacb
Refactor the handling of TreeCache into the AbstractTreeWatcher itself
...
This should lay the groundwork for refactoring much of the BrokerTreeWatcher up
into the AbstractTreeWatcher
2015-01-28 01:44:53 -08:00
R. Tyler Croy
0706895af1
Refactor some of the KafkaPoller setup out and add support for --dry-run
...
Fixes #10
2015-01-28 01:13:13 -08:00
R. Tyler Croy
a444f49b46
Invoke the onDelta callbacks for zero deltas too
...
It turns out that datadog doesn't indicate that the delta is shrinking unless
you report a zero value.
2015-01-26 09:40:16 -08:00
R. Tyler Croy
55008192f8
Update to a newer java-statsd-client that doesn't use bleeding edge technology like String.join
...
JDK7, get your shit together.
2015-01-26 09:39:34 -08:00
R. Tyler Croy
18e747788e
Add a simple heartbeat to the configured statsd host for every second9
...
Fixes #4
2015-01-26 07:00:07 -08:00
R. Tyler Croy
5e1a4e11ba
Use a ocpy on write list for the consumers map to avoid thrash between threads
...
Once we've finished caching our consumers map the majority of the operations on
this consumersMap list will be traversals inside of the KafkaPoller. Thus
making the performance hit worth it.
What we don't want to happen is to try to iterate through the consumersmap's
list of consumers while receiving new ZK childEvents
Fixes #6
2015-01-26 06:52:54 -08:00
R. Tyler Croy
4f16c3dfd1
Avoid NPEs when starting up and scanning brokers
...
The problem was we were trying to parse the JSON of /brokers/ids' when the
treecache found that node.
Fixes #8
2015-01-26 06:20:46 -08:00
R. Tyler Croy
a022252157
Add some simple command line overrides for ZK and statsd hosts
...
Fixes #5
2015-01-26 06:15:35 -08:00
R. Tyler Croy
dd1b3322a4
Bump to java-statsd-client 3.1.1 which is built for JDK7 and 8
2015-01-26 05:15:43 -08:00
R. Tyler Croy
d76a7d8e8f
Silly mistakes happen when you rush
2015-01-26 04:29:31 -08:00