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 stelt u in staat om een aangepast scheidingsteken in te stellen. Let op dat als de eerste regel van de CSV-invoer begint met "Sep=" en gevolgd wordt door een enkel UTF-8-teken, dan zal dat teken als scheidingsteken worden gebruikt als de eerste parameter niet is ingesteld. Als de eerste parameter niet is ingesteld en er wordt geen scheidingsteken opgehaald uit de "Sep="-regel, dan wordt een komma als scheidingsteken gebruikt.

De tweede optionele parameter stelt u in staat om een aanhalingsteken in te stellen.

Als het selectievakje Met kopregel is aangevinkt, worden de waarden in de kopregel geïnterpreteerd als kolomnamen (zie Kopregelverwerking voor meer informatie).

Als het selectievakje Aangepast bij mislukken is aangevinkt, wordt het item niet onbruikbaar als de voorverwerkingsstap mislukt. Bovendien kunnen er aangepaste foutafhandelingsopties worden ingesteld: de waarde negeren, een gespecificeerde waarde instellen of een gespecificeerde foutmelding instellen.

Kopregelverwerking

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

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

Voorbeeld van een CSV-bestand:

Nr,Itemnaam,Sleutel,Hoeveelheid
       1,actief agent-item,agent.hostname,33
       "2","passief agent-item","agent.version","44"
       3,"actieve,passieve agent-items",agent.ping,55

Een aanhalingsteken binnen een aangehaald veld in de invoer moet worden ontsnapt door het vooraf te laten gaan door een ander aanhalingsteken.

Verwerking van kopregel

JSON-uitvoer wanneer een kopregel wordt verwacht:

[
          {
             "Nr":"1",
             "Itemnaam":"actief agent-item",
             "Sleutel":"agent.hostname",
             "Hoeveelheid":"33"
          },
          {
             "Nr":"2",
             "Itemnaam":"passief agent-item",
             "Sleutel":"agent.version",
             "Hoeveelheid":"44"
          },
          {
             "Nr":"3",
             "Itemnaam":"actieve,passieve agent-items",
             "Sleutel":"agent.ping",
             "Hoeveelheid":"55"
          }
       ]

Geen verwerking van kopregel

JSON-uitvoer wanneer er geen kopregel wordt verwacht:

[
          {
             "1":"Nr",
             "2":"Itemnaam",
             "3":"Sleutel",
             "4":"Hoeveelheid"
          },
          {
             "1":"1",
             "2":"actief agent-item",
             "3":"agent.hostname",
             "4":"33"
          },
          {
             "1":"2",
             "2":"passief agent-item",
             "3":"agent.version",
             "4":"44"
          },
          {
             "1":"3",
             "2":"actieve,passieve agent-items",
             "3":"agent.ping",
             "4":"55"
          }
       ]