
# Don't change this file
# Don't change this file
# Don't change this file


[global]
write_access = false
run_commands = false
hide_settings = false
max_file_size = 10
cache_file_depth = 5
conf_validate_on_save = true
conf_validate_on_save_exclusions = savedsearches
git_autocommit = false
git_autocommit_show_output = auto
git_autocommit_dir = 
git_autocommit_work_tree = 
btool_dirs = 
detect_changed_files = true
btool_dir_for_deployment_apps = 
btool_dir_for_master_apps = 
btool_dir_for_manager_apps = 
btool_dir_for_shcluster_apps = 
# feel free to add these configs too: |restmap|web|inputs
master_apps_gutter_unnecissary_config_files = alert_actions|addon_builder|checklist|collections|datamodels|deploymentclient|distsearch|eventgen|eventtypes|macros|savedsearches|tags|times|wmi|workflow_actions
master_apps_gutter_useful_props_and_transforms = priority|TRUNCATE|LINE_BREAKER|LINE_BREAKER_LOOKBEHIND|SHOULD_LINEMERGE|BREAK_ONLY_BEFORE_DATE|BREAK_ONLY_BEFORE|MUST_BREAK_AFTER|MUST_NOT_BREAK_AFTER|MUST_NOT_BREAK_BEFORE|DATETIME_CONFIG|TIME_PREFIX|MAX_TIMESTAMP_LOOKAHEAD|TIME_FORMAT|TZ|TZ_ALIAS|MAX_DAYS_AGO|MAX_DAYS_HENCE|MAX_DIFF_SECS_AGO|MAX_DIFF_SECS_HENCE|ADD_EXTRA_TIME_FIELDS|METRICS_PROTOCOL|STATSD-DIM-TRANSFORMS|TRANSFORMS|CHECK_FOR_HEADER|SEDCMD|SEGMENTATION|ANNOTATE_PUNCT|description|category|REGEX|FORMAT|MATCH_LIMIT|DEPTH_LIMIT|CLONE_SOURCETYPE|LOOKAHEAD|WRITE_META|DEST_KEY|DEFAULT_VALUE|SOURCE_KEY|REPEAT_MATCH|INGEST_EVAL|REGEX|REMOVE_DIMS_FROM_METRIC_NAME|METRIC
master_apps_gutter_used_sourcetypes = 
master_apps_gutter_used_sourcetypes_date =
debug_refresh_endpoints = data/ui/manager|data/ui/nav|data/ui/views|admin/alert_actions|admin/bookmarks-mc|admin/clusterconfig|admin/collections-conf|admin/commandsconf|admin/conf-checklist|admin/conf-deploymentclient|admin/conf-inputs|admin/conf-props|admin/conf-transforms|admin/conf-times|admin/conf-wmi|admin/config_tracker|admin/cooked|admin/crl|admin/datalake-index|admin/datamodel-files|admin/datamodelacceleration|admin/datamodeledit|admin/dataset_consolidation_datamodeledit|admin/deploymentserver|admin/distsearch-peer|admin/eventtypes|admin/externalconfig|admin/federated-index|admin/federated-provider|admin/federated-settings|admin/fieldaliases|admin/fieldfilters|admin/fields|admin/fifo|admin/fvtags|admin/global-banner|admin/health-report-config|admin/http|admin/index-archiver|admin/indexer-discovery-config|admin/indexes|admin/ingest-rfs-destinations|admin/journald|admin/kvstorecache|admin/limits|admin/livetail|admin/local_proxy|admin/localapps|admin/logd|admin/lookup-table-files|admin/macros|admin/manager|admin/messages-conf|admin/metric-schema|admin/metric-schema-reload|admin/metric_alerts|admin/metrics-reload|admin/metricstore_rollup|admin/modalerts|admin/monitor|admin/nav|admin/noah-config|admin/panels|admin/passwords|admin/pools|admin/props-eval|admin/props-extract|admin/props-lookup|admin/proxysettings|admin/raw|admin/remote_eventlogs|admin/remote_monitor|admin/remote_perfmon|admin/remote_raw|admin/remote_script|admin/remote_udp|admin/ruleset-deployment|admin/savedsearch|admin/scheduledviews|admin/script|admin/search-head-bundles|admin/secure_gateway_modular_input|admin/serverclasses|admin/shclusterconfig|admin/sourcetype-rename|admin/sourcetypes|admin/splunk-audit|admin/splunktcptoken|admin/ssl|admin/syslog|admin/tags|admin/tcpout-default|admin/tcpout-group|admin/tcpout-server|admin/telemetry|admin/transforms-extract|admin/transforms-lookup|admin/transforms-reload|admin/transforms-statsd|admin/udp|admin/ui-tour|admin/views|admin/viewstates|admin/visualizations|admin/vix-indexes|admin/vix-providers|admin/web-features|admin/workflow-actions|admin/workload-categories|admin/workload-config|admin/workload-policy|admin/workload-pools|admin/workload-rules|admin/xrdr-config
rest_api_dashboard_list = false
dashboard_xml_file_experimental_actions = false

[hook]
disabled = false
showWithSave = true 
order = 10
matchtype = file
showInPane = both

[action]
disabled = false
order = 10

[action:header_developer_actions]
label = Developer actions
order = 0.1
action = heading

[action:btool_check]
label = btool check
order = 0.2
action = btool-check
[action:debug_refresh_al]
label = debug/refresh all
order = 0.3
action = refresh
[action:debug_refresh_specific]
label = debug/refresh endpoint
order = 0.4
action = refresh:?
[action:bump]
label = bump
order = 0.5
action = bump
[action:header_custom_actions]
label = Custom actions
order = 0.6
action = heading

[hook:btool]
# when editing .conf files in local or default, have an option to run btool
# note we want to exclude deployment-apps, master-apps, manager-apps and shcluster
match = etc/(?:system|apps/.*?|users/.*?)/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE}
action = btool:${BASEFILE}

[hook:btool-hidesystemdefaults]
# when editing .conf files in local or default, have an option to run btool
# note we want to exclude deployment-apps, master-apps, manager-apps and shcluster
match = etc/(?:system|apps/.*?|users/.*?)/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE} (hide system/default)
action = btool-hidesystemdefaults:${BASEFILE}

[hook:btool_master-apps]
# when editing .conf files in master-apps local or default, have an option to run btool
match = /master-apps/[^\/]*/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE} [master-apps]
action = btool:${BASEFILE}:master-apps

[hook:btool-hidesystemdefaults_master-apps]
# when editing .conf files in master-apps local or default, have an option to run btool
match = /master-apps/[^\/]*/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE} (hide system/default) [master-apps]
action = btool-hidesystemdefaults:${BASEFILE}:master-apps

[hook:btool_manager-apps]
# when editing .conf files in manager-apps local or default, have an option to run btool
match = /manager-apps/[^\/]*/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE} [manager-apps]
action = btool:${BASEFILE}:manager-apps

[hook:btool-hidesystemdefaults_manager-apps]
# when editing .conf files in manager-apps local or default, have an option to run btool
match = /manager-apps/[^\/]*/(?:local|default)/[^\/]*\.conf$
matchtype = file
showWithSave = false
label = Run btool on ${BASEFILE} (hide system/default) manager-apps]
action = btool-hidesystemdefaults:${BASEFILE}:manager-apps


[hook:spec]
# when editing .conf files in local or default, have an option to show the spec files
showWithSave = false
match = /(?:local|default)/[^\/]*\.conf$
label = Open ${BASEFILE}.spec
action = spec:${BASEFILE}

[hook:python_run]
# when editing .py files in bin, have an option to run them as 'splunk cmd'
# This will only show if run_commands=true in the config file
match = .*/bin/.*\.py$
label = Run in Splunk env
action = run:splunk cmd python ${FILE}

[hook:shell_run]
# when editing .sh or .bash files in bin, have an option to run them as 'splunk cmd'
# This will only show if run_commands=true in the config file
match = .*/bin/.*\.(?:bash|sh)$
label = Run in Splunk env
action = run:splunk cmd ${FILE}

[hook:viz_run_build]
# when editing vizulisations, have an option to build them as 'npm run build'
# This will only show if run_commands=true in the config file
match = \/appserver\/static\/visualizations\/
label = npm run build
action = run:cd ${DIRNAME} && npm run build

[hook:bump]
# when editing anything in the static folder, have an option to trigger a bump
# bumping isnt required if you setup your Splunk environment for development
match = /appserver/static/
label = Bump Splunk cache
action = bump

# below here are the debug/refresh which we only define for some specific files
[hook:nav]
# when editing .xml files in ui/nav, have an option to run debug refresh on nav endpoint
match = /ui/nav/.*\.xml$
label = Debug/refresh nav
action = refresh:data/ui/nav

[hook:html]
# when editing .html or xml files in ui/html, have an option to run debug refresh on views endpoint
match = /ui/(?:html|views)/.*\.(?:ht|x)ml$
label = Debug/refresh views
action = refresh:data/ui/views

[hook:collections]
# when editing collections.conf files, have an option to run debug refresh on collections endpoint
match = /collections\.conf$
label = Debug/refresh collections-conf
action = refresh:admin/collections-conf

[hook:inputs]
# when editing inputs.conf files, have an option to run debug refresh on inputs endpoint
match = /inputs\.conf$
label = Debug/refresh conf-inputs
action = refresh:admin/conf-inputs

[hook:indexes]
# when editing index.conf files, have an option to run debug refresh on indexes endpoint
match = /indexes\.conf$
label = Debug/refresh indexes
action = refresh:admin/indexes

[hook:savedsearch]
# when editing savedsearches.conf files, have an option to run debug refresh on savedsearches endpoint
match = /savedsearches\.conf$
label = Debug/refresh savedsearch
action = refresh:admin/savedsearch

[hook:serverclass]
# when editing serverclass.conf files, have an option to run debug refresh on serverclasses endpoint
# might need admin/deploymentserver
match = /serverclass\.conf$
label = Debug/refresh serverclasses
action = refresh:admin/serverclasses

[hook:deploymentappsreload_file]
# when editing files in deployment-apps, have an option to reload deploy-server
match = /deployment-apps/
label = Reload deploy-server
action = deployserver

[hook:deploymentappsreload_folder]
# when editing files in deployment-apps, have an option to reload deploy-server
match = /deployment-apps/
matchtype = folder
label = Reload deploy-server
action = deployserver


[hook:open_folder_tree_to_file_location]
match = .*
matchtype = file
showWithSave = false
label = Open folder tree to file location
action = cd:${DIRNAME}
showInPane = editor

[hook:copy_full_file_path_to_clipboard]
match = .*
matchtype = file
label = Copy full file path to clipboard
action = clipboard:${FILE}
showWithSave = false
showInPane = tree

[hook:copy_filename_to_clipboard]
match = .*
matchtype = file
label = Copy file name to clipboard
action = clipboard:${BASEFILE}
showWithSave = false
showInPane = tree

[hook:copy_full_folder_path_to_clipboard]
match = .*
matchtype = folder
label = Copy full folder path to clipboard
action = clipboard:${FILE}
showWithSave = false
showInPane = tree

[hook:copy_foldername_to_clipboard]
match = .*
matchtype = folder
label = Copy folder name to clipboard
action = clipboard:${BASEFILE}
showWithSave = false
showInPane = tree

[hook:conf_props]
# when editing props.conf files, have an option to run debug refresh on conf-props endpoint 
# (only required when changing parse-time settings, as search-time settings take affect automatically after save and a few moment)
match = /props\.conf$
label = Debug/refresh conf-props
action = refresh:admin/conf-props 

[hook:conf_transforms]
# when editing props.conf files, have an option to run debug refresh on conf-props endpoint 
# (only required when changing parse-time settings, as search-time settings take affect automatically after save and a few moment)
match = /transforms\.conf$
label = Debug/refresh conf-transforms
action = refresh:admin/conf-transforms

[hook:conf_macros]
match = /macros\.conf$
label = Debug/refresh conf-macros
action = refresh:admin/conf-macros
