5 CSV naar JSON voorverwerking

Overzicht

In deze voorverwerkingsstap is het mogelijk om gegevens van CSV-bestanden om te zetten naar JSON-indeling. Dit wordt ondersteund in:

  • items (item-sjablonen)
  • regels voor ontdekking op laag niveau (low-level discovery rules)

Configuratie

Om een CSV naar JSON voorverwerkingsstap te configureren:

  • Ga naar het tabblad Voorverwerking in de item/ontdekkingsregel configuratie
  • Klik op Toevoegen
  • Selecteer de optie CSV naar JSON

De eerste parameter maakt het mogelijk om een aangepast scheidingsteken in te stellen. Let op dat als de eerste regel van de CSV-invoer begint met "Sep=" en wordt gevolgd door een enkel UTF-8-teken, dan wordt dat teken gebruikt als het scheidingsteken als de eerste parameter niet is ingesteld. Als de eerste parameter niet is ingesteld en er geen scheidingsteken wordt opgehaald uit de "Sep=" regel, dan wordt een komma als scheidingsteken gebruikt.

De tweede optionele parameter maakt het mogelijk om een aanhalingsteken in te stellen.

Als het selectievakje Met kopregel is gemarkeerd, worden de waarden van de kopregel geïnterpreteerd als kolomnamen (zie Verwerking van kopregel voor meer informatie).

Als het selectievakje Aangepast bij fout is gemarkeerd, wordt het item niet onondersteund in geval van een mislukte voorverwerkingsstap. Daarnaast kunnen aangepaste foutafhandelingsopties worden ingesteld: de waarde negeren, een opgegeven waarde instellen of een opgegeven foutbericht instellen.

Verwerking van kopregel

De kopregel van het CSV-bestand kan op twee verschillende manieren worden verwerkt:

  • Als het selectievakje Met kopregel is gemarkeerd - worden de waarden van de kopregel geïnterpreteerd als kolomnamen. In dit geval moeten de kolomnamen uniek zijn en de gegevensrij mag niet meer kolommen bevatten dan de kopregel;
  • Als het selectievakje Met kopregel niet is gemarkeerd - wordt de kopregel geïnterpreteerd als gegevens. Kolomnamen worden automatisch gegenereerd (1,2,3,4...)

Voorbeeld van een CSV-bestand:

Nr,Item naam,Sleutel,Hoeveelheid
       1,actief agent item,agent.hostname,33
       "2","passief agent item","agent.versie","44"
       3,"actief,passief agent items",agent.ping,55

Een aanhalingsteken binnen een aanhalingsteken in het invoerbestand moet worden ontsnapt door er een ander aanhalingsteken voor te plaatsen.

Verwerking van kopregel

JSON-uitvoer wanneer een kopregel wordt verwacht:

[
          {
             "Nr":"1",
             "Item naam":"actief agent item",
             "Sleutel":"agent.hostname",
             "Hoeveelheid":"33"
          },
          {
             "Nr":"2",
             "Item naam":"passief agent item",
             "Sleutel":"agent.versie",
             "Hoeveelheid":"44"
          },
          {
             "Nr":"3",
             "Item naam":"actief,passief agent items",
             "Sleutel":"agent.ping",
             "Hoeveelheid":"55"
          }
       ]

Verwerking zonder kopregel

JSON-uitvoer wanneer er geen kopregel wordt verwacht:

[
          {
             "1":"Nr",
             "2":"Item naam",
             "3":"Sleutel"
             "4":"Hoeveelheid"
          },
          {
             "1":"1",
             "2":"actief agent item",
             "3":"agent.hostname"
             "4":"33"
          },
          {
             "1":"2",
             "2":"passief agent item",
             "3":"agent.versie"
             "4":"44"
          },
          {
             "1":"3",
             "2":"actief,passief agent items",
             "3":"agent.ping"
             "4":"55"
          }
       ]