diff options
author | Christian Pointner <equinox@spreadspace.org> | 2014-10-11 17:38:13 +0200 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2014-10-11 17:38:13 +0200 |
commit | 95346385f0b6e36050c4bc5fa3f00aadc0c5fbcf (patch) | |
tree | 51694ae9829072147cc0377d617ffabc66ec7f8a | |
parent | updated copyright notice (diff) |
redone http plugs, added support for sfive
-rwxr-xr-x | src/flufigut.py | 21 | ||||
-rw-r--r-- | templates/flumotion/default/http-stream.xml | 27 |
2 files changed, 36 insertions, 12 deletions
diff --git a/src/flufigut.py b/src/flufigut.py index f29deb3..83e1220 100755 --- a/src/flufigut.py +++ b/src/flufigut.py @@ -403,10 +403,23 @@ if output_format == 'flumotion': 'port': port, } } - if 'rrd-dir' in globals.keys(): - flow['streamer'][name]['rrd_dir'] = globals['rrd-dir'], name - flow['streamer'][name]['rrd_clients'] = "%s/%s_clients.rrd" % (globals['rrd-dir'], name) - flow['streamer'][name]['rrd_bytes'] = "%s/%s_bytes.rrd" % (globals['rrd-dir'], name) + + if 'stats' in globals.keys(): + flow['streamer'][name]['plugs'] = {} + if 'rrd' in globals['stats'].keys(): + flow['streamer'][name]['plugs']['rrd'] = {} + flow['streamer'][name]['plugs']['rrd']['clients'] = "%s/%s_clients.rrd" % (globals['stats']['rrd']['directory'], name) + flow['streamer'][name]['plugs']['rrd']['bytes'] = "%s/%s_bytes.rrd" % (globals['stats']['rrd']['directory'], name) + + if 'sfive' in globals['stats'].keys(): + flow['streamer'][name]['plugs']['sfive'] = {} + flow['streamer'][name]['plugs']['sfive']['socket'] = globals['stats']['sfive']['socket'] + flow['streamer'][name]['plugs']['sfive']['duration'] = globals['stats']['sfive']['duration'] + flow['streamer'][name]['plugs']['sfive']['tags'] = globals['stats']['sfive']['tags'] + flow['streamer'][name]['plugs']['sfive']['hostname'] = '%s-%s%i' % (stream[cluster]['type'], cluster, idx+1) + flow['streamer'][name]['plugs']['sfive']['content-id'] = mux_name + flow['streamer'][name]['plugs']['sfive']['format'] = format + flow['streamer'][name]['plugs']['sfive']['quality'] = profile for prop in stream[cluster]: if prop == 'max-con': diff --git a/templates/flumotion/default/http-stream.xml b/templates/flumotion/default/http-stream.xml index 3de894a..f9af92e 100644 --- a/templates/flumotion/default/http-stream.xml +++ b/templates/flumotion/default/http-stream.xml @@ -7,18 +7,29 @@ <eater name="default"> <feed alias="default">{{ component.feeder }}</feed> </eater> +%% if component.plugs is defined <plugs> -%% if component.rrd_dir is defined +%% for name, value in component.plugs.items() +%% if name == 'rrd' <plug socket="flumotion.component.plugs.rrd.ComponentRRDPlug" type="component-rrd"> -%% if component.rrd_clients is defined - <property name="clients-connected-file">{{ component.rrd_clients }}</property> -%% endif -%% if component.rrd_bytes is defined - <property name="bytes-transferred-file">{{ component.rrd_bytes }}</property> -%% endif + <property name="clients-connected-file">{{ value.clients }}</property> + <property name="bytes-transferred-file">{{ value.bytes }}</property> </plug> -%% endif +%% endif +%% if name == 'sfive' + <plug socket="flumotion.component.plugs.sfive.ComponentSFivePlug" type="component-sfive"> +%% for name, value in value.items() +%% if name != 'tags' + <property name="{{ name }}">{{ value }}</property> +%% else + <property name="tags">{{ value|join(', ') }}</property> +%% endif +%% endfor + </plug> +%% endif +%% endfor </plugs> +%% endif %% for name, value in component.properties.items() %% if name != 'samplerate' <property name="{{ name }}">{{ value }}</property> |