-
Notifications
You must be signed in to change notification settings - Fork 239
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This provides an interface for: * LoggerProvider * Logger * LogRecord This API will be consumed by the forthcoming Logs SDK. Follows specification v 1.23.0.
- Loading branch information
1 parent
ccad50f
commit 700ca29
Showing
11 changed files
with
146 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# frozen_string_literal: true | ||
|
||
# Copyright The OpenTelemetry Authors | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
module OpenTelemetry | ||
module Logs | ||
# No-op implementation of an emitted log and its associated attributes | ||
class LogRecord; end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# frozen_string_literal: true | ||
|
||
# Copyright The OpenTelemetry Authors | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
module OpenTelemetry | ||
module Logs | ||
# No-op implementation of logger. | ||
class Logger | ||
# Create a {LogRecord} | ||
# | ||
# @param timestamp [optional Float, Time] Time in nanoseconds since Unix | ||
# epoch when the event occurred measured by the origin clock, i.e. the | ||
# time at the source. | ||
# @param observed_timestamp [optional Float, Time] Time in nanoseconds | ||
# since Unix epoch when the event was observed by the collection system. | ||
# Defaults to +Process.clock_gettime(Process::CLOCK_REALTIME)+. | ||
# @param context [optional Context] The Context to associate with the | ||
# LogRecord. Defaults to +OpenTelemetry::Context.current+. | ||
# @param severity_number [optional Integer] Numerical value of the | ||
# severity. Smaller numerical values correspond to less severe events | ||
# (such as debug events), larger numerical values correspond to more | ||
# severe events (such as errors and critical events). | ||
# @param severity_text [optional String] Original string representation of | ||
# the severity as it is known at the source. Also known as log level. | ||
# @param body [optional String, Numeric, Boolean, Array<String, Numeric, | ||
# Boolean>, Hash{String => String, Numeric, Boolean, Array<String, | ||
# Numeric, Boolean>}] A value containing the body of the log record. | ||
# @param attributes [optional Hash{String => String, Numeric, Boolean, | ||
# Array<String, Numeric, Boolean>}] Additional information about the | ||
# event. | ||
# | ||
# @api public | ||
def create_log_record( | ||
timestamp: nil, | ||
observed_timestamp: Process.clock_gettime(Process::CLOCK_REALTIME), | ||
context: OpenTelemetry::Context.current, | ||
severity_number: nil, | ||
severity_text: nil, | ||
body: nil, | ||
attributes: nil | ||
) | ||
LogRecord.new | ||
end | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# frozen_string_literal: true | ||
|
||
# Copyright The OpenTelemetry Authors | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
module OpenTelemetry | ||
module Logs | ||
# No-op implementation of a logger provider | ||
class LoggerProvider | ||
# Returns a {Logger} instance. | ||
# | ||
# @param name [optional String] Instrumentation package name | ||
# @param version [optional String] Instrumentation package version | ||
# @param schema_url [optional String] Schema URL recorded in the emitted telemetry. | ||
# @param attributes [optional Hash] Specifies the instrumentation scope | ||
# attributes to associate with emitted telemetry. | ||
# | ||
# @return [OpenTelemetry::Logs::Logger] | ||
# | ||
# @api public | ||
def logger(name: nil, version: nil, schema_url: nil, attributes: {}) | ||
@logger ||= OpenTelemetry::Logs::Logger.new | ||
end | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
inherit_from: ../.rubocop.yml | ||
|
||
Metrics/BlockLength: | ||
Enabled: false | ||
Metrics/LineLength: | ||
Enabled: false | ||
Metrics/AbcSize: | ||
Enabled: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# frozen_string_literal: true | ||
|
||
# Copyright The OpenTelemetry Authors | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
require 'test_helper' | ||
|
||
describe OpenTelemetry::Logs::LoggerProvider do | ||
let(:logger_provider) { OpenTelemetry::Logs::LoggerProvider.new } | ||
let(:args) { { name: 'component', version: '1.0', schema_url: 'schema_url', attributes: { a: 1 } } } | ||
|
||
describe '#logger' do | ||
it 'returns the same logger for the same arguments' do | ||
logger1 = logger_provider.logger(**args) | ||
logger2 = logger_provider.logger(**args) | ||
assert_same(logger1, logger2) | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# frozen_string_literal: true | ||
|
||
# Copyright The OpenTelemetry Authors | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
require 'test_helper' | ||
|
||
describe OpenTelemetry::Logs::Logger do | ||
let(:logger) { OpenTelemetry::Logs::Logger.new } | ||
|
||
describe '#create_log_record' do | ||
it 'creates a new LogRecord' do | ||
assert_instance_of(OpenTelemetry::Logs::LogRecord, logger.create_log_record) | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters