Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: removed "getLogger" usage #1556

Open
wants to merge 52 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
72606c8
refactor: rewrite logger usage
kirrg001 Feb 12, 2025
5137ff6
chore: tsc
kirrg001 Feb 11, 2025
2f5f715
chore: lint
kirrg001 Feb 11, 2025
56b765e
chore: fixed non existing config
kirrg001 Feb 12, 2025
0cc0daf
chore: fixes
kirrg001 Feb 12, 2025
024eb67
chore: fixes
kirrg001 Feb 12, 2025
f89faec
chore: fixes
kirrg001 Feb 12, 2025
63dcf47
chore: rename
kirrg001 Feb 12, 2025
715bf9b
chore: fixed depcheck
kirrg001 Feb 12, 2025
aecca31
chore: fixes
kirrg001 Feb 12, 2025
317000a
chore: fixes
kirrg001 Feb 12, 2025
3d7d697
chore: fixes
kirrg001 Feb 12, 2025
a85238f
chore: fixes
kirrg001 Feb 12, 2025
e9ad9d3
chore: fixes
kirrg001 Feb 12, 2025
2f0dc90
chore: fixes
kirrg001 Feb 12, 2025
201cb7e
chore: fixes
kirrg001 Feb 12, 2025
8be7332
chore: fixes
kirrg001 Feb 12, 2025
b9069f9
chore: fixes
kirrg001 Feb 12, 2025
f7bff65
chore: tsc
kirrg001 Feb 12, 2025
e23d3b3
chore: lint
kirrg001 Feb 12, 2025
037d1ab
chore: fixes
kirrg001 Feb 12, 2025
641c525
chore: fixes
kirrg001 Feb 12, 2025
c9f3267
chore: fixes
kirrg001 Feb 13, 2025
81df657
chore: lint
kirrg001 Feb 13, 2025
18cd57d
chore: fixes
kirrg001 Feb 13, 2025
00ceab7
chore: fixes
kirrg001 Feb 13, 2025
f456863
chore: fix
kirrg001 Feb 14, 2025
5cf09db
chore: fix
kirrg001 Feb 14, 2025
653044f
chore: clarify comment
kirrg001 Feb 14, 2025
c84accc
chore: reverts
kirrg001 Feb 17, 2025
4bba361
chore: cleanup
kirrg001 Feb 17, 2025
d7ee594
chore: naming convention
kirrg001 Feb 17, 2025
8d8bde6
chore: comments
kirrg001 Feb 17, 2025
7872d9b
chore: comments + fixes
kirrg001 Feb 17, 2025
256596b
chore: lint
kirrg001 Feb 17, 2025
b1dbc5c
chore: comment
kirrg001 Feb 17, 2025
d40864c
chore: corrected comment
kirrg001 Feb 17, 2025
db6833f
chore: fix otel
kirrg001 Feb 17, 2025
dc14a28
chore: cleanup
kirrg001 Feb 17, 2025
7865993
chore: readability
kirrg001 Feb 17, 2025
dce5ad7
chore: cleanup
kirrg001 Feb 19, 2025
fd64b52
chore: fixed test
kirrg001 Feb 19, 2025
945175b
chore: fixes
kirrg001 Feb 19, 2025
0229e90
chore: ts
kirrg001 Feb 19, 2025
50ff106
chore: fixes
kirrg001 Feb 20, 2025
287d085
chore: wording
kirrg001 Feb 20, 2025
65128bc
chore: reorder init
kirrg001 Feb 20, 2025
6c5822f
chore: optimize
kirrg001 Feb 20, 2025
d9cdf41
chore: refactor
kirrg001 Feb 20, 2025
412bae2
chore: cleanup
kirrg001 Feb 20, 2025
703f7a4
chore: cleanup
kirrg001 Feb 20, 2025
e10408b
chore: fixes
kirrg001 Feb 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 7 additions & 12 deletions packages/aws-fargate/src/activate.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
'use strict';

const instanaCore = require('@instana/core');
const { backendConnector, consoleLogger } = require('@instana/serverless');
const { backendConnector, consoleLogger: log } = require('@instana/serverless');

const identityProvider = require('./identity_provider');
const metrics = require('./metrics');
Expand All @@ -15,14 +15,11 @@ const { fullyQualifiedContainerId } = require('./metrics/container/containerUtil
const { tracing, util: coreUtil } = instanaCore;
const { normalizeConfig } = coreUtil;

let logger = consoleLogger;
logger.init();

const config = normalizeConfig({});
config.logger = logger;
const logger = log.init();
const config = normalizeConfig({}, logger);

function init() {
instanaCore.preInit();
instanaCore.preInit(config);

metrics.init(config, function onReady(err, ecsContainerPayload) {
if (err) {
Expand Down Expand Up @@ -57,7 +54,7 @@ function init() {
}

identityProvider.init(taskArn, containerId);
backendConnector.init(identityProvider, logger, false, true, 950);
backendConnector.init(config, identityProvider, logger, false, true, 950);
instanaCore.init(config, backendConnector, identityProvider);
metrics.activate(backendConnector);
tracing.activate();
Expand All @@ -83,11 +80,9 @@ exports.currentSpan = function getHandleForCurrentSpan() {

exports.sdk = tracing.sdk;

// NOTE: this is the external interface for the customer. They can set a custom logger.
exports.setLogger = function setLogger(_logger) {
logger = _logger;
config.logger = logger;
instanaCore.logger.init(config);
metrics.setLogger(_logger);
log.init({ logger: _logger });
};

exports.opentracing = tracing.opentracing;
11 changes: 3 additions & 8 deletions packages/aws-fargate/src/metrics/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@

'use strict';

const { consoleLogger } = require('@instana/serverless');
const transmissionCycle = require('./transmissionCycle');

let logger = consoleLogger;

let logger;
const metadataUriKey = 'ECS_CONTAINER_METADATA_URI';

exports.init = function init(config, onReady) {
logger = config.logger;

const metadataUri = process.env.ECS_CONTAINER_METADATA_URI;
if (!metadataUri) {
logger.error(`${metadataUriKey} is not set. This fargate task will not be monitored.`);
Expand All @@ -29,8 +29,3 @@ exports.activate = function activate() {
exports.deactivate = function deactivate() {
transmissionCycle.deactivate();
};

exports.setLogger = function setLogger(_logger) {
logger = _logger;
transmissionCycle.setLogger(logger);
};
11 changes: 4 additions & 7 deletions packages/aws-fargate/src/metrics/transmissionCycle.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,17 @@

'use strict';

const { backendConnector, consoleLogger } = require('@instana/serverless');
const { backendConnector } = require('@instana/serverless');
const processorRegistry = require('./processorRegistry');

let logger = consoleLogger;

let logger;
let transmissionDelay = 1000;
let transmissionTimeoutHandle;
let isActive = false;

exports.init = function init(config, metadataUri, onReady) {
logger = config.logger;

transmissionDelay = config.metrics.transmissionDelay;
processorRegistry.init(config, metadataUri, onReady);
};
Expand Down Expand Up @@ -78,7 +79,3 @@ function onMetricsHaveBeenSent(transmittedPayloadPerProcessor, error) {
processor.setLastTransmittedPayload(transmittedPayloadPerProcessor[processor.getId()]);
});
}

exports.setLogger = function setLogger(_logger) {
logger = _logger;
};
4 changes: 2 additions & 2 deletions packages/aws-fargate/src/noop.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ exports.currentSpan = function getHandleForCurrentSpan() {

exports.sdk = tracing.sdk;

exports.setLogger = function setLogger(logger) {
instanaCore.logger.init({ logger });
exports.setLogger = function setLogger() {
// We do nothing.
};

exports.opentracing = tracing.opentracing;
21 changes: 11 additions & 10 deletions packages/aws-fargate/test/metrics/transmissionCycle_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,16 @@ const path = require('path');
const { fork } = require('child_process');
const { expect } = require('chai');
const proxyquire = require('proxyquire');

const { consoleLogger } = require('@instana/serverless');
const portfinder = require('@instana/collector/test/test_util/portfinder');

const { retry } = require('../../../core/test/test_util');
const config = require('@instana/core/test/config');
const { retry, createFakeLogger } = require('../../../core/test/test_util');
const testConfig = require('@instana/core/test/config');
const core = require('@instana/core');

let transmissionCycle;

describe('transmission cycle', function () {
this.timeout(config.getTestTimeout());
this.slow(config.getTestTimeout() / 2);
this.timeout(testConfig.getTestTimeout());
this.slow(testConfig.getTestTimeout() / 2);

let messagesFromMetadataMock = [];
let metadataMock;
Expand All @@ -30,12 +28,15 @@ describe('transmission cycle', function () {
let onReadyError;

before(() => {
const config = core.util.normalizeConfig({});
core.secrets.init(config);

const metadataMockPort = portfinder();
metadataMockUrl = `http://localhost:${metadataMockPort}`;

messagesFromMetadataMock = [];
metadataMock = fork(path.join(__dirname, '../metadata_mock'), {
stdio: config.getAppStdio(),
stdio: testConfig.getAppStdio(),
env: Object.assign({ METADATA_MOCK_PORT: metadataMockPort })
});
metadataMock.on('message', message => {
Expand All @@ -54,8 +55,7 @@ describe('transmission cycle', function () {
onReadyError = null;
transmissionCycle = proxyquire('../../src/metrics/transmissionCycle', {
'@instana/serverless': {
backendConnector: { sendMetrics },
consoleLogger
backendConnector: { sendMetrics }
}
});
});
Expand Down Expand Up @@ -102,6 +102,7 @@ describe('transmission cycle', function () {
function init() {
transmissionCycle.init(
{
logger: createFakeLogger(),
metrics: { transmissionDelay: 1000 }
},
metadataMockUrl,
Expand Down
14 changes: 8 additions & 6 deletions packages/aws-lambda/src/metrics/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,17 @@
'use strict';

const { metrics: coreMetrics } = require('@instana/core');

coreMetrics.registerAdditionalMetrics([
require('./npmPackageName'),
require('./npmPackageVersion'),
require('./npmPackageDescription')
]);
const npmPackageName = require('./npmPackageName');
const npmPackageVersion = require('./npmPackageVersion');
const npmPackageDescription = require('./npmPackageDescription');

exports.init = function init(config) {
coreMetrics.init(config);
npmPackageName.init(config);
npmPackageVersion.init(config);
npmPackageDescription.init(config);

coreMetrics.registerAdditionalMetrics([npmPackageName, npmPackageVersion, npmPackageDescription]);
};

exports.activate = function activate() {
Expand Down
8 changes: 6 additions & 2 deletions packages/aws-lambda/src/metrics/npmPackageDescription.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,17 @@
'use strict';

const { util: coreUtil } = require('@instana/core');
const { consoleLogger: logger } = require('@instana/serverless');

const rootDir = require('./rootDir');

exports.payloadPrefix = 'npmPackageDescription';
exports.currentPayload = undefined;

let logger;

exports.init = config => {
logger = config.logger;
};

exports.activate = function activate() {
coreUtil.applicationUnderMonitoring.getMainPackageJsonStartingAtDirectory(rootDir.root, (err, pckg) => {
if (err) {
Expand Down
8 changes: 6 additions & 2 deletions packages/aws-lambda/src/metrics/npmPackageName.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,17 @@
'use strict';

const { util: coreUtil } = require('@instana/core');
const { consoleLogger: logger } = require('@instana/serverless');

const rootDir = require('./rootDir');

exports.payloadPrefix = 'npmPackageName';
exports.currentPayload = undefined;

let logger;

exports.init = config => {
logger = config.logger;
};

exports.activate = function activate() {
coreUtil.applicationUnderMonitoring.getMainPackageJsonStartingAtDirectory(rootDir.root, (err, pckg) => {
if (err) {
Expand Down
8 changes: 6 additions & 2 deletions packages/aws-lambda/src/metrics/npmPackageVersion.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,17 @@
'use strict';

const { util: coreUtil } = require('@instana/core');
const { consoleLogger: logger } = require('@instana/serverless');

const rootDir = require('./rootDir');

exports.payloadPrefix = 'npmPackageVersion';
exports.currentPayload = undefined;

let logger;

exports.init = config => {
logger = config.logger;
};

exports.activate = function activate() {
coreUtil.applicationUnderMonitoring.getMainPackageJsonStartingAtDirectory(rootDir.root, (err, pckg) => {
if (err) {
Expand Down
8 changes: 2 additions & 6 deletions packages/aws-lambda/src/noop_wrapper.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@
// We need to require core to provide noop implementations for currentSpan, sdk etc. but neither tracing nor metric
// collection will be activated. (Neither core.init nor core.preInit are called.)
const instanaCore = require('@instana/core');

const { tracing } = instanaCore;
let config;

exports.wrap = noopWrap;

Expand All @@ -19,7 +17,6 @@ function noopWrap(_config, originalHandler) {
originalHandler = _config;
_config = null;
}
config = _config || {};

return originalHandler;
}
Expand All @@ -30,9 +27,8 @@ exports.currentSpan = function getHandleForCurrentSpan() {

exports.sdk = tracing.sdk;

exports.setLogger = function setLogger(logger) {
config.logger = logger;
instanaCore.logger.init(config);
exports.setLogger = function setLogger() {
// We do nothing. Noop.
};

exports.opentracing = tracing.opentracing;
5 changes: 4 additions & 1 deletion packages/aws-lambda/src/ssm.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ let fetchedValue = null;
let envValue = null;
let errorFromAWS = null;
let initTimeoutInMs = 0;
let logger;

module.exports.reset = () => {
fetchedValue = null;
Expand All @@ -32,7 +33,9 @@ module.exports.validate = () => {
return true;
};

module.exports.init = ({ logger }) => {
module.exports.init = config => {
logger = config.logger;

// CASE: INSTANA_SSM_PARAM_NAME is not set, skip
if (!exports.isUsed()) {
return;
Expand Down
Loading