Knowledge Management

Where to put macros.conf so available everywhere (all users/apps/searches)?

woodcock
Esteemed Legend

The subject has the entirety of my question but as a bonus to anyone who reads this, here is a macro that everyone should find useful (if you understand why this is useful, add that to your answer):

[unknownify(1)]
args = FieldName
definition = eval $FieldName$=if(isnull($FieldName$),"unknown",$FieldName$)
[unknownify(2)]
args = FieldName, UnknownText
definition = eval $FieldName$=if(isnull($FieldName$),"$UnknownText$",$FieldName$)
Tags (3)
1 Solution

_d_
Splunk Employee
Splunk Employee

You need to give your macro enough permissions to be available for use everywhere. You can use the UI to do this or you can use the local.meta and export it to system. Assuming you have your macros.conf in /opt/splunk/etc/apps/distsearch_base/local/, then in /opt/splunk/etc/apps/distsearch_base/metadata/local.meta you need to enter the following:

[macros]
export = system

This stanza will export all macros defined in macros.conf in that app/config bundle to system so that they'll available to all users/apps etc.

Hope this helps.

> please upvote and accept answer if you find it useful - thanks!

View solution in original post

woodcock
Esteemed Legend
Adding the local.meta change and putting the file in this directory DID work:
/opt/splunk/etc/apps/searcher_base/local/

It did NOT work when put here:
/opt/splunk/etc/apps/distsearch_base/local/
0 Karma

_d_
Splunk Employee
Splunk Employee

I just assumed you had your macros in distsearch_base. But, nonetheless, it's good to hear that your problem is resolved. Please consider upvoting marking the question as answered. Thanks. 🙂

0 Karma

_d_
Splunk Employee
Splunk Employee

You need to give your macro enough permissions to be available for use everywhere. You can use the UI to do this or you can use the local.meta and export it to system. Assuming you have your macros.conf in /opt/splunk/etc/apps/distsearch_base/local/, then in /opt/splunk/etc/apps/distsearch_base/metadata/local.meta you need to enter the following:

[macros]
export = system

This stanza will export all macros defined in macros.conf in that app/config bundle to system so that they'll available to all users/apps etc.

Hope this helps.

> please upvote and accept answer if you find it useful - thanks!

View solution in original post

woodcock
Esteemed Legend

I should have mentioned what I tried, none of which worked:

/opt/splunk/etc/system/local/

/opt/splunk/etc/apps/distsearch_base/local/

/opt/splunk/etc/apps/forwarder_base/local/

/opt/splunk/etc/apps/indexer_cluster_base/local/

/opt/splunk/etc/apps/searcher_base/local/

/opt/splunk/etc/apps/splunk_base/local/

0 Karma
.conf21 Now Fully Virtual!
Register for FREE Today!

We've made .conf21 totally virtual and totally FREE! Our completely online experience will run from 10/19 through 10/20 with some additional events, too!