{{$v := .OstentVersion}}{{.Data.hostname}} ostent{{HTML "{{HTML "
{{template "defines::define_panella" .}}
{{template "defines::define_panelmem" .}}
{{template "defines::define_paneldf" .}}
{{template "defines::define_panelcpu" .}}
{{template "defines::define_panelif" .}}
{{template "defines::define_panelps" .}}
{{/* */}}{{define "defines::alink_badgeleft"}}{{.Badge}} {{.Text}}{{end}}{{/* */}}{{define "defines::alink_badgeright"}}{{.Text}} {{.Badge}}{{end}}{{/* */}}{{define "defines::avlink"}}{{.LinkText}}{{end}}{{/* */}}{{define "defines::define_hostname"}}{{.Data.hostname}}{{end}}{{/* */}}{{define "defines::define_panelcpu"}}{{$p := .Data.params}}

... CPU

Core User% Sys% Wait% Idle%
{{if .Data.cpu}}{{range $cpu := .Data.cpu.List}}{{jsx `{this.List(Data).map(function($cpu, i) { return`}}
{{$cpu.N}} {{$cpu.UserPct}}% {{$cpu.SysPct}}% {{$cpu.WaitPct}}% {{$cpu.IdlePct}}%{{jsx `{jsdefines.Sparkline({ref: i, col: 'IdlePct', defaultSpots: true})}`}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_paneldf"}}{{$p := .Data.params}}

... Disk usage

{{template "defines::avlink" Vlink $p $p.Dfk 1 "Device"}}{{template "defines::avlink" Vlink $p $p.Dfk 2 "Mounted"}}{{template "defines::avlink" Vlink $p $p.Dfk 6 "Total"}}{{template "defines::avlink" Vlink $p $p.Dfk 5 "Used"}}{{template "defines::avlink" Vlink $p $p.Dfk 3 "Avail"}}{{template "defines::avlink" Vlink $p $p.Dfk 4 "Use%"}}
{{if .Data.diskUsage}}{{range $df := .Data.diskUsage.List}}{{jsx `{this.List(Data).map(function($df, i) { return`}}
{{$df.DevName}} {{$df.DirName}} {{$df.Total}} {{$df.Inodes}} {{$df.Used}} {{$df.Iused}} {{$df.Avail}} {{$df.Ifree}} {{$df.UsePct}}% {{$df.IusePct}}%{{jsx `{jsdefines.Sparkline({ref: i, col: 'UsePct'})}`}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_panelif"}}{{$p := .Data.params}}

... Interfaces

Interface IP Loss IO ps Packets IO ps IO bps
{{if .Data.ifaddrs}}{{range $if := .Data.ifaddrs.List}}{{jsx `{this.List(Data).map(function($if, i) { return`}}
{{$if.Name}}{{$if.IP}} {{$if.DropsIn}}/{{$if.DropsOut}},{{$if.ErrorsIn}}/{{$if.ErrorsOut}} {{$if.DeltaDropsIn}}/{{$if.DeltaDropsOut}},{{$if.DeltaErrorsIn}}/{{$if.DeltaErrorsOut}} {{$if.PacketsIn}}/{{$if.PacketsOut}} {{$if.DeltaPacketsIn}}/{{$if.DeltaPacketsOut}} {{$if.BytesIn}}/{{$if.BytesOut}} {{$if.DeltaBitsIn}}/{{$if.DeltaBitsOut}}{{jsx `{jsdefines.Sparkline({ref: i, col: 'DeltaBytesOutNum'})}`}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_panella"}}{{$p := .Data.params}}

... Load avg

Period Value
{{if .Data.loadavg}}{{range $la := .Data.loadavg.List}}{{jsx `{this.List(Data).map(function($la, i) { return`}}
{{$la.Period}}m {{$la.Value}}{{jsx `{jsdefines.Sparkline({ref: i, col: 'Value'})}`}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_panelmem"}}{{$p := .Data.params}}

... Memory

Memory Total Used Free Use%
{{if .Data.memory}}{{range $mem := .Data.memory.List}}{{jsx `{this.List(Data).map(function($mem, i) { return`}}
{{$mem.Kind}} {{$mem.Total}} {{$mem.Used}} {{$mem.Free}} {{$mem.UsePct}}%{{jsx `{jsdefines.Sparkline({ref: i, col: 'UsePct'})}`}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_panelps"}}{{$p := .Data.params}}

... Processes

{{template "defines::avlink" Vlink $p $p.Psk 1 "PID"}} {{template "defines::avlink" Vlink $p $p.Psk 2 "UID"}} {{template "defines::avlink" Vlink $p $p.Psk 3 "USER"}} {{template "defines::avlink" Vlink $p $p.Psk 4 "PR"}} {{template "defines::avlink" Vlink $p $p.Psk 5 "NI"}} {{template "defines::avlink" Vlink $p $p.Psk 6 "VIRT"}} {{template "defines::avlink" Vlink $p $p.Psk 7 "RES"}} {{template "defines::avlink" Vlink $p $p.Psk 8 "TIME"}} {{template "defines::avlink" Vlink $p $p.Psk 9 "COMMAND"}}
{{if .Data.procs}}{{range $ps := .Data.procs.List}}{{jsx `{this.List(Data).map(function($ps) { return`}}
{{$ps.PID}} {{$ps.UID}} {{$ps.User}} {{$ps.Priority}} {{$ps.Nice}} {{$ps.Size}} {{$ps.Resident}} {{$ps.Time}} {{$ps.Name}}
{{jsx `})}`}}{{end}}{{end}}
{{end}}{{/* */}}{{define "defines::define_uptime"}}{{.Data.uptime}}{{end}}