Using SplunkJs, by clicking button, token value is getting set but not passing to drilldown panel searches.
Can you please help on why its not working?
Steps:
1. Create Splunk js to enable token on click of a button
2. In dashboard, add a HTML button with required details (please refer the code attached)
3. Create a panel and update search with the token_name
Observation:
Token value is getting set but not sure if the value is passed to down panels or panel is not identifying the token value that has been set by clicking on button
Source code:
<dashboard script="start_tracking_1.js" version="1.1">
<label>test_dashboard 3</label>
<row id="tab_menu">
<panel>
<title>$clickedButtonValue$</title>
<html>
<button type="button" class="btn button_tab" id="StartTracking" data-value="value1">
<h2 style="text-align: center;">
<span style="color: #000000;">
<strong>Start Tracking</strong>
</span>
</h2>
</button>
</html>
</panel>
</row>
<row>
<panel>
<table>
<title>Drilldown Panel</title>
<search>
<query>index=_internal source="$clickedButtonValue$" | head 10</query>
<earliest>-24h@h</earliest>
<latest>now</latest>
</search>
<option name="refresh.display">progressbar</option>
</table>
</panel>
</row>
</dashboard>
Splunk JS:
require([
'splunkjs/mvc',
'splunkjs/mvc/simplexml/ready!',
'jquery'
], function(mvc, ready, $) {
var defaultTokenModel = mvc.Components.getInstance('default');
// Add click event listener to button with id 'StartTracking'
$('#StartTracking').on('click', function() {
var value = $(this).data('value'); // Correct jQuery method to get data-value
console.log('Button clicked, data-value: ' + value);
defaultTokenModel.set('clickedButtonValue', value); // Set token value
});
});
... View more