You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
273 lines
11 KiB
273 lines
11 KiB
<?xml version="1.0" encoding="utf-8"?>
|
|
<form version="1.1">
|
|
<fieldset autoRun="true" submitButton="false">
|
|
<input type="dropdown" token="host">
|
|
<label>Host</label>
|
|
<allowCustomValues>true</allowCustomValues>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype=ontap:system source="system-get-version"
|
|
| rename host as hostname
|
|
| fields hostname
|
|
| dedup hostname
|
|
| sort hostname
|
|
</query>
|
|
<earliest>-4h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
<fieldForLabel>hostname</fieldForLabel>
|
|
<fieldForValue>hostname</fieldForValue>
|
|
</input>
|
|
<input type="dropdown" token="name">
|
|
<label>Volume Name</label>
|
|
<allowCustomValues>true</allowCustomValues>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype=ontap:perf source=VolumePerfHandler host="$host$"
|
|
| rename instance_name AS volume
|
|
| fields volume
|
|
| dedup volume
|
|
| sort volume
|
|
</query>
|
|
<earliest>-4h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
<fieldForLabel>volume</fieldForLabel>
|
|
<fieldForValue>volume</fieldForValue>
|
|
</input>
|
|
<input type="time">
|
|
<default>Last 60 minutes</default>
|
|
<label></label>
|
|
</input>
|
|
</fieldset>
|
|
<label>Volume Detail - NetApp Data ONTAP</label>
|
|
<row>
|
|
<table>
|
|
<title>Volume Detail</title>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype="ontap:volume" (source=volume-get-iter
|
|
volume-id-attributes.name="$name$") OR
|
|
(source=volume-list-info-iter-start name="$name$")
|
|
host="$host$"
|
|
| `CoalesceVolumeFields`
|
|
| rename "volume-id-attributes.owning-vserver-name" AS vserver
|
|
| eval pseudovserver=if(isnull(vserver),1,0)
|
|
| eval vserver=if(pseudovserver==1,host,vserver)
|
|
| dedup name, vserver, host
|
|
| eval "gb-total"=`BytesToGigaBytes(sz_total)`
|
|
| eval "gb-free"=`BytesToGigaBytes(sz_free)`
|
|
| eval vserver=if(pseudovserver==1,"",vserver)
|
|
| sort name, vserver, host
|
|
| rename name AS "Volume",
|
|
"vserver" AS "Vserver",
|
|
"host" AS "Host",
|
|
"containing-aggregate" AS "Aggregate",
|
|
"percentage-used" AS "Used (%)",
|
|
"gb-total" AS "Total Space (GB)",
|
|
"gb-free" AS "Free Space(GB)",
|
|
snapshot-percent-reserved AS "Snapshot Reserve (%)"
|
|
| table "Volume",
|
|
"Vserver",
|
|
"Host",
|
|
"Aggregate",
|
|
"Used (%)",
|
|
"Total Space (GB)",
|
|
"Free Space(GB)",
|
|
"Snapshot Reserve (%)"
|
|
</query>
|
|
<earliest>-24h@h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
</table>
|
|
</row>
|
|
<row>
|
|
<table>
|
|
<title>Associated Aggregates</title>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype="ontap:volume" (source=volume-get-iter
|
|
volume-id-attributes.name="$name$") OR
|
|
(source=volume-list-info-iter-start name="$name$")
|
|
host="$host$"
|
|
| `CoalesceVolumeFields`
|
|
| rename "containing-aggregate" as aggregate
|
|
| search name="$name$"
|
|
| dedup name, host
|
|
| dedup aggregate, host
|
|
| sort aggregate, host
|
|
| rename aggregate AS "Aggregate", host AS "Host"
|
|
| table Aggregate, Host
|
|
</query>
|
|
<earliest>-24h@h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
<drilldown>
|
|
<link>
|
|
<![CDATA[aggregate_detail/?form.host=$row.Host$&form.name=$row.Aggregate$]]>
|
|
</link>
|
|
</drilldown>
|
|
</table>
|
|
</row>
|
|
<row>
|
|
<table>
|
|
<title>Associated QTrees</title>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype=ontap:qtree source=qtree-list-iter* (volume="$name$") host="$host$" id!=0
|
|
| dedup id, qtree, host
|
|
| sort host, volume, qtree
|
|
| rename host AS "Host",
|
|
volume AS "Volume",
|
|
id AS "ID",
|
|
qtree AS "Qtree",
|
|
oplocks AS "Oplocks",
|
|
status AS "Status",
|
|
security-style AS "Security Style"
|
|
| table "Host",
|
|
"Volume",
|
|
"ID",
|
|
"Qtree",
|
|
"Oplocks",
|
|
"Status",
|
|
"Security Style"
|
|
</query>
|
|
<earliest>-24h@h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
<drilldown>
|
|
<link>
|
|
<![CDATA[qtree_detail/?form.host=$row.Host$&form.volume=$row.Volume$&form.name=$row.Qtree$&form.id=$row.ID$]]>
|
|
</link>
|
|
</drilldown>
|
|
</table>
|
|
</row>
|
|
<row>
|
|
<table>
|
|
<title>Associated LUNs</title>
|
|
<search>
|
|
<query>
|
|
`ontap-index` sourcetype=ontap:lun (source=lun-get-iter volume="$name$") OR
|
|
(source=lun-list-info path="/vol/$name$/*") host="$host$"
|
|
| dedup serial-number,host
|
|
| rename size-used as used
|
|
| sort host, path
|
|
| eval "size_total"=`BytesToGigaBytes(size)`
|
|
| eval "size_used"=`BytesToGigaBytes(used)`
|
|
| rename
|
|
host AS "Host",
|
|
path AS "Path",
|
|
serial-number AS "Serial Number",
|
|
size_total AS "Total Size (GB)",
|
|
size_used AS "Used Size (GB)"
|
|
| table
|
|
"Host",
|
|
"Path",
|
|
"Serial Number",
|
|
"Total Size (GB)",
|
|
"Used Size (GB)"
|
|
</query>
|
|
<earliest>-24h@h</earliest>
|
|
<latest>now</latest>
|
|
</search>
|
|
<drilldown>
|
|
<link>
|
|
<![CDATA[lun_detail/?form.host=$row.Host$&form.name=$row.Path$]]>
|
|
</link>
|
|
</drilldown>
|
|
</table>
|
|
</row>
|
|
<row>
|
|
<chart>
|
|
<search>
|
|
<query>
|
|
| savedsearch "accel_volume_latency_rate"
|
|
| search host="$host$" instance_name="$name$"
|
|
| timechart
|
|
first(avg_latency_average) as avg_latency_average
|
|
first(other_latency_average) as other_latency_average
|
|
first(write_latency_average) as write_latency_average
|
|
first(read_latency_average) as read_latency_average
|
|
by fullName
|
|
</query>
|
|
</search>
|
|
<title>Selected Volume Latency (ms)</title>
|
|
<option name="charting.axisY.scale">linear</option>
|
|
<option name="charting.chart">line</option>
|
|
<option name="charting.chart.nullValueMode">connect</option>
|
|
<option name="charting.chart.stackMode">default</option>
|
|
<option name="charting.legend.placement">right</option>
|
|
<option name="charting.axisX.scale">linear</option>
|
|
<option name="charting.drilldown">none</option>
|
|
</chart>
|
|
</row>
|
|
<row>
|
|
<chart>
|
|
<search>
|
|
<query>
|
|
| savedsearch "accel_volume_data_rates"
|
|
| search host="$host$" instance_name="$name$"
|
|
| timechart
|
|
first(read_data_rate) as read_data_rate
|
|
first(write_data_rate) as write_data_rate
|
|
by fullName
|
|
</query>
|
|
</search>
|
|
<title>Data Transfer Rates (B/s)</title>
|
|
<option name="charting.axisY.scale">linear</option>
|
|
<option name="charting.chart">line</option>
|
|
<option name="charting.chart.nullValueMode">connect</option>
|
|
<option name="charting.chart.stackMode">default</option>
|
|
<option name="charting.legend.placement">right</option>
|
|
<option name="charting.axisX.scale">linear</option>
|
|
<option name="charting.drilldown">none</option>
|
|
</chart>
|
|
</row>
|
|
<row>
|
|
<chart>
|
|
<search>
|
|
<query>
|
|
| savedsearch "accel_volume_iops"
|
|
| search host="$host$" instance_name="$name$"
|
|
| timechart
|
|
first(total_ops_rate) as total_ops_rate
|
|
first(write_ops_rate) as write_ops_rate
|
|
first(read_ops_rate) as read_ops_rate
|
|
first(other_ops_rate) as other_ops_rate
|
|
by fullName
|
|
</query>
|
|
</search>
|
|
<title>IOPS</title>
|
|
<option name="charting.axisY.scale">linear</option>
|
|
<option name="charting.chart">line</option>
|
|
<option name="charting.chart.nullValueMode">connect</option>
|
|
<option name="charting.chart.stackMode">default</option>
|
|
<option name="charting.legend.placement">right</option>
|
|
<option name="charting.axisX.scale">linear</option>
|
|
<option name="charting.drilldown">none</option>
|
|
</chart>
|
|
</row>
|
|
<row>
|
|
<chart>
|
|
<search>
|
|
<query>
|
|
| savedsearch "accel_volume_block_ops"
|
|
| search host="$host$" instance_name="$name$"
|
|
| timechart
|
|
first(read_blocks_rate) as read_blocks_rate
|
|
first(write_blocks_rate) as write_blocks_rate
|
|
by fullName
|
|
</query>
|
|
</search>
|
|
<title>Number of Block Operations Per Second</title>
|
|
<option name="charting.axisY.scale">linear</option>
|
|
<option name="charting.chart">line</option>
|
|
<option name="charting.chart.nullValueMode">connect</option>
|
|
<option name="charting.chart.stackMode">default</option>
|
|
<option name="charting.legend.placement">right</option>
|
|
<option name="charting.axisX.scale">linear</option>
|
|
<option name="charting.drilldown">none</option>
|
|
</chart>
|
|
</row>
|
|
</form>
|