fix(serializers.json): Append newline for batch-serialization (#14150)

This commit is contained in:
Sven Rebhan 2023-10-23 15:47:55 +02:00 committed by GitHub
parent 176bfa8f37
commit 8d1bf60bce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -103,6 +103,8 @@ func (s *Serializer) SerializeBatch(metrics []telegraf.Metric) ([]byte, error) {
if err != nil { if err != nil {
return []byte{}, err return []byte{}, err
} }
serialized = append(serialized, '\n')
return serialized, nil return serialized, nil
} }

View File

@ -197,7 +197,7 @@ func TestSerializeBatch(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
require.Equal( require.Equal(
t, t,
[]byte(`{"metrics":[{"fields":{"value":42},"name":"cpu","tags":{},"timestamp":0},{"fields":{"value":42},"name":"cpu","tags":{},"timestamp":0}]}`), []byte(`{"metrics":[{"fields":{"value":42},"name":"cpu","tags":{},"timestamp":0},{"fields":{"value":42},"name":"cpu","tags":{},"timestamp":0}]}`+"\n"),
buf, buf,
) )
} }
@ -219,7 +219,7 @@ func TestSerializeBatchSkipInf(t *testing.T) {
require.NoError(t, s.Init()) require.NoError(t, s.Init())
buf, err := s.SerializeBatch(metrics) buf, err := s.SerializeBatch(metrics)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, []byte(`{"metrics":[{"fields":{"time_idle":42},"name":"cpu","tags":{},"timestamp":0}]}`), buf) require.Equal(t, []byte(`{"metrics":[{"fields":{"time_idle":42},"name":"cpu","tags":{},"timestamp":0}]}`+"\n"), buf)
} }
func TestSerializeBatchSkipInfAllFields(t *testing.T) { func TestSerializeBatchSkipInfAllFields(t *testing.T) {
@ -238,7 +238,7 @@ func TestSerializeBatchSkipInfAllFields(t *testing.T) {
require.NoError(t, s.Init()) require.NoError(t, s.Init())
buf, err := s.SerializeBatch(metrics) buf, err := s.SerializeBatch(metrics)
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, []byte(`{"metrics":[{"fields":{},"name":"cpu","tags":{},"timestamp":0}]}`), buf) require.Equal(t, []byte(`{"metrics":[{"fields":{},"name":"cpu","tags":{},"timestamp":0}]}`+"\n"), buf)
} }
func TestSerializeTransformationNonBatch(t *testing.T) { func TestSerializeTransformationNonBatch(t *testing.T) {