본문 바로가기
Python

스플렁크 쿼리 결과 가져오기

by 앗사비 2023. 11. 10.
728x90
import requests
import pandas as pd
from io import StringIO

# 자체 인증서 사용시 필요
requests.packages.urllib3.disable_warnings()

# 변수 정의
url = "https://splunk.test.com:8089/services/search/v2/jobs/export" #8089 포트 오픈 필요 
username = "admin"
password = "pw"
search_query = "search host=log.test.com | timechart span=1h count"
earliest_time = "-1d@d"
latest_time = "now"
output_mode = "csv"  

# 데이터 설정
data = {
    'search': search_query,
    'output_mode': output_mode,
    'earliest_time': earliest_time,
    'latest_time': latest_time,
}

headers = {'Content-Type': 'application/x-www-form-urlencoded'}
auth = (username, password)

# 요청 보내고 응답 처리 (자체 인증서 사용시 verify=False)
response = requests.post(url, headers=headers, auth=auth, data=data, verify=False)

# Pandas DataFrame으로 읽기
df = pd.read_csv(StringIO(response.text))

# DataFrame 출력
print(df)
728x90