Splunk Search

text box input for decimal numbers

mqueddeng
Engager

Hi there,

I have a text box input (SearchTextSetting module) where users can enter in a number, which is then used for calculations in HiddenSearch & HiddenPostProcess.
The problem I have is that, it only seems to recognize the digits before a decimal point. ie. if user enters 2.50 then when I print it's value to table, it displays as 2.

I attach code snippet below, where SearchTextSetting input is used to set $baseload$.
When I use whole numbers, the calculations work out fine, but I would like it to also work properly when decimal numbers are entered.

...
         <module name="HiddenSearch" autoRun="False">
          <param name="search">index=perf sourcetype=snmp | bucket _time span=1m | stats avg(dpStatusSystemUsageLoad) as "AvgLoad" by host,_time | eval BaseLoad=$baseload$</param>
          <module name="SearchTextSetting" layoutPanel="panel_row1_col3" autoRun="False">
              <param name="elementName">baseload_element</param>
              <param name="settingName">baseload_setting</param>
              <param name="label">Key in baseload ie. System Usageload when no transactions are running (use 2 if unknown)</param>
              <module name="ConvertToIntention">
                <param name="settingToConvert">baseload_setting</param>
                <param name="intention">
                  <param name="name">stringreplace</param>
                  <param name="arg">
                    <param name="baseload">
                      <param name="fillOnEmpty">True</param>
                      <param name="value">$target$</param>
                    </param>
                  </param>
                </param>
                <module name="HiddenPostProcess" layoutPanel="panel_row3_col1">
                  <param name="search">table _time,AvgLoad,BaseLoad</param>
                  <module name="JobProgressIndicator">
                    <module name="EnablePreview">
                      <param name="enable">True</param>
                      <param name="display">False</param>
                      <module name="SimpleResultsTable">
                        <param name="drilldown">row</param>
                        <param name="count">20</param>
                      </module>
                    </module><!-- EnablePreview -->
                  </module><!-- JobProgressIndicator -->
                </module><!-- HiddenPostProcess -->
              ...
0 Karma

mqueddeng
Engager

ok after some unsuccessful attempts at using addterm instead of stringreplace (for which I found documentation lacking..), I got it working by using tonumber function

ie. before fix:
index=perf sourcetype=snmp | bucket _time span=1m | stats avg(dpStatusSystemUsageLoad) as "AvgLoad" by host,_time | eval BaseLoad=$baseload$

after fix:
index=perf sourcetype=snmp | bucket _time span=1m | stats avg(dpStatusSystemUsageLoad) as "AvgLoad" by host,_time | eval BaseLoad=tonumber("$baseload$",10)

0 Karma
Get Updates on the Splunk Community!

Introducing the 2024 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...

Introducing the 2024 Splunk MVPs!

We are excited to announce the 2024 cohort of the Splunk MVP program. Splunk MVPs are passionate members of ...

Splunk Custom Visualizations App End of Life

The Splunk Custom Visualizations apps End of Life for SimpleXML will reach end of support on Dec 21, 2024, ...