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!

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
Get Updates on the Splunk Community!

Monitoring MariaDB and MySQL

In a previous post, we explored monitoring PostgreSQL and general best practices around which metrics to ...

Financial Services Industry Use Cases, ITSI Best Practices, and More New Articles ...

Splunk Lantern is a Splunk customer success center that provides advice from Splunk experts on valuable data ...

Splunk Federated Analytics for Amazon Security Lake

Thursday, November 21, 2024  |  11AM PT / 2PM ET Register Now Join our session to see the technical ...