<?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: Json ingestion --&amp;gt; Data models Inquiry around best practices in All Apps and Add-ons</title>
    <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360564#M43574</link>
    <description>&lt;P&gt;At search time you can try this to simply remove the trailing &lt;CODE&gt;{}&lt;/CODE&gt; from any field:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;| rename *{} AS *
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;A run anywhere example of this in action is:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;| makeresults
| eval field1{} = "value1", field2{} = "value2", field3 = "value3"
| rename *{} AS *
&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Wed, 03 Jan 2018 22:47:13 GMT</pubDate>
    <dc:creator>micahkemp</dc:creator>
    <dc:date>2018-01-03T22:47:13Z</dc:date>
    <item>
      <title>Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360556#M43566</link>
      <description>&lt;P&gt;A colleague of mine is reporting that data models don't support {} characters in field names.&lt;/P&gt;

&lt;P&gt;1) Is this true?&lt;BR /&gt;
2) If it is true, what's the best practice for getting around this? Is there an addon available that converts all { and } to another character? I have tons of log sources whose fields include squiggly braces. &lt;/P&gt;</description>
      <pubDate>Tue, 02 Jan 2018 21:18:45 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360556#M43566</guid>
      <dc:creator>bgagliardi1</dc:creator>
      <dc:date>2018-01-02T21:18:45Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360557#M43567</link>
      <description>&lt;P&gt;You can use FIELDALIAS in props.conf to rename the auto-extracted field names into datamodel compliant (preferably CIM-compliant, if possible) field names:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;FIELDALIAS-&amp;lt;class&amp;gt; = (&amp;lt;orig_field_name&amp;gt; AS &amp;lt;new_field_name&amp;gt;)+
* Use this to apply aliases to a field. The original field is not removed.
  This just means that the original field can be searched on using any of
  its aliases.
* You can create multiple aliases for the same field.
* &amp;lt;orig_field_name&amp;gt; is the original name of the field.
* &amp;lt;new_field_name&amp;gt; is the alias to assign to the field.
* You can include multiple field alias renames in the same stanza.
* Field aliasing is performed at search time, after field extraction, but
  before calculated fields (EVAL-* statements) and lookups.
  This means that:
        * Any field extracted at search time can be aliased.
        * You can specify a lookup based on a field alias.
        * You cannot alias a calculated field.
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 02 Jan 2018 23:38:10 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360557#M43567</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-02T23:38:10Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360558#M43568</link>
      <description>&lt;P&gt;@micahkemp - is there a more programmatic way to go about this? Or do I have to write some kind of script that querys all of my fields, greps for {} and make a new alias for it that doesn't have {}? Also, can I specify an index or sourcetype for the fields/do I have to worry about aliases that have duplicate names?&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 20:31:43 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360558#M43568</guid>
      <dc:creator>bgagliardi1</dc:creator>
      <dc:date>2018-01-03T20:31:43Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360559#M43569</link>
      <description>&lt;P&gt;Datamodels have an explicit (and finite) set of fields already, so scripting something to find all your available fields and use &lt;CODE&gt;FIELDALIAS&lt;/CODE&gt; to remove the &lt;CODE&gt;{}&lt;/CODE&gt; wouldn't really accomplish anything for you anyway.&lt;/P&gt;

&lt;P&gt;What you'll really have to do is examine your datamodels (homegrown, CIM, or whatever) and determine which fields in your events represent the fields in the datamodel it belongs to.  This may sound tedious, but it's the method Splunk uses for normalization of datamodels.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 20:43:25 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360559#M43569</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-03T20:43:25Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360560#M43570</link>
      <description>&lt;P&gt;@micahkemp - I don't necessarily want to provide all fields and aliases to every data model. Rather, from the context of any app, for a new data model, if a search is made, there's a pseudonym automatically available for any field that contains {}. &lt;/P&gt;

&lt;P&gt;Perhaps leveraging Splunk API with a script, and programmatically updating the config files.  Do I have to update each props.conf respective to each app, or could I somehow globally share it, assuming any of my logic works? &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;

&lt;P&gt;I'm definitely trying to avoid any kind of manual process whatsoever. Maintaining each new field manually wouldn't scale in my environment.&lt;/P&gt;

&lt;P&gt;Thanks for your help and input.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 21:53:20 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360560#M43570</guid>
      <dc:creator>bgagliardi1</dc:creator>
      <dc:date>2018-01-03T21:53:20Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360561#M43571</link>
      <description>&lt;P&gt;I'm not saying what you want to do is wrong, but it's not inline with working with datamodels.  Datamodels, by definition, are a predefined and finite set of fields.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 22:28:23 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360561#M43571</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-03T22:28:23Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360562#M43572</link>
      <description>&lt;P&gt;This is my workaround for now within datamodels, as an example:&lt;/P&gt;

&lt;P&gt;index=proofpoint policyRoutes{}=* | rename policyRoutes{} as policyRoutes&lt;/P&gt;

&lt;P&gt;Will have to just be in training unless I can get it to be programmatic.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 22:43:16 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360562#M43572</guid>
      <dc:creator>bgagliardi1</dc:creator>
      <dc:date>2018-01-03T22:43:16Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360563#M43573</link>
      <description>&lt;P&gt;Which datamodel is the field &lt;CODE&gt;policyRoutes&lt;/CODE&gt; defined in?&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 22:44:19 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360563#M43573</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-03T22:44:19Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360564#M43574</link>
      <description>&lt;P&gt;At search time you can try this to simply remove the trailing &lt;CODE&gt;{}&lt;/CODE&gt; from any field:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;| rename *{} AS *
&lt;/CODE&gt;&lt;/PRE&gt;

&lt;P&gt;A run anywhere example of this in action is:&lt;/P&gt;

&lt;PRE&gt;&lt;CODE&gt;| makeresults
| eval field1{} = "value1", field2{} = "value2", field3 = "value3"
| rename *{} AS *
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 03 Jan 2018 22:47:13 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360564#M43574</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-03T22:47:13Z</dc:date>
    </item>
    <item>
      <title>Re: Json ingestion --&gt; Data models Inquiry around best practices</title>
      <link>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360565#M43575</link>
      <description>&lt;P&gt;It's also worth noting that datamodel feeds can't contain pipes, so your search above can't be used with datamodels.&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jan 2018 22:55:38 GMT</pubDate>
      <guid>https://community.splunk.com/t5/All-Apps-and-Add-ons/Json-ingestion-gt-Data-models-Inquiry-around-best-practices/m-p/360565#M43575</guid>
      <dc:creator>micahkemp</dc:creator>
      <dc:date>2018-01-03T22:55:38Z</dc:date>
    </item>
  </channel>
</rss>

