1
0
Fork 0
mirror of https://github.com/alice-lg/birdwatcher.git synced 2025-03-09 00:00:05 +01:00
Commit graph

160 commits

Author SHA1 Message Date
Patrick Seeburger
980fcff9c2 Changed the data structure for the extended communities to be a single
slice of {string, int64, int64} instead of a parsed record.
2019-02-22 14:07:11 +01:00
Patrick Seeburger
95cf1a71af Fixed a bug in the parser that would return an integer of the wrong type
(int vs. int64) in an error case.
2019-02-22 14:07:11 +01:00
Patrick Seeburger
7fd2dfd0cf Implement new endpoint /routes/count/primary 2019-02-22 14:07:10 +01:00
Patrick Seeburger
541ea6d84d Fix RoutesDumpPerPeerTable()
Fix RoutesDumpPerPeerTable to return results again and the filtered
routes.
2019-02-22 14:07:10 +01:00
Patrick Seeburger
c1a07cc985 Implemented support for parsing extended communities. 2019-02-22 14:07:10 +01:00
Patrick Seeburger
b7952f9061 Fix TestParseProtocolBgp()
Fix test method TestParseProtocolBgp() to match the output of the
current ProtocolsBgp() method wich returns Parsed records instead of a
string array.
2019-02-22 14:07:09 +01:00
Patrick Seeburger
08c63fc3a3 Fixed /routes/count/protocol Endpoint which was returning no data,
because the wrong parser was called.
2019-02-22 14:07:09 +01:00
Patrick Seeburger
6e8734fa90 Fixed /symbols endpoint. 2019-02-22 14:07:09 +01:00
Johannes Moos
439ee0d5d0 Fix RoutesPrefixed
This version ignored the prefix which is passed as an URL parameter.
2019-02-22 14:07:08 +01:00
Patrick Seeburger
27fe2969d7 Avoid unnecessary cache writes in /status
Introduce check to avoid unneccesarry cache writes.
2019-02-22 14:07:07 +01:00
Patrick Seeburger
8a69b5ba98 Repair 'protocols' endpoint
* repair 'protocols' endpoint to return a meaningful JSON object
* improve example configuration file
2019-02-22 14:07:06 +01:00
Matthias Hannig
712510b3bc include caching information alongside ttl 2019-02-22 14:07:06 +01:00
Patrick Seeburger
1d3118b864 Added missing default value (imported). 2019-02-04 15:48:24 +01:00
Matthias Hannig
837c97da13 prefix cache key for use with birdc and birdc6 2019-01-24 19:01:41 +01:00
Matthias Hannig
1ee6740688 improved caching tests 2019-01-24 19:01:05 +01:00
Matthias Hannig
15f2561c87 use redis cache if configured 2019-01-24 17:16:35 +01:00
Matthias Hannig
52f5e9506a use redis caching when available 2019-01-24 17:15:54 +01:00
Matthias Hannig
1518f64cd4 added redis cache helper 2019-01-24 17:15:26 +01:00
Patrick Seeburger
c4dfeb253d API redesign - make birdwatcher more generic
Removed all high level functionality e.g. endpoints with multiple
invocations of birdc.
Add new endpoints which are required to duplicate the removed
functionality within Alice-LG.
2019-01-18 18:10:06 +01:00
Matthias Hannig
2a17304682 fixed command syntax 2018-11-29 15:28:00 +01:00
Patrick Seeburger
c1cc320030 Improve caching of parsed birdc output.
This additionally caches the results after matching regular
expressions and improves performance further.

Credits: Hasan Pekdemir for the original idea.
2018-07-18 10:53:53 +02:00
Benedikt Rudolph
715deaebb8 Fix quotation error Routes{Table,Lookup}* method
The commands submitted to birdc contain "'" characters
placed before and after ip-address/prefix and table
name. In normal operation of birdc they are eliminated
by the shell. However when given as arguments to birdc
directly they cause "IP address expected" error in Bird.

Credits: Felix Singer for finding and submitting this bug.
2018-07-18 10:53:07 +02:00
Benedikt Rudolph
fdfa4cbc32 Generalize parse method to accept all protocols
The method parseBgp is now generic enough to  parse
all types of protocols.
Added new regular expressions and a more flexible
way of processing route_change statistics that have
subtle differences in each protocol.
2018-07-18 10:43:00 +02:00
Benedikt Rudolph
88eb405c9e Add comment to explain "-r" argument. 2018-07-18 10:43:00 +02:00
Benedikt Rudolph
1ccbc3d702 Execute birdc in restricted mode with "-r" argument. 2018-07-18 10:42:59 +02:00
Benedikt Rudolph
46356aa9eb Make cache ttl for bird responses a config option
For bird and bird6 you may add ttl to the respective config file sections.
See example config in this commit.
This allows to have individual ttls for the cache of bird cli output per daemon.
2018-07-18 10:42:57 +02:00
Johannes Moos
e4ec6591b9 Increase default cache time to 10 minutes 2018-07-18 10:40:27 +02:00
Benedikt Rudolph
d5de4b8f65 Fix birdc query for RoutesFiltered 2018-06-08 16:37:33 +02:00
Daniel Czerwonk
5bffef1e07 added flag to set max workers 2018-01-28 20:52:53 +01:00
Daniel Czerwonk
d6fc5998ee implemented workers to improve full table parsing time 2018-01-28 20:41:43 +01:00
Daniel Czerwonk
37d5eeaa13 fxed version check 2018-01-18 18:34:08 +01:00
Daniel Czerwonk
8b65cb4d66 no all on count 2018-01-18 13:19:42 +01:00
Daniel Czerwonk
86a80878f4 bird 2.0 parsing 2018-01-18 13:00:34 +01:00
Daniel Czerwonk
c710518e9d added first test for ipv4 with bird 2.x 2018-01-18 09:21:32 +01:00
Daniel Czerwonk
3b1a6d4e4f implemented iterator to safe some memory (no additional []string with all routes needed) 2018-01-18 08:35:34 +01:00
Daniel Czerwonk
ef6d90c5ed use net.type only on bird 2.0 and higher 2018-01-18 02:08:30 +01:00
Daniel Czerwonk
f905c9c3de use reader interface insteead of string copies (decreases memory footprint) 2018-01-18 00:44:22 +01:00
Daniel Czerwonk
68ce3c8422 fixed ipv6 test, added test for local_pref 2018-01-17 23:23:32 +01:00
Daniel Czerwonk
74267b71ce test refacotring ipv6 2018-01-17 20:05:57 +01:00
Daniel Czerwonk
258f356e1d more attributes tested 2018-01-17 20:00:33 +01:00
Daniel Czerwonk
c20964cf0e refacoting, increased test coverage, tests for ipv6 and bird2 2018-01-17 19:41:55 +01:00
Daniel Czerwonk
7905610b51 added tests for ipv6 2018-01-16 00:12:50 +01:00
Daniel Czerwonk
d903f1286b refactoring, channel support for show protocols, routees filtered by ip version 2018-01-15 23:04:19 +01:00
Daniel Czerwonk
654e131a75 go dep 2018-01-15 19:04:38 +01:00
Matthias Hannig
fa5b640aab fixed interface conversion issue 2017-07-13 12:16:53 +02:00
Matthias Hannig
ddc22da4a4 fixed naming 2017-06-22 19:01:05 +02:00
Matthias Hannig
afd39c4d9a fixed import export naming 2017-06-22 18:48:22 +02:00
Matthias Hannig
941ac9ceba added per peer table filtered routes dump 2017-06-22 16:08:37 +02:00
Matthias Hannig
b96a864b04 added test for routes parsing 2017-06-22 15:38:18 +02:00
Matthias Hannig
92dc24e764 fixed subsequent routes parsing 2017-06-22 15:38:06 +02:00