Я могу получить результаты запроса one_shot, но я не могу получить полный контент поля _raw.Как получить полный контент результата поиска Splunk при использовании SDK Python?
import splunklib.client as client
import splunklib.results as results
def splunk_oneshot(search_string, **CARGS):
# Run a oneshot search and display the results using the results reader
service = client.connect(**CARGS)
oneshotsearch_results = service.jobs.oneshot(search_string)
# Get the results and display them using the ResultsReader
reader = results.ResultsReader(oneshotsearch_results)
for item in reader:
for key in item.keys():
print(key, len(item[key]), item[key])
Это дает мне следующее за _raw:
('_raw', 120, '2013-05-03 22:17:18,497+0000 [SWF Activity attNsgActivitiesTaskList1 19] INFO c.s.r.h.s.a.n.AttNsgSmsRequestAdapter - ')
Так это содержание усечен в 120 символов. Мне нужно полное значение результата поиска, потому что мне нужно выполнить некоторые сравнения строк. Я не нашел никакой документации по полям ResultsReader или их ограничениям по размеру.
Это решило проблему, спасибо hexx! Есть ли какая-либо документация по этим полям результатов? – sophe
Существует некоторая хорошая информация о параметрах метода 'jobs.oneshot()' [здесь, на dev.splunk.com] (http://docs.splunk.com/DocumentationStatic/PythonSDK/1.0/client.html#splunklib. client.Jobs.oneshot), хотя я вижу, что параметр «segmentation» там не указан! Я исправлю это. Информация существует в ссылке API Splunk REST для конечной точки '/ services/search/jobs/{SID}/events', в которой метод' job.results() ', вызываемый' jobs.oneshot() ', в конечном счете хиты. – hexx
Нет, это сломано снова, усекается на 119 символов даже с сегментированным = 'none': ('_raw', 119, '2013-05-08 16: 09: 11,040 + 0000 [SWF Activity attNsgActivitiesTaskList1 1] INFO csrhsanAttNsgSmsRequestAdapter - ') Я сделал установку pip -U в случае изменения sdk – sophe