<?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: How to parse my json in Splunk Search</title>
    <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693709#M235991</link>
    <description>&lt;P&gt;Thanks, I can get the Name_A, but Name_B is null...&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jerrytao_0-1721295863449.png" style="width: 400px;"&gt;&lt;img src="https://community.splunk.com/t5/image/serverpage/image-id/31814iAEC575C0871FC0F6/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jerrytao_0-1721295863449.png" alt="jerrytao_0-1721295863449.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 18 Jul 2024 09:44:45 GMT</pubDate>
    <dc:creator>jerrytao</dc:creator>
    <dc:date>2024-07-18T09:44:45Z</dc:date>
    <item>
      <title>How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693688#M235987</link>
      <description>&lt;P&gt;With specific query, I can get below value for one field:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"key1"&lt;/SPAN&gt;&lt;SPAN&gt;: {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"field1"&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;x&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"key2"&lt;/SPAN&gt;&lt;SPAN&gt;: {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"field2"&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;xx&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"key3"&lt;/SPAN&gt;&lt;SPAN&gt;: {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"field3"&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;xxx&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Every time, the string of key1,2,3 are different, and the string of field1,2,3 are also different, even the number of key is different for each query, it may eixst key4, key5...&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Now I want to get below table, could someone help on this? Thanks.&lt;/DIV&gt;&lt;DIV&gt;&lt;TABLE border="1" width="44.44404994045163%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN&gt;Name A&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;Name B&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="33.333333333333336%"&gt;&lt;SPAN&gt;key1&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD width="33.333333333333336%"&gt;&lt;SPAN&gt;field1&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="33.333333333333336%"&gt;&lt;SPAN&gt;key2&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD width="33.333333333333336%"&gt;&lt;SPAN&gt;field2&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN&gt;key3&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN&gt;field3&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;TD&gt;...&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 18 Jul 2024 08:54:21 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693688#M235987</guid>
      <dc:creator>jerrytao</dc:creator>
      <dc:date>2024-07-18T08:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693692#M235989</link>
      <description>&lt;LI-CODE lang="markup"&gt;| eval Name_A=json_array_to_mv(json_keys(field))
| mvexpand Name_A
| eval Name_B=json_array_to_mv(json_keys(json_extract(field,Name_A)))&lt;/LI-CODE&gt;</description>
      <pubDate>Thu, 18 Jul 2024 08:58:57 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693692#M235989</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2024-07-18T08:58:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693709#M235991</link>
      <description>&lt;P&gt;Thanks, I can get the Name_A, but Name_B is null...&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jerrytao_0-1721295863449.png" style="width: 400px;"&gt;&lt;img src="https://community.splunk.com/t5/image/serverpage/image-id/31814iAEC575C0871FC0F6/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jerrytao_0-1721295863449.png" alt="jerrytao_0-1721295863449.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jul 2024 09:44:45 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693709#M235991</guid>
      <dc:creator>jerrytao</dc:creator>
      <dc:date>2024-07-18T09:44:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693711#M235992</link>
      <description>&lt;P&gt;OK the method works with some data as shown by this runanywhere example based on your sample data:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| makeresults format=json data="[{
    \"key1\": {
        \"field1\": \"x\"
    },
    \"key2\": {
        \"field2\": \"xx\"
    },
    \"key3\": {
        \"field3\": \"xxx\"
    }
}]"
| rename _raw as field
| table field
| eval Name_A=json_array_to_mv(json_keys(field))
| mvexpand Name_A
| eval Name_B=json_array_to_mv(json_keys(json_extract(field,Name_A)))&lt;/LI-CODE&gt;&lt;P&gt;This would seem to suggest that it is something to do with your actual data, which you have hidden. Please provide some anonymised representative samples so we can progress the solution.&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jul 2024 10:07:07 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693711#M235992</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2024-07-18T10:07:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693714#M235994</link>
      <description>&lt;P&gt;Below is the sample for the field "NotExportedParameters".&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jerrytao_0-1721298211277.png" style="width: 400px;"&gt;&lt;img src="https://community.splunk.com/t5/image/serverpage/image-id/31815iEA96E1CFEF172B74/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jerrytao_0-1721298211277.png" alt="jerrytao_0-1721298211277.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The hidden part are not fixed string, it can be different every time.&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I want to get is as below:&lt;/P&gt;&lt;TABLE border="1" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="50%"&gt;hidden part&lt;/TD&gt;&lt;TD width="50%"&gt;reason&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;part1&lt;/TD&gt;&lt;TD width="50%"&gt;&lt;SPAN&gt;ValueOutOfRange&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;part2&lt;/TD&gt;&lt;TD width="50%"&gt;&lt;SPAN&gt;ValueOutOfRange&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;...&lt;/TD&gt;&lt;TD width="50%"&gt;..&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="50%"&gt;part 6&lt;/TD&gt;&lt;TD width="50%"&gt;&lt;SPAN&gt;SchemaValidation&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Thu, 18 Jul 2024 10:27:05 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693714#M235994</guid>
      <dc:creator>jerrytao</dc:creator>
      <dc:date>2024-07-18T10:27:05Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693720#M235996</link>
      <description>&lt;P&gt;Your field names possibly have dots in them? Try this way&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| eval Name_B=json_array_to_mv(json_keys(json_extract_exact(field,Name_A)))&lt;/LI-CODE&gt;</description>
      <pubDate>Thu, 18 Jul 2024 10:55:42 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693720#M235996</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2024-07-18T10:55:42Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693724#M235999</link>
      <description>&lt;P&gt;It still doesn't work.&lt;/P&gt;&lt;P&gt;Yes, It has dot, the pattern for Name_A is like below:&lt;/P&gt;&lt;P&gt;a.b.c:d-x.0.0&lt;/P&gt;&lt;P&gt;x is number 1/2/3&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jul 2024 11:06:04 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693724#M235999</guid>
      <dc:creator>jerrytao</dc:creator>
      <dc:date>2024-07-18T11:06:04Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693728#M236002</link>
      <description>&lt;P&gt;Here is a runanywhere example showing it working&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| makeresults format=json data="[{
    \"key 1\": {
        \"field1\": \"x\"
    },
    \"a.b.c:d-1.0.0\": {
        \"field2\": \"xx\"
    },
    \"key3\": {
        \"field3\": \"xxx\"
    }
}]"
| rename _raw as field
| table field
| eval Name_A=json_array_to_mv(json_keys(field))
| mvexpand Name_A
| eval Name_B=json_array_to_mv(json_keys(json_extract_exact(field,Name_A)))&lt;/LI-CODE&gt;&lt;P&gt;What else can you tell us about the key names?&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jul 2024 11:30:06 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693728#M236002</guid>
      <dc:creator>ITWhisperer</dc:creator>
      <dc:date>2024-07-18T11:30:06Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693784#M236017</link>
      <description>&lt;P&gt;An easier, and perhaps more semantic method is to use JSON functions introduced in 8.1 to restructure data. (As we have seen before, you have developers who overload JSON's key name to convey data, which is never a good thing. &amp;nbsp;If you have any influence on them, maybe ask them to change structure before it reaches data consumer.)&lt;/P&gt;&lt;P&gt;With the data you illustrated, Splunk would have given you fields like key1.field1, key2.field2. &amp;nbsp;Iterate over them using foreach.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| foreach *.*
    [eval temp = json_object(), temp = json_set(temp, "Name A", "&amp;lt;&amp;lt;MATCHSEG1&amp;gt;&amp;gt;", "Name B", "&amp;lt;&amp;lt;MATCHSEG2&amp;gt;&amp;gt;", "Value", '&amp;lt;&amp;lt;FIELD&amp;gt;&amp;gt;'),
    reformat = mvappend(reformat, temp)]
| mvexpand reformat
| spath input=reformat
| fields - _* key* temp&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;Your example results in&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Name A&lt;/TD&gt;&lt;TD&gt;Name B&lt;/TD&gt;&lt;TD&gt;Value&lt;/TD&gt;&lt;TD&gt;reformat&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;key1&lt;/TD&gt;&lt;TD&gt;field1&lt;/TD&gt;&lt;TD&gt;x&lt;/TD&gt;&lt;TD&gt;{"Name A":"key1","Name B":"field1","Value":"x"}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;key2&lt;/TD&gt;&lt;TD&gt;field2&lt;/TD&gt;&lt;TD&gt;xx&lt;/TD&gt;&lt;TD&gt;{"Name A":"key2","Name B":"field2","Value":"xx"}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;key3&lt;/TD&gt;&lt;TD&gt;field3&lt;/TD&gt;&lt;TD&gt;xxx&lt;/TD&gt;&lt;TD&gt;{"Name A":"key3","Name B":"field3","Value":"xxx"}&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;Here is an emulation you can play with and compare with real data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;| makeresults
| eval _raw="{
    \"key1\": {
        \"field1\": \"x\"
    },
    \"key2\": {
        \"field2\": \"xx\"
    },
    \"key3\": {
        \"field3\": \"xxx\"
    }
}"
| spath
``` data emulation above ```&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Jul 2024 18:56:45 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693784#M236017</guid>
      <dc:creator>yuanliu</dc:creator>
      <dc:date>2024-07-18T18:56:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to parse my json</title>
      <link>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693815#M236025</link>
      <description>Thank you, I figure it out.</description>
      <pubDate>Fri, 19 Jul 2024 03:19:10 GMT</pubDate>
      <guid>https://community.splunk.com/t5/Splunk-Search/How-to-parse-my-json/m-p/693815#M236025</guid>
      <dc:creator>jerrytao</dc:creator>
      <dc:date>2024-07-19T03:19:10Z</dc:date>
    </item>
  </channel>
</rss>

