def database_host_metrics_view(self, request, database, hostname): from util.metrics.metrics import get_metric_datapoints_for URL = get_credentials_for( environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint title = "{} Metrics".format(database.name) if request.method == 'GET': engine = database.infra.engine_name db_name = database.name hosts = [] for host in Host.objects.filter( instance__databaseinfra=database.infra).distinct(): hosts.append(host.hostname.split('.')[0]) graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL, granurality='10seconds', from_option='2hours') return render_to_response("logical/database/metrics/metrics.html", locals(), context_instance=RequestContext(request))
def metricdetail_view(self, request, database_id): from util.metrics.metrics import get_metric_datapoints_for hostname = request.GET.get('hostname') metricname = request.GET.get('metricname') database = Database.objects.get(id=database_id) engine = database.infra.engine_name db_name = database.name URL = get_credentials_for( environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint from_option = request.POST.get('change_from') or '2hours' granurality = self.get_granurality(from_option) or '20minutes' from_options = self.build_select_options( from_option, self.get_from_options()) graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL, metric_name=metricname, granurality=granurality, from_option=from_option) title = "{} {} Metric".format( database.name, graph_data[0]["graph_name"]) show_filters = Configuration.get_by_name_as_int('metric_filters') if graph_data[0]['normalize_series'] == True: show_filters = False return render_to_response("logical/database/metrics/metricdetail.html", locals(), context_instance=RequestContext(request))
def database_host_metrics_view(self, request, database, hostname): from util.metrics.metrics import get_metric_datapoints_for URL = get_credentials_for(environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint title = "{} Metrics".format(database.name) if request.method == 'GET': engine = database.infra.engine_name db_name = database.name hosts = [] for host in Host.objects.filter(instance__databaseinfra=database.infra).distinct(): hosts.append(host.hostname.split('.')[0]) graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL) return render_to_response("logical/database/metrics/metrics.html", locals(), context_instance=RequestContext(request))
def metricdetail_view(self, request, database_id): from util.metrics.metrics import get_metric_datapoints_for if request.method == 'GET': hostname = request.GET.get('hostname') metricname = request.GET.get('metricname') database = Database.objects.get(id=database_id) engine = database.infra.engine_name db_name = database.name URL = get_credentials_for(environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL, metric_name=metricname) title = "{} {} Metric".format(database.name, graph_data[0]["graph_name"]) return render_to_response("logical/database/metrics/metricdetail.html", locals(), context_instance=RequestContext(request))
def database_host_metrics_view(self, request, database, hostname): from util.metrics.metrics import get_metric_datapoints_for URL = get_credentials_for(environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint title = "{} Metrics".format(database.name) if request.method == 'GET': engine = database.infra.engine_name db_name = database.name hosts = [] for instance in database.infra.instances.all(): hosts.append(instance.hostname.hostname.split('.')[0]) graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL) return render_to_response("logical/database/metrics/metrics.html", locals(), context_instance=RequestContext(request))
def metricdetail_view(self, request, database_id): from util.metrics.metrics import get_metric_datapoints_for hostname = request.GET.get('hostname') metricname = request.GET.get('metricname') database = Database.objects.get(id=database_id) engine = database.infra.engine_name db_name = database.name URL = get_credentials_for( environment=database.environment, credential_type=CredentialType.GRAPHITE).endpoint from_option = request.POST.get('change_from') or '2hours' granurality = self.get_granurality(from_option) or '20minutes' from_options = self.build_select_options(from_option, self.get_from_options()) graph_data = get_metric_datapoints_for(engine, db_name, hostname, url=URL, metric_name=metricname, granurality=granurality, from_option=from_option) title = "{} {} Metric".format(database.name, graph_data[0]["graph_name"]) show_filters = Configuration.get_by_name_as_int('metric_filters') if graph_data[0]['normalize_series'] == True: show_filters = False return render_to_response("logical/database/metrics/metricdetail.html", locals(), context_instance=RequestContext(request))