nexus_semantic_logger 1.4.1 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 59a4142965fa1e910cefc9f87a7952303e1a45c4ecce1eb97b82a5a07a88cd88
|
4
|
+
data.tar.gz: 5b3ccba4d6eddab1054a7bbb0fe0747bb24f5c5bcf4f22f170b0db628b7a1e40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1bd81619565aeec8b3dd243d54c4f9d9fecadf6ee20adfb54f28da62ff7226f3a8f5b001d94e613691de65929ca35625b1d2d8f5e06af88a5052b0e2b9f37a41
|
7
|
+
data.tar.gz: bfefd03ec7d2976fa5b60440be38681d13027fae894c3a33977c67016c66397e1788a8951a355867c0f93447c245bdec4858c3c72ab41a412d3f658dfbed659d
|
data/.gitignore
CHANGED
@@ -7,7 +7,7 @@ module NexusSemanticLogger
|
|
7
7
|
# own statsd instance.
|
8
8
|
class DatadogSingleton
|
9
9
|
include Singleton
|
10
|
-
attr_accessor :statsd, :
|
10
|
+
attr_accessor :statsd, :global_tags
|
11
11
|
|
12
12
|
def flush
|
13
13
|
statsd&.flush(sync: Rails.env.development?) # Force flush sync in development, speed up checks.
|
@@ -15,16 +15,18 @@ module NexusSemanticLogger
|
|
15
15
|
|
16
16
|
# Delegate to statsd (if available).
|
17
17
|
# @param [String] metric Metric name.
|
18
|
-
|
19
|
-
|
18
|
+
# @param [Array<String>] tags Additional tags.
|
19
|
+
def increment(metric, tags: [])
|
20
|
+
statsd&.increment(metric, tags: global_tags + tags)
|
20
21
|
flush
|
21
22
|
end
|
22
23
|
|
23
24
|
# Delegate to statsd (if available).
|
24
25
|
# @param [String] metric Metric name.
|
25
26
|
# @param [Integer] ms Timing in milliseconds.
|
26
|
-
|
27
|
-
|
27
|
+
# @param [Array<String>] tags Additional tags.
|
28
|
+
def timing(metric, ms, tags: [])
|
29
|
+
statsd&.timing(metric, ms, tags: global_tags + tags)
|
28
30
|
flush
|
29
31
|
end
|
30
32
|
end
|
@@ -20,13 +20,23 @@ module NexusSemanticLogger
|
|
20
20
|
# Configure tags to be sent on all traces and metrics.
|
21
21
|
# Note that 'env' is NOT sent- that is set as the default on the agent e.g. staging, canary, production.
|
22
22
|
# It does not necessarily align with the Rails env, and we do not want to double tag the env.
|
23
|
-
datadog_singleton.
|
24
|
-
c.tags = datadog_singleton.
|
23
|
+
datadog_singleton.global_tags = ["railsenv:#{Rails.env}", "service:#{service}"]
|
24
|
+
c.tags = datadog_singleton.global_tags
|
25
25
|
|
26
26
|
# Tracer requires configuration to a datadog agent via DD_AGENT_HOST.
|
27
27
|
dd_force_tracer_val = ENV.fetch('DD_FORCE_TRACER', false)
|
28
28
|
dd_force_tracer = dd_force_tracer_val.present? && dd_force_tracer_val.to_s == 'true'
|
29
|
-
|
29
|
+
dd_tracer_enabled = Rails.env.production? || dd_force_tracer
|
30
|
+
c.tracer(enabled: dd_tracer_enabled)
|
31
|
+
|
32
|
+
# Profiling is also provided by ddtrace, we synchronise their feature toggles.
|
33
|
+
c.profiling.enabled = dd_tracer_enabled
|
34
|
+
|
35
|
+
else
|
36
|
+
# If there is no DD_AGENT_HOST then ensure features are disabled.
|
37
|
+
c.runtime_metrics.enabled = false
|
38
|
+
c.tracer(enabled: false)
|
39
|
+
c.profiling.enabled = false
|
30
40
|
end
|
31
41
|
|
32
42
|
c.use(:rails, service_name: service)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
module NexusSemanticLogger
|
3
|
-
# Leave this as 1.
|
4
|
-
VERSION = '1.
|
3
|
+
# Leave this as 1.5.1 in order for CI process to replace with the tagged version.
|
4
|
+
VERSION = '1.5.1'
|
5
5
|
end
|
@@ -14,6 +14,7 @@ Gem::Specification.new do |spec|
|
|
14
14
|
end
|
15
15
|
spec.require_paths = ['lib']
|
16
16
|
spec.add_dependency('amazing_print', '~> 1.4.0')
|
17
|
+
spec.add_dependency('ddtrace', '~> 0.54.2') # For datadog tracing/profiling.
|
17
18
|
spec.add_dependency('dogstatsd-ruby', '~> 5.4.0') # For custom application metrics.
|
18
19
|
spec.add_dependency('net_tcp_client', '~> 2.2.0') # For TCP logging.
|
19
20
|
spec.add_dependency('rails_semantic_logger', '~> 4.10.0')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nexus_semantic_logger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Johnathon Harris
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-09-
|
11
|
+
date: 2022-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: amazing_print
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.4.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: ddtrace
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.54.2
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.54.2
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: dogstatsd-ruby
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|