<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Extracting multiline cell value in a CSV into an individual field for an event in Getting Data In</title>
    <link>https://community.splunk.com/t5/Getting-Data-In/How-to-extract-multiline-cell-value-in-a-CSV-into-an-individual/m-p/639897#M109250</link>
    <description>&lt;P&gt;For Splunk to process them properly, multi-line fields in a CSV should be enclosed in quotation marks.&amp;nbsp; Likewise, for fields with embedded commas (like Description).&lt;/P&gt;</description>
    <pubDate>Fri, 14 Apr 2023 00:21:29 GMT</pubDate>
    <dc:creator>richgalloway</dc:creator>
    <dc:date>2023-04-14T00:21:29Z</dc:date>
    <item>
      <title>How to extract multiline cell value in a CSV into an individual field for an event?</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-extract-multiline-cell-value-in-a-CSV-into-an-individual/m-p/639873#M109248</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;I'm having issues with ingesting my CSV files properly into Splunk and did not come across any current Q&amp;amp;A that could help my specific issue.&lt;/P&gt;
&lt;P&gt;An example of a couple rows of data in my CSV are as follows with their respective header field at the top of the file,&lt;/P&gt;
&lt;TABLE width="2875px"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="80px" height="21"&gt;Plugin ID&lt;/TD&gt;
&lt;TD width="70px"&gt;CVE&lt;/TD&gt;
&lt;TD width="75px"&gt;CVSS v2.0 Base Score&lt;/TD&gt;
&lt;TD width="73px"&gt;Risk&lt;/TD&gt;
&lt;TD width="120px"&gt;Host&lt;/TD&gt;
&lt;TD width="82px"&gt;Protocol&lt;/TD&gt;
&lt;TD width="70px"&gt;Port&lt;/TD&gt;
&lt;TD width="84px"&gt;Name&lt;/TD&gt;
&lt;TD width="83px"&gt;Synopsis&lt;/TD&gt;
&lt;TD width="132px"&gt;Description&lt;/TD&gt;
&lt;TD width="81px"&gt;Solution&lt;/TD&gt;
&lt;TD width="257px"&gt;See Also&lt;/TD&gt;
&lt;TD width="120px"&gt;Plugin Output&lt;/TD&gt;
&lt;TD width="81px"&gt;STIG Severity&lt;/TD&gt;
&lt;TD width="74px"&gt;CVSS v3.0 Base Score&lt;/TD&gt;
&lt;TD width="84px"&gt;CVSS v2.0 Temporal Score&lt;/TD&gt;
&lt;TD width="84px"&gt;CVSS v3.0 Temporal Score&lt;/TD&gt;
&lt;TD width="76px"&gt;Risk Factor&lt;/TD&gt;
&lt;TD width="70px"&gt;BID&lt;/TD&gt;
&lt;TD width="73px"&gt;XREF&lt;/TD&gt;
&lt;TD width="75px"&gt;MSKB&lt;/TD&gt;
&lt;TD width="92px"&gt;Plugin Publication Date&lt;/TD&gt;
&lt;TD width="101px"&gt;Plugin Modification Date&lt;/TD&gt;
&lt;TD width="88px"&gt;Metasploit&lt;/TD&gt;
&lt;TD width="78px"&gt;Core Impact&lt;/TD&gt;
&lt;TD width="82px"&gt;CANVAS&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80px"&gt;135860&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="75px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="73px"&gt;None&lt;/TD&gt;
&lt;TD width="120px"&gt;host2.web.com&lt;/TD&gt;
&lt;TD width="82px"&gt;tcp&lt;/TD&gt;
&lt;TD width="70px"&gt;445&lt;/TD&gt;
&lt;TD width="84px"&gt;WMI Not Available&lt;/TD&gt;
&lt;TD width="83px"&gt;WMI queries could not be made against the remote host.&lt;/TD&gt;
&lt;TD width="132px"&gt;WMI (Windows Management Instrumentation) is not available on the&lt;BR /&gt;remote host over DCOM. WMI queries are used to gather information&lt;BR /&gt;about the remote host, such as its current state, network interface&lt;BR /&gt;configuration, etc.&lt;BR /&gt;&lt;BR /&gt;Without this information Nessus may not be able to identify installed&lt;BR /&gt;software or security vunerabilities that exist on the remote host.&lt;/TD&gt;
&lt;TD width="81px"&gt;n/a&lt;/TD&gt;
&lt;TD width="257px"&gt;&lt;A href="https://docs.microsoft.com/en-us/windows/win32/wmisdk/wmi-start-page" target="_blank" rel="noopener"&gt;https://docs.microsoft.com/en-us/windows/win32/wmisdk/wmi-start-page&lt;/A&gt;&lt;/TD&gt;
&lt;TD width="359px"&gt;Can't connect to the 'root\CIMV2' WMI namespace.&lt;/TD&gt;
&lt;TD width="84px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="76px"&gt;None&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="73px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="75px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="92px"&gt;4/21/20&lt;/TD&gt;
&lt;TD width="101px"&gt;12/21/22&lt;/TD&gt;
&lt;TD width="88px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="78px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="82px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="80px"&gt;166602&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="75px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="73px"&gt;None&lt;/TD&gt;
&lt;TD width="120px"&gt;host2.web.com&lt;/TD&gt;
&lt;TD width="82px"&gt;tcp&lt;/TD&gt;
&lt;TD width="70px"&gt;0&lt;/TD&gt;
&lt;TD width="84px"&gt;Asset Attribute: Fully Qualified Domain Name (FQDN)&lt;/TD&gt;
&lt;TD width="83px"&gt;Report Fully Qualified Domain Name (FQDN) for the remote host.&lt;/TD&gt;
&lt;TD width="132px"&gt;Report Fully Qualified Domain Name (FQDN) for the remote host.&lt;/TD&gt;
&lt;TD width="81px"&gt;n/a&lt;/TD&gt;
&lt;TD width="257px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="120px"&gt;The FQDN for the remote host has been determined to be:&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; FQDN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : host2.web.com&lt;BR /&gt;&amp;nbsp; Confidence : 100&lt;BR /&gt;&amp;nbsp; Resolves&amp;nbsp;&amp;nbsp; : True&lt;BR /&gt;&amp;nbsp; Method&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : rDNS Lookup: IP Address&lt;BR /&gt;&lt;BR /&gt;Another possible FQDN was also detected:&lt;/TD&gt;
&lt;TD width="81px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="74px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="84px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="84px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="76px"&gt;None&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="73px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="75px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="92px"&gt;10/27/22&lt;/TD&gt;
&lt;TD width="101px"&gt;10/27/22&lt;/TD&gt;
&lt;TD width="88px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="78px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="82px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="70px"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the second event's Plugin Output field, it keeps reading each new line as a new row. A lot of the rows contain similar data which is causing there to be far more logged events than there are rows in the CSV file.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;How can I ensure these fields get parsed properly to keep each row within one event and each cell as it's own field? I have tried a handful of configurations and am currently working with the following,&lt;/P&gt;
&lt;P&gt;props.conf&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;[csv]
INDEXED_EXTRACTIONS = csv
DATETIME_CONFIG = CURRENT
SHOULD_LINEMERGE = true
NO_BINARY_CHECK = true
CHARSET = AUTO
KV_MODE = none
pulldown_type = true

[scan_reports]
REPORT-scan_reports = csv_fields&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;transforms.conf&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;[csv_fields]
DELIMS = ","
FIELDS = "Plugin ID", "CVE", CVSS v2.0 Base Score", "Risk", "Host", "Protocol", "Port", "Name", "Synposis", "Description", "Solution", "See Also", "Plugin Output", "STIG Severity", "CVSS v3.0 Base Score", "CVSS v2.0 Temporal Score",	"CVSS v3.0 Temporal Score", "Risk Factor", "BID", "XREF", "MSKB", "Plugin Publication Date", "Plugin Modification Date", "Metasploit", "Core Impact", "CANVAS"&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any help will be greatly appreciated!&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Apr 2023 16:22:42 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-extract-multiline-cell-value-in-a-CSV-into-an-individual/m-p/639873#M109248</guid>
      <dc:creator>astackpole</dc:creator>
      <dc:date>2023-04-14T16:22:42Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting multiline cell value in a CSV into an individual field for an event</title>
      <link>https://community.splunk.com/t5/Getting-Data-In/How-to-extract-multiline-cell-value-in-a-CSV-into-an-individual/m-p/639897#M109250</link>
      <description>&lt;P&gt;For Splunk to process them properly, multi-line fields in a CSV should be enclosed in quotation marks.&amp;nbsp; Likewise, for fields with embedded commas (like Description).&lt;/P&gt;</description>
      <pubDate>Fri, 14 Apr 2023 00:21:29 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Getting-Data-In/How-to-extract-multiline-cell-value-in-a-CSV-into-an-individual/m-p/639897#M109250</guid>
      <dc:creator>richgalloway</dc:creator>
      <dc:date>2023-04-14T00:21:29Z</dc:date>
    </item>
  </channel>
</rss>

