Skip to content

Commit

Permalink
clarify v0.5 vs master more
Browse files Browse the repository at this point in the history
  • Loading branch information
Dieter Plaetinck committed Oct 27, 2014
1 parent 77f6a75 commit dc9ebd0
Showing 1 changed file with 37 additions and 9 deletions.
46 changes: 37 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ Releases & versions
-------------------

* master (work in progress): refactored version with non-blocking operations, extensive internal stats and a more extensive routing system (which can support round robin & hashing) (see #23)
note: *the http admin interface in the current master branch does not work*
* v0.5 extended version with config file, http and telnet interfaces, disk spooling support, but still blocking operations
note: *the http admin interface in the current master branch does not work*, the TCP interface does work but only for adding new routes, for now.
* v0.5 extended version with config file, http and telnet interfaces, statsd for internal instrumentation, disk spooling support, but still blocking operations
* v0.1 initial, simple version that used commandline args to configure. no admin interfaces. blocking sends


Expand All @@ -61,7 +61,7 @@ Usage
<pre><code>carbon-relay-ng [-cpuprofile <em>cpuprofile-file</em>] <em>config-file</em></code></pre>


Concepts
Concepts (master branch)
--------

You have 1 master routing table. This table contains 0-N routes. Each route can contain 0-M destinations (tcp endpoints)
Expand All @@ -87,7 +87,7 @@ if connection is down and spooling disabled -> drop the data



Configuration
Configuration (master branch)
-------------


Expand All @@ -97,16 +97,16 @@ This mechanism is choosen so we can reuse the code, instead of doing much config
a declarative specification. We can just use the same imperative commands since we just set up the initial state here.


Web interface
Web interface (v0.5)
-------------

Allows you to inspect and change routing table.
(except for spooling settings).
Also you can't adjust global configuration this way.


TCP interface
-------------
TCP interface (v0.5)
--------------------

Allows you to inspect and change routing table.
(except for spooling settings and remote addr).
Expand All @@ -123,10 +123,38 @@ commands:
route del <key> delete the matching route
route patt <key> [pattern] update pattern for given route key. (empty pattern allows all)

TCP interface (master)
----------------------

commands:

Instrumentation
---------------
help show this menu
view view full current routing table
addBlack <substring> blacklist (drops the metric matching this as soon as it is received)
addRoute <type> <key> [opts] <dest> [<dest>[...]] add a new route. note 2 spaces to separate destinations
<type>:
sendAllMatch send metrics in the route to all destinations
sendFirstMatch send metrics in the route to the first one that matches it
<opts>:
prefix=<str> only take in metrics that have this prefix
sub=<str> only take in metrics that match this substring
regex=<regex> only take in metrics that match this regex (expensive!)
<dest>: <addr> <opts>
<addr> a tcp endpoint. i.e. ip:port or hostname:port
<opts>:
prefix=<str> only take in metrics that have this prefix
sub=<str> only take in metrics that match this substring
regex=<regex> only take in metrics that match this regex (expensive!)
flush=<int> flush interval in ms
reconn=<int> reconnection interval in ms
pickle={true,false} pickle output format instead of the default text protocol
spool={true,false} enable spooling for this endpoint




Instrumentation (master)
------------------------

All performance variables are available at http://localhost:8081/debug/vars
(update port if you change it in config)

0 comments on commit dc9ebd0

Please sign in to comment.