logstash-output-newrelic 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 486f17e1a3bc87e00990f487a0023139643b9309e1dab8c7845ec366169af7c5
|
4
|
+
data.tar.gz: 1f19c28eac5cf94fb2a536869f81476b276d7c62bb99dbb9604596490ba0a643
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86cda8ca9547298ed0ee085b3f81a61df641447d728dc27bb8e461c2fd18709baeea3fd3074589ce8415bfdfc5ca149452682468c4840468a42717e8e1b31d4f
|
7
|
+
data.tar.gz: d6041b6024a4ceced2836fad93f1fae3339387fadec9c702742572bf69f0df12e8d77f4503e8865ef857f79aa373b1061f9edf9305f67d674de38ce12d86fe9b
|
@@ -38,16 +38,6 @@ class LogStash::Outputs::NewRelic < LogStash::Outputs::Base
|
|
38
38
|
@executor&.shutdown
|
39
39
|
end
|
40
40
|
|
41
|
-
def time_to_milliseconds(time)
|
42
|
-
timestamp = time_to_logstash_timestamp(time)
|
43
|
-
if timestamp.nil?
|
44
|
-
return nil
|
45
|
-
end
|
46
|
-
|
47
|
-
(timestamp.to_f * 1000).to_i # to_f gives seconds with a fractional portion
|
48
|
-
end
|
49
|
-
|
50
|
-
|
51
41
|
def time_to_logstash_timestamp(time)
|
52
42
|
begin
|
53
43
|
LogStash::Timestamp.coerce(time)
|
@@ -70,11 +60,6 @@ class LogStash::Outputs::NewRelic < LogStash::Outputs::Base
|
|
70
60
|
if key == 'message' || key == 'timestamp'
|
71
61
|
# intrinsic attributes go at the top level
|
72
62
|
log_message_hash[key] = value
|
73
|
-
elsif key == '@timestamp'
|
74
|
-
milliseconds = time_to_milliseconds(value)
|
75
|
-
if !milliseconds.nil?
|
76
|
-
log_message_hash[:timestamp] = milliseconds
|
77
|
-
end
|
78
63
|
else
|
79
64
|
# non-intrinsic attributes get put into 'attributes'
|
80
65
|
log_message_hash[:attributes][key] = value
|
@@ -95,7 +95,7 @@ describe LogStash::Outputs::NewRelic do
|
|
95
95
|
it "message contains plugin information" do
|
96
96
|
stub_request(:any, base_uri).to_return(status: 200)
|
97
97
|
|
98
|
-
event = LogStash::Event.new({ :message => "Test message"
|
98
|
+
event = LogStash::Event.new({ :message => "Test message" })
|
99
99
|
@newrelic_output.multi_receive([event])
|
100
100
|
|
101
101
|
wait_for(a_request(:post, base_uri)
|
@@ -106,49 +106,6 @@ describe LogStash::Outputs::NewRelic do
|
|
106
106
|
.to have_been_made
|
107
107
|
end
|
108
108
|
|
109
|
-
|
110
|
-
context "@timestamp field" do
|
111
|
-
|
112
|
-
def test_timestamp(timestamp, message_matcher)
|
113
|
-
stub_request(:any, base_uri).to_return(status: 200)
|
114
|
-
|
115
|
-
event = LogStash::Event.new({ :message => "Test message", :@timestamp => timestamp })
|
116
|
-
@newrelic_output.multi_receive([event])
|
117
|
-
|
118
|
-
wait_for(a_request(:post, base_uri)
|
119
|
-
.with { |request|
|
120
|
-
message = single_gzipped_message(request.body)
|
121
|
-
message_matcher.call(message)
|
122
|
-
}).to have_been_made
|
123
|
-
end
|
124
|
-
|
125
|
-
it "LogStash::Timestamp '@timestamp' field is added as 'timestamp' as milliseconds since epoch" do
|
126
|
-
def message_matcher(message)
|
127
|
-
message['timestamp'] == FixedTime::MILLISECONDS
|
128
|
-
end
|
129
|
-
|
130
|
-
test_timestamp(FixedTime::LOGSTASH_TIMESTAMP, method(:message_matcher))
|
131
|
-
end
|
132
|
-
|
133
|
-
it "String ISO 8601 '@timestamp' field is added as 'timestamp' as milliseconds since epoch" do
|
134
|
-
def message_matcher(message)
|
135
|
-
message['timestamp'] == FixedTime::MILLISECONDS
|
136
|
-
end
|
137
|
-
|
138
|
-
test_timestamp(FixedTime::ISO_8601_STRING_TIME, method(:message_matcher))
|
139
|
-
end
|
140
|
-
|
141
|
-
# Ideally we might not even set a timestamp if parsing fails. However, the time parsing library doesn't tell us if
|
142
|
-
# parsing fails -- it just returns the current time.
|
143
|
-
it "Unparseable '@timestamp' field is parsed as current time and put into 'timestamp'" do
|
144
|
-
def message_matcher(message)
|
145
|
-
within_five_seconds_of(message['timestamp'], now_in_milliseconds)
|
146
|
-
end
|
147
|
-
|
148
|
-
test_timestamp("Not an ISO 8601 string", method(:message_matcher))
|
149
|
-
end
|
150
|
-
end
|
151
|
-
|
152
109
|
it "all other fields passed through as is" do
|
153
110
|
stub_request(:any, base_uri).to_return(status: 200)
|
154
111
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-output-newrelic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- New Relic Logging Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-07-
|
11
|
+
date: 2019-07-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|