Skip to main content

Trace sesji po failureMessageId i import do Mongo (m.in. finat)

Maxime avatar
Written by Maxime
Updated over 4 months ago

skrypt wyszukujący sesje po failureMessageId:

var arraya = db.getCollection('Log_20210415').distinct('executionData.id',{'executionData.logId':{$in: 2 ['ec80f010-53ee-4d4c-a120-3f6672920c85','650b4ba8-c38b-462c-abf4-9392864c4cf0', '8afe2705-3891-48f1-a77c-9ddbab00ab10','c3717fee-8e4d-4136-b41d-7b950381db97', '7b025954-7f06-47bb-b756-8831ceceeceb']},'executionData.invoker':{$not: /BatchJob/i}}) 3db.getCollection('Log_20210415').find({ 4 'executionData.id':{$in: arraya} 5})

Po otrzymaniu logów, aby zaimportować je do mongo należy w notepadzie przerobić wg:

  1. wklejamy do notepada

  2. robimy replace, używając wyrażeń regularnych, zamieniając dany regex na pustą linię:

    mceclip0.png


    regex:
    \/. [0-9]+ .\/

  3. idziemy od mongo, tworzymy nową kolekcję, robimy insert do tej kolekcji, przeklejamy treść i zapisujemy.

  4. 4. obróbka logów z kolekcji Consent:
    \/\*.*\*\/ -> pusty string
    UUID\((.*)\) -> $1
    ISODate\((.*)\) ->$1
    ObjectId\((.*)\) → $1 *w przypadku obrabiania logów z NLog

    TRZEBA ZAINSTALOWAĆ MONGOTOOLS - https://www.mongodb.com/try/download/database-tools

    cd "C:\Program Files\MongoDB\Tools\100\bin" - przejście do miejsca instalacji mongotools, mongoimport.exe

    .\mongoimport --uri="mongodb://LOGIN:HASLO@ADRES_SERWERA:27017/NAZWA_BAZY" --authenticationDatabase admin --collection=KOLEKCJA --file="C:\Users\Bartosz\Downloads\ad2.json"


    przykład:

    PS C:\Program Files\MongoDB\Tools\100\bin> .\mongoimport --uri="mongodb://bxxxp:[email protected]:27017/temp" --authenticationDatabase admin --collection=nazywasz_kolekcje --file="C:\sciezka_do_pliku_z_rozszerzeniem_pliku" --legacy




    --file - wskazanie pełnej ścieżki do pliku json po przerobieniu regexem

    przykładowy mongoexport dla loga z całego dnia dla UP z proda:

    .\mongoexport.exe --host UPMongoRS/production-external-up-2.banqware-internal.com,production-external-up-3.banqware-internal.com,production-external-up-4.banqware-internal.com --port 27017 --username username--password password --authenticationDatabase admin --db NLog --collection Log_20210430 --out up_prod_20210430
Did this answer your question?