#python-3.x #python-requests
Вопрос:
У меня есть эта функция, которую я использую для получения данных из базы данных.
def get_Oversightresponse():
url = "http://172.16.26.252:8090/api/v2/query?org=megaamp;bucket=monitoring"
payload="from(bucket: "monitoring")rn|> range(start: -60m, stop: now())rn|> filter(fn: (r) => r["_measurement"] == "snmp_trap")rn|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn:rn"_value")rn|> map(fn: (r) => ({rntime: r._time,rnlevel: r["engine.35.1.14.1.1"],rnname: r["engine.35.1.14.1.2"],rnsignaler: r["engine.35.1.14.1.3"],rnpayload: r["engine.35.1.14.1.6"],rn}))rn|> filter(fn: (r) => r.level > 30 and r.name != "signal-fetch-failed")"
headers = {'Authorization': 'Token secrettoken','Accept': 'application/csv','Content-Type': 'application/vnd.flux'}
response = requests.request("POST", url, headers=headers, data=payload)
if response.status_code / 100 == 2:
print(response.text)
else:
print("ERROR" str(response.status_code))
Данные, которые я получаю из вышеупомянутого почтового запроса, выглядят следующим образом:
,result,table,level,name,payload,signaler,time
,_result,0,50,HA STATE,"{""is_active"":""Active""}",aesi,2021-09-29T04:14:59.830020749Z
,_result,1,40,ROUTING_ENGINE_SVC_STATE,"{""state"":""stopped"",""timestamp"":""2021-09-29 00:14:09,518""}",ROUTING_ENGINE,2021-09-29T04:14:09.520427756Z
,_result,2,50,SVC_STATE,"{""Stopped_by_docker_container"":""Signalu003d15""}",Agent_Manager_Service,2021-09-29T04:14:09.81728152Z
,_result,3,40,script_executor_SVC_STATE,"{""state"":""stopped"",""timestamp"":""2021-09-29 00:14:09,590""}",script_executor,2021-09-29T04:14:09.603449415Z
Мне нужно проанализировать его и отсортировать данные по временной метке. Может ли кто-нибудь подсказать, как это можно сделать?
Комментарии:
1. «Может ли кто — нибудь подсказать, как это можно сделать?» — Да. Вы используете
csv
модуль для разделения данных на столбцы, которые вы используетеsorted()
для сортировки строк.2. Ты можешь показать мне, как это сделать?
3. Например, «Можете ли вы реализовать это для меня, чтобы я мог скопировать и вставить это?» — нет. Я дал вам указания, где искать и с чего начать, вы пишете код. Существуют тысячи и тысячи примеров того, как использовать
csv
модуль и как сортировать вещи в Python. Проведите свое исследование, напишите свой код. Вы можете задать вопрос здесь, когда у вас возникнет проблема с написанным вами кодом. Но «пожалуйста, напишите это для меня» — это не вопрос.4. Конечно, спасибо, я попробую.