- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How can I use block or line comments to test the intermediate output of a multiline splunk query?
codekiln
Explorer
10-26-2021
08:40 AM
https://docs.splunk.com/Documentation/SCS/current/Search/Comments says that we may use block comments or line comments in SPL2.
When trying to learn how to count the number of objects in a JSON array returned from json_extract, I came across this post, which has an extended multiline splunk query. I wanted to see how the command worked, so I tried using both block and line comments to comment out the end of the query and replace it with a comand to view the intermediate output, e.g.
index=_internal | head 1 | fields _raw _time | eval _raw="{
\"cities\": [
{
\"name\": \"London\",
\"Bridges\": [
{ \"name\": \"Tower Bridge\", \"length\": 801 },
{ \"name\": \"Millennium Bridge\", \"length\": 1066 }
]
},
{
\"name\": \"Venice\",
\"Bridges\": [
{ \"name\": \"Rialto Bridge\", \"length\": 157 },
{ \"name\": \"Bridge of Sighs\", \"length\": 36 },
{ \"name\": \"Ponte della Paglia\" }
]
},
{
\"name\": \"San Francisco\",
\"Bridges\": [
{ \"name\": \"Golden Gate Bridge\", \"length\": 8981 },
{ \"name\": \"Bay Bridge\", \"length\": 23556 }
]
}
]
}"
| rename COMMENT as "the logic"
| spath cities{} output=cities
/*
| stats count by cities
| spath input=cities Bridges{} output=Bridges
| mvexpand Bridges
| spath input=cities name output=city
| spath input=Bridges
| table city name length
*/
| table cities
Both commenting schemes generate an error:
Error in 'spath' command: Invalid argument: '/*'
This error occurs no matter which step I try to introspect.
The error is prevented by cutting the commented code out. For now, my workaround is to keep another text editor open, and gradually copy and paste in the lines I want. This works, but it's slower than it needs to be, relative to other programming and query languages.
Key question: How can I use block or line comments to test the intermediate output of a multiline splunk query?
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

richgalloway

SplunkTrust
10-26-2021
10:50 AM
If you're not in Dashboard Studio then SPL2 doesn't apply.
To comment out code in SPL, use triple-backticks.
index=_internal | head 1 | fields _raw _time | eval _raw="{
\"cities\": [
{
\"name\": \"London\",
\"Bridges\": [
{ \"name\": \"Tower Bridge\", \"length\": 801 },
{ \"name\": \"Millennium Bridge\", \"length\": 1066 }
]
},
{
\"name\": \"Venice\",
\"Bridges\": [
{ \"name\": \"Rialto Bridge\", \"length\": 157 },
{ \"name\": \"Bridge of Sighs\", \"length\": 36 },
{ \"name\": \"Ponte della Paglia\" }
]
},
{
\"name\": \"San Francisco\",
\"Bridges\": [
{ \"name\": \"Golden Gate Bridge\", \"length\": 8981 },
{ \"name\": \"Bay Bridge\", \"length\": 23556 }
]
}
]
}"
| rename COMMENT as "the logic"
| spath cities{} output=cities
```
| stats count by cities
| spath input=cities Bridges{} output=Bridges
| mvexpand Bridges
| spath input=cities name output=city
| spath input=Bridges
| table city name length
```
| table cities
---
If this reply helps you, Karma would be appreciated.
If this reply helps you, Karma would be appreciated.
