最近有個朋友問到如何用python走rest api 撈graylog的資料
因為一直以來都是用curl
沒用python
今天朋友說他試出來了 感謝他的分享
做個記錄
程式碼如下
import requests
user = 'admin'
pw = 'pwd'
send_format_date_from = '2021-10-21T16:00:00.000Z'
send_format_date_to = '2021-10-21T17:00:00.000Z'
str = 'search key word'
url='http://graylog_ip:9000/api/views/search/messages'
header = {'Accept':'text/csv,application/json', 'Content-Type':'application/json', 'X-Requested-By':'cli'}
#以下是使用絶對時間的語法 上方已定義區間
graylog_send_data={ "streams":["000000000000000000000001"], "timerange":[ "absolute",{ "from":send_format_date_from, "to":send_format_date_to } ], "query_string":{ "type":"elasticsearch", "query_string":str } }
#以下是使用相對時間的語法 range 是以秒為單位
graylog_send_data={ "streams":["000000000000000000000001"], "timerange":{ "type":"relative","range":60 }, "query_string":{ "type":"elasticsearch", "query_string":str } }
r = requests.post(url, auth=(user, pw), headers=header, json=graylog_send_data)
print(r.text)
相對時間或絶對時間擇一使用
沒有留言:
張貼留言