ND JSON не распознается кибаной - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь преобразовать CSV-файл в ND JSON. Для этого я использовал библиотеку pandas и json.

Вот код, который я использую:

data_df = pd.read_excel(args.input)
for col in data_df:
    data_df[col] = data_df[col].replace(np.nan, '')
    data_df[col] = data_df[col].astype(str)

Кажется, что Kibana не нужна строка ID, а также двойная столбцы вместо простых, поэтому я следую с этим:

some_id = 0
with open(args.output, 'w') as f:
    for item in row_list:
        f.write('{"index":{"_id":%i}}'%(some_id)+'\n')
        new_item = item.replace("'",'"')
        new_item = new_item.replace(" ",'')
        f.write(new_item+'\n')
        some_id += 1

Это в основном делает следующее:

Input: некоторый CSV-файл

Output
{"index":{"_id":0}}
{"date":"2020-02-12","ip":"xxxxxxx","hostname":xxxxxxx","port":"xxxxxxx","Reason":"","version":"xxxxxxx","isp":"xxxxxxx","as":"xxxxxxx","country":"xxxxxxx","region":"xxxxxxx","city":"xxxxxxx","organization":"xxxxxxx","position":"xxxxxxx","latitude":"xxxxxxx","longitude":"xxxxxxx"}
{"index":{"_id":1}}
{"date":"2020-02-12","ip":"xxxxxxx","hostname":"xxxxxxx","port":"xxxxxxx","Reason":"","version":"xxxxxxx","isp":"xxxxxxx","as":"xxxxxxx","country":"xxxxxxx","region":"xxxxxxx","city":"xxxxxxx","organization":"xxxxxxx","position":"xxxxxxx","latitude":xxxxxxx","longitude":"xxxxxxx"}

Если я загружаю при этом Kibana не распознает столбцы.

Если я буквально беру один и тот же .json, удаляю и заново делаю каждый \n вручную. Это работает ...

Есть идеи о том, что может происходить? Я не могу понять, почему вместо кодирования работает \n вручную.

ПРИМЕЧАНИЕ. Я также пытался использовать \r\n в качестве разделителя

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...