modify yc/yx prefix
This commit is contained in:
parent
c67da98d32
commit
8d7371b5ba
|
|
@ -36,6 +36,11 @@ const (
|
|||
dataLengthU = 14106
|
||||
)
|
||||
|
||||
const (
|
||||
ycPrefix = "tm"
|
||||
yxPrefix = "ts"
|
||||
)
|
||||
|
||||
func (p *Parser) Init() error {
|
||||
p.pointFrequency = 50
|
||||
return nil
|
||||
|
|
@ -117,7 +122,7 @@ func (p *Parser) checkHeaderAndInitMetrics(data []byte, topic string) ([]telegra
|
|||
for i := range metrics {
|
||||
metrics[i] = metric.New("voltage",
|
||||
map[string]string{"device": device},
|
||||
make(map[string]any, 51), // 3*8+2*8+2+3*3
|
||||
make(map[string]any, 49), // 3*8+2*8+2+3*3
|
||||
time.Unix(second, int64(i*1e9/p.pointFrequency)))
|
||||
}
|
||||
default:
|
||||
|
|
@ -127,7 +132,7 @@ func (p *Parser) checkHeaderAndInitMetrics(data []byte, topic string) ([]telegra
|
|||
return metrics, deviceType, nil
|
||||
}
|
||||
|
||||
// analog metrics, voltage or current
|
||||
// yc metrics
|
||||
func (p *Parser) fillAnalogChanMetrics(metrics []telegraf.Metric, data []byte, begin int) {
|
||||
|
||||
for ci := range 8 {
|
||||
|
|
@ -139,14 +144,14 @@ func (p *Parser) fillAnalogChanMetrics(metrics []telegraf.Metric, data []byte, b
|
|||
pa := math.Float64frombits(binary.LittleEndian.Uint64(data[b+8 : b+16]))
|
||||
rms := math.Float64frombits(binary.LittleEndian.Uint64(data[b+16 : b+24]))
|
||||
|
||||
metrics[mj].AddField("c"+chanNo+"_amp", amp)
|
||||
metrics[mj].AddField("c"+chanNo+"_pa", pa)
|
||||
metrics[mj].AddField("c"+chanNo+"_rms", rms)
|
||||
metrics[mj].AddField(ycPrefix+chanNo+"_amp", amp)
|
||||
metrics[mj].AddField(ycPrefix+chanNo+"_pa", pa)
|
||||
metrics[mj].AddField(ycPrefix+chanNo+"_rms", rms)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// switch metrics
|
||||
// yx metrics
|
||||
func (p *Parser) fillSwitchChanMetrics(metrics []telegraf.Metric, data []byte, begin int) {
|
||||
|
||||
for ci := range 2 {
|
||||
|
|
@ -155,7 +160,7 @@ func (p *Parser) fillSwitchChanMetrics(metrics []telegraf.Metric, data []byte, b
|
|||
for bk := range 8 {
|
||||
chanNo := strconv.Itoa(ci*8 + bk + 1)
|
||||
|
||||
metrics[mj].AddField("i"+chanNo, uint8((data[b]>>bk)&1))
|
||||
metrics[mj].AddField(yxPrefix+chanNo, uint8((data[b]>>bk)&1))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue