parent
21add2c799
commit
d5e7439343
|
@ -49,6 +49,7 @@ should now look like:
|
||||||
- [#1334](https://github.com/influxdata/telegraf/issues/1334): Prometheus output, metric refresh and caching fixes.
|
- [#1334](https://github.com/influxdata/telegraf/issues/1334): Prometheus output, metric refresh and caching fixes.
|
||||||
- [#1432](https://github.com/influxdata/telegraf/issues/1432): Panic fix for multiple graphite outputs under very high load.
|
- [#1432](https://github.com/influxdata/telegraf/issues/1432): Panic fix for multiple graphite outputs under very high load.
|
||||||
- [#1412](https://github.com/influxdata/telegraf/pull/1412): Instrumental output has better reconnect behavior
|
- [#1412](https://github.com/influxdata/telegraf/pull/1412): Instrumental output has better reconnect behavior
|
||||||
|
- [#1460](https://github.com/influxdata/telegraf/issues/1460): Remove PID from procstat plugin to fix cardinality issues.
|
||||||
|
|
||||||
## v1.0 beta 2 [2016-06-21]
|
## v1.0 beta 2 [2016-06-21]
|
||||||
|
|
||||||
|
|
|
@ -70,7 +70,7 @@ func (p *Procstat) Gather(acc telegraf.Accumulator) error {
|
||||||
p.Exe, p.PidFile, p.Pattern, p.User, err.Error())
|
p.Exe, p.PidFile, p.Pattern, p.User, err.Error())
|
||||||
} else {
|
} else {
|
||||||
for pid, proc := range p.pidmap {
|
for pid, proc := range p.pidmap {
|
||||||
p := NewSpecProcessor(p.ProcessName, p.Prefix, acc, proc, p.tagmap[pid])
|
p := NewSpecProcessor(p.ProcessName, p.Prefix, pid, acc, proc, p.tagmap[pid])
|
||||||
p.pushMetrics()
|
p.pushMetrics()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -140,7 +140,6 @@ func (p *Procstat) pidsFromFile() ([]int32, error) {
|
||||||
out = append(out, int32(pid))
|
out = append(out, int32(pid))
|
||||||
p.tagmap[int32(pid)] = map[string]string{
|
p.tagmap[int32(pid)] = map[string]string{
|
||||||
"pidfile": p.PidFile,
|
"pidfile": p.PidFile,
|
||||||
"pid": strings.TrimSpace(string(pidString)),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -165,7 +164,6 @@ func (p *Procstat) pidsFromExe() ([]int32, error) {
|
||||||
out = append(out, int32(ipid))
|
out = append(out, int32(ipid))
|
||||||
p.tagmap[int32(ipid)] = map[string]string{
|
p.tagmap[int32(ipid)] = map[string]string{
|
||||||
"exe": p.Exe,
|
"exe": p.Exe,
|
||||||
"pid": pid,
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
outerr = err
|
outerr = err
|
||||||
|
@ -193,7 +191,6 @@ func (p *Procstat) pidsFromPattern() ([]int32, error) {
|
||||||
out = append(out, int32(ipid))
|
out = append(out, int32(ipid))
|
||||||
p.tagmap[int32(ipid)] = map[string]string{
|
p.tagmap[int32(ipid)] = map[string]string{
|
||||||
"pattern": p.Pattern,
|
"pattern": p.Pattern,
|
||||||
"pid": pid,
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
outerr = err
|
outerr = err
|
||||||
|
@ -221,7 +218,6 @@ func (p *Procstat) pidsFromUser() ([]int32, error) {
|
||||||
out = append(out, int32(ipid))
|
out = append(out, int32(ipid))
|
||||||
p.tagmap[int32(ipid)] = map[string]string{
|
p.tagmap[int32(ipid)] = map[string]string{
|
||||||
"user": p.User,
|
"user": p.User,
|
||||||
"pid": pid,
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
outerr = err
|
outerr = err
|
||||||
|
|
|
@ -10,6 +10,7 @@ import (
|
||||||
|
|
||||||
type SpecProcessor struct {
|
type SpecProcessor struct {
|
||||||
Prefix string
|
Prefix string
|
||||||
|
pid int32
|
||||||
tags map[string]string
|
tags map[string]string
|
||||||
fields map[string]interface{}
|
fields map[string]interface{}
|
||||||
acc telegraf.Accumulator
|
acc telegraf.Accumulator
|
||||||
|
@ -19,6 +20,7 @@ type SpecProcessor struct {
|
||||||
func NewSpecProcessor(
|
func NewSpecProcessor(
|
||||||
processName string,
|
processName string,
|
||||||
prefix string,
|
prefix string,
|
||||||
|
pid int32,
|
||||||
acc telegraf.Accumulator,
|
acc telegraf.Accumulator,
|
||||||
p *process.Process,
|
p *process.Process,
|
||||||
tags map[string]string,
|
tags map[string]string,
|
||||||
|
@ -33,6 +35,7 @@ func NewSpecProcessor(
|
||||||
}
|
}
|
||||||
return &SpecProcessor{
|
return &SpecProcessor{
|
||||||
Prefix: prefix,
|
Prefix: prefix,
|
||||||
|
pid: pid,
|
||||||
tags: tags,
|
tags: tags,
|
||||||
fields: make(map[string]interface{}),
|
fields: make(map[string]interface{}),
|
||||||
acc: acc,
|
acc: acc,
|
||||||
|
@ -45,7 +48,7 @@ func (p *SpecProcessor) pushMetrics() {
|
||||||
if p.Prefix != "" {
|
if p.Prefix != "" {
|
||||||
prefix = p.Prefix + "_"
|
prefix = p.Prefix + "_"
|
||||||
}
|
}
|
||||||
fields := map[string]interface{}{}
|
fields := map[string]interface{}{"pid": p.pid}
|
||||||
|
|
||||||
numThreads, err := p.proc.NumThreads()
|
numThreads, err := p.proc.NumThreads()
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
|
Loading…
Reference in New Issue