# #python #google-cloud-platform #google-cloud-networking
Вопрос:
Я хочу получить метрику https/backend_request_count.
https://cloud.google.com/monitoring/api/metrics_gcp?hl=ja#loadbalancing/https/backend_request_count
Возможно ли это получить с помощью python?
Ответ №1:
Да, это возможно. Я проследил за этим документом метрики чтения и отфильтровал его с помощью backend_request_count.
То, что я сделал, чтобы получить фильтр, — это последовал за backend_request_count облачных метрик Google и создал фильтр.
Строки «тип метрики» в этой таблице должны иметь префикс loadbalancing.googleapis.com/. Этот префикс был опущен из записей в таблице.
Следуя приведенным выше инструкциям, фильтр будет выглядеть следующим образом:
metric.type = "loadbalancing.googleapis.com/https/backend_request_count"
Применяя этот фильтр в коде, код будет выглядеть следующим образом:
from google.cloud import monitoring_v3
import time
client = monitoring_v3.MetricServiceClient()
## Don't forget to replace this dummy project_id with your actual project_id ##
project_name = f"projects/your-project-id-here"
interval = monitoring_v3.TimeInterval()
now = time.time()
seconds = int(now)
nanos = int((now - seconds) * 10 ** 9)
interval = monitoring_v3.TimeInterval(
{
"end_time": {"seconds": seconds, "nanos": nanos},
"start_time": {"seconds": (seconds - 1200), "nanos": nanos},
}
)
results = client.list_time_series(
request={
"name": project_name,
"filter": 'metric.type = "loadbalancing.googleapis.com/https/backend_request_count"',
"interval": interval,
"view": monitoring_v3.ListTimeSeriesRequest.TimeSeriesView.FULL,
}
)
for result in results:
print(result)
Это приведет к ответу Listtimeseries, вот фрагмент ответа приведенного выше кода.