Skip to content

Commit 24f8c06

Browse files
committed
More fixes
1 parent 18e2180 commit 24f8c06

File tree

3 files changed

+48
-52
lines changed

3 files changed

+48
-52
lines changed

plugins/inputs/mavlink/mavlink.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ import (
1515
// Plugin state
1616
type Mavlink struct {
1717
// Config param
18-
FcuUrl string `toml:"fcu_url"`
19-
SystemId uint8 `toml:"system_id"`
18+
FcuURL string `toml:"fcu_url"`
19+
SystemID uint8 `toml:"system_id"`
2020
MessageFilter []string `toml:"message_filter"`
2121
StreamRequestEnable bool `toml:"stream_request_enable"`
2222
StreamRequestFrequency int `toml:"stream_request_frequency"`
@@ -61,7 +61,7 @@ func (s *Mavlink) Start(acc telegraf.Accumulator) error {
6161
Endpoints: endpointConfig,
6262
Dialect: ardupilotmega.Dialect,
6363
OutVersion: gomavlib.V2,
64-
OutSystemID: s.SystemId,
64+
OutSystemID: s.SystemID,
6565
StreamRequestEnable: s.StreamRequestEnable,
6666
StreamRequestFrequency: s.StreamRequestFrequency,
6767
})
@@ -89,7 +89,7 @@ func (s *Mavlink) Start(acc telegraf.Accumulator) error {
8989
if len(s.MessageFilter) > 0 && Contains(s.MessageFilter, result.name) {
9090
continue
9191
}
92-
result.tags["fcu_url"] = s.FcuUrl
92+
result.tags["fcu_url"] = s.FcuURL
9393
s.acc.AddFields(result.name, result.fields, result.tags)
9494
}
9595

@@ -117,9 +117,9 @@ func (s *Mavlink) Stop() {
117117
func init() {
118118
inputs.Add("mavlink", func() telegraf.Input {
119119
return &Mavlink{
120-
FcuUrl: "udp://:14540",
120+
FcuURL: "udp://:14540",
121121
MessageFilter: []string{},
122-
SystemId: 254,
122+
SystemID: 254,
123123
StreamRequestEnable: true,
124124
StreamRequestFrequency: 4,
125125
}

plugins/inputs/mavlink/mavlink_test.go

+15-15
Original file line numberDiff line numberDiff line change
@@ -9,51 +9,51 @@ import (
99
// Test that a serial port URL can be parsed.
1010
func TestParseSerialFcuUrl(t *testing.T) {
1111
testConfig := Mavlink{
12-
FcuUrl: "serial://dev/ttyACM0:115200",
12+
FcuURL: "serial://dev/ttyACM0:115200",
1313
}
1414

15-
_, error := ParseMavlinkEndpointConfig(&testConfig)
16-
require.Equal(t, error, nil)
15+
_, err := ParseMavlinkEndpointConfig(&testConfig)
16+
require.NoError(t, err)
1717
}
1818

1919
// Test that a UDP client URL can be parsed.
2020
func TestParseUDPClientFcuUrl(t *testing.T) {
2121
testConfig := Mavlink{
22-
FcuUrl: "udp://192.168.1.12:14550",
22+
FcuURL: "udp://192.168.1.12:14550",
2323
}
2424

25-
_, error := ParseMavlinkEndpointConfig(&testConfig)
26-
require.Equal(t, error, nil)
25+
_, err := ParseMavlinkEndpointConfig(&testConfig)
26+
require.NoError(t, err)
2727
}
2828

2929
// Test that a UDP server URL can be parsed.
3030
func TestParseUDPServerFcuUrl(t *testing.T) {
3131
testConfig := Mavlink{
32-
FcuUrl: "udp://:14540",
32+
FcuURL: "udp://:14540",
3333
}
3434

35-
_, error := ParseMavlinkEndpointConfig(&testConfig)
36-
require.Equal(t, error, nil)
35+
_, err := ParseMavlinkEndpointConfig(&testConfig)
36+
require.NoError(t, err)
3737
}
3838

3939
// Test that a TCP client URL can be parsed.
4040
func TestParseTCPClientFcuUrl(t *testing.T) {
4141
testConfig := Mavlink{
42-
FcuUrl: "tcp://192.168.1.12:14550",
42+
FcuURL: "tcp://192.168.1.12:14550",
4343
}
4444

45-
_, error := ParseMavlinkEndpointConfig(&testConfig)
46-
require.Equal(t, error, nil)
45+
_, err := ParseMavlinkEndpointConfig(&testConfig)
46+
require.NoError(t, err)
4747
}
4848

4949
// Test that an invalid URL is caught.
5050
func TestParseInvalidFcuUrl(t *testing.T) {
5151
testConfig := Mavlink{
52-
FcuUrl: "ftp://not-a-valid-fcu-url",
52+
FcuURL: "ftp://not-a-valid-fcu-url",
5353
}
5454

55-
_, error := ParseMavlinkEndpointConfig(&testConfig)
56-
require.Equal(t, error.Error(), "Mavlink setup error: invalid fcu_url!")
55+
_, err := ParseMavlinkEndpointConfig(&testConfig)
56+
require.Equal(t, err.Error(), "mavlink setup error: invalid fcu_url")
5757
}
5858

5959
func TestStringContains(t *testing.T) {

plugins/inputs/mavlink/mavlink_utils.go

+27-31
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
package mavlink
22

33
import (
4-
_ "embed"
54
"errors"
65
"fmt"
7-
"log"
86
"reflect"
97
"regexp"
108
"strconv"
@@ -35,7 +33,7 @@ func Contains(slice []string, str string) bool {
3533
func MavlinkEventFrameToMetric(frm *gomavlib.EventFrame) MetricFrameData {
3634
out := MetricFrameData{}
3735
out.tags = map[string]string{}
38-
out.fields = make(map[string]interface{})
36+
out.fields = make(map[string]any)
3937
out.tags["sys_id"] = fmt.Sprintf("%d", frm.SystemID())
4038

4139
m := frm.Message()
@@ -53,88 +51,86 @@ func MavlinkEventFrameToMetric(frm *gomavlib.EventFrame) MetricFrameData {
5351
}
5452

5553
out.name = ConvertToSnakeCase(t.Name())
56-
if strings.HasPrefix(out.name, "message_") {
57-
out.name = strings.TrimPrefix(out.name, "message_")
58-
}
59-
54+
out.name = strings.TrimPrefix(out.name, "message_")
6055
return out
6156
}
6257

63-
// Parse the FcuUrl config to setup a mavlib endpoint config
58+
// Parse the FcuURL config to setup a mavlib endpoint config
6459
func ParseMavlinkEndpointConfig(s *Mavlink) ([]gomavlib.EndpointConf, error) {
65-
if strings.HasPrefix(s.FcuUrl, "serial://") {
66-
tmpStr := strings.TrimPrefix(s.FcuUrl, "serial://")
60+
if strings.HasPrefix(s.FcuURL, "serial://") {
61+
tmpStr := strings.TrimPrefix(s.FcuURL, "serial://")
6762
tmpStrParts := strings.Split(tmpStr, ":")
6863
deviceName := tmpStrParts[0]
6964
baudRate := 57600
7065
if len(tmpStrParts) == 2 {
7166
newBaudRate, err := strconv.Atoi(tmpStrParts[1])
7267
if err != nil {
73-
return nil, errors.New("Mavlink setup error: serial baud rate not valid!")
68+
return nil, errors.New("mavlink setup error: serial baud rate not valid")
7469
}
7570
baudRate = newBaudRate
7671
}
7772

78-
log.Printf("Mavlink serial client: device %s, baud rate %d", deviceName, baudRate)
7973
return []gomavlib.EndpointConf{
8074
gomavlib.EndpointSerial{
8175
Device: deviceName,
8276
Baud: baudRate,
8377
},
8478
}, nil
85-
} else if strings.HasPrefix(s.FcuUrl, "tcp://") {
79+
} else if strings.HasPrefix(s.FcuURL, "tcp://") {
8680
// TCP client
87-
tmpStr := strings.TrimPrefix(s.FcuUrl, "tcp://")
81+
tmpStr := strings.TrimPrefix(s.FcuURL, "tcp://")
8882
tmpStrParts := strings.Split(tmpStr, ":")
8983
if len(tmpStrParts) != 2 {
90-
return nil, errors.New("Mavlink setup error: TCP requires a port!")
84+
return nil, errors.New("mavlink setup error: TCP requires a port")
9185
}
9286

9387
hostname := tmpStrParts[0]
94-
port := 14550
9588
port, err := strconv.Atoi(tmpStrParts[1])
9689
if err != nil {
97-
return nil, errors.New("Mavlink setup error: TCP port is invalid!")
90+
return nil, errors.New("mavlink setup error: TCP port is invalid")
9891
}
9992

10093
if len(hostname) > 0 {
101-
log.Printf("Mavlink TCP client: hostname %s, port %d", hostname, port)
10294
return []gomavlib.EndpointConf{
103-
gomavlib.EndpointTCPClient{fmt.Sprintf("%s:%d", hostname, port)},
95+
gomavlib.EndpointTCPClient{
96+
Address: fmt.Sprintf("%s:%d", hostname, port),
97+
},
10498
}, nil
10599
} else {
106-
log.Printf("Mavlink TCP server: port %d", port)
107100
return []gomavlib.EndpointConf{
108-
gomavlib.EndpointTCPServer{fmt.Sprintf(":%d", port)},
101+
gomavlib.EndpointTCPServer{
102+
Address: fmt.Sprintf(":%d", port),
103+
},
109104
}, nil
110105
}
111-
} else if strings.HasPrefix(s.FcuUrl, "udp://") {
106+
} else if strings.HasPrefix(s.FcuURL, "udp://") {
112107
// UDP client or server
113-
tmpStr := strings.TrimPrefix(s.FcuUrl, "udp://")
108+
tmpStr := strings.TrimPrefix(s.FcuURL, "udp://")
114109
tmpStrParts := strings.Split(tmpStr, ":")
115110
if len(tmpStrParts) != 2 {
116-
return nil, errors.New("Mavlink setup error: UDP requires a port!")
111+
return nil, errors.New("mavlink setup error: UDP requires a port")
117112
}
118113

119114
hostname := tmpStrParts[0]
120-
port := 14550
121115
port, err := strconv.Atoi(tmpStrParts[1])
122116
if err != nil {
123-
return nil, errors.New("Mavlink setup error: UDP port is invalid!")
117+
return nil, errors.New("mavlink setup error: UDP port is invalid")
124118
}
125119

126120
if len(hostname) > 0 {
127-
log.Printf("Mavlink UDP client: hostname %s, port %d", hostname, port)
128121
return []gomavlib.EndpointConf{
129-
gomavlib.EndpointUDPClient{fmt.Sprintf("%s:%d", hostname, port)},
122+
gomavlib.EndpointUDPClient{
123+
Address: fmt.Sprintf("%s:%d", hostname, port),
124+
},
130125
}, nil
131126
} else {
132-
log.Printf("Mavlink UDP server: port %d", port)
133127
return []gomavlib.EndpointConf{
134-
gomavlib.EndpointUDPServer{fmt.Sprintf(":%d", port)},
128+
gomavlib.EndpointUDPServer{
129+
Address: fmt.Sprintf(":%d", port),
130+
},
135131
}, nil
136132
}
137133
} else {
138-
return nil, errors.New("Mavlink setup error: invalid fcu_url!")
134+
return nil, errors.New("mavlink setup error: invalid fcu_url")
139135
}
140136
}

0 commit comments

Comments
 (0)