Skip to content
Snippets Groups Projects
Commit 97e44547 authored by Erik Reid's avatar Erik Reid
Browse files

use new redis schema for classifier routes

parent f8773eed
No related branches found
No related tags found
No related merge requests found
...@@ -27,28 +27,11 @@ def coriant_addresses(): ...@@ -27,28 +27,11 @@ def coriant_addresses():
@routes.route("/juniper-server-addresses", methods=['GET', 'POST']) @routes.route("/juniper-server-addresses", methods=['GET', 'POST'])
@common.require_accepts_json @common.require_accepts_json
def juniper_addresses(): def juniper_addresses():
backend_data_schema = { # TODO: definitive way of returning these addresses
"$schema": "http://json-schema.org/draft-07/schema#", # TODO: probably this (and corant, infinera routes) can be removed
"type": "array", routers = current_app.config[
"items": { "INVENTORY_PROVIDER_CONFIG"]["routers"]
"type": "object", return jsonify([r['hostname'] for r in routers])
"properties": {
"ip_address": {"type": "string"}
},
"required": ["ip_address"]
}
}
servers = common.get_redis().get('alarmsdb:juniper_servers')
if not servers:
return Response(
response="no juniper server data found",
status=404,
mimetype="text/html")
servers = json.loads(servers.decode('utf-8'))
jsonschema.validate(servers, backend_data_schema)
return jsonify([s['ip_address'] for s in servers])
@routes.route("/trap-metadata/<trap_type>/<source_equipment>/<path:interface>", @routes.route("/trap-metadata/<trap_type>/<source_equipment>/<path:interface>",
...@@ -64,8 +47,8 @@ def get_trap_metadata(trap_type, source_equipment, interface): ...@@ -64,8 +47,8 @@ def get_trap_metadata(trap_type, source_equipment, interface):
# This could be different calls dependant on vendor, in which case we may # This could be different calls dependant on vendor, in which case we may
# need to check the trap type, or it could be a case of a key check for # need to check the trap type, or it could be a case of a key check for
# each possible data source # each possible data source
interface_info = r.hget(interface_info_key, interface_info = r.get(
"{}::{}".format(source_equipment, interface)) 'opsdb:interface_services:%s:%s' % (source_equipment, interface))
if not interface_info: if not interface_info:
return Response( return Response(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment