Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions benchmark/core.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
const benchmark = require('./benchmark')
const proxyquire = require('proxyquire')

const Config = require('../packages/dd-trace/src/config')
const getConfig = require('../packages/dd-trace/src/config')
const DatadogTracer = require('../packages/dd-trace/src/tracer')
const DatadogSpanContext = require('../packages/dd-trace/src/opentracing/span_context')
const TextMapPropagator = require('../packages/dd-trace/src/opentracing/propagation/text_map')
Expand All @@ -22,7 +22,7 @@ const Sampler = require('../packages/dd-trace/src/sampler')
const format = require('../packages/dd-trace/src/format')
const { AgentEncoder: Agent04Encoder } = require('../packages/dd-trace/src/encode/0.4')
const { AgentEncoder: Agent05Encoder } = require('../packages/dd-trace/src/encode/0.5')
const config = new Config({ service: 'benchmark' })
const config = getConfig({ service: 'benchmark' })
const id = require('../packages/dd-trace/src/id')
const Histogram = require('../packages/dd-trace/src/histogram')
const histogram = new Histogram()
Expand Down
4 changes: 2 additions & 2 deletions benchmark/openfeature.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ const benchmark = require('./benchmark')
const proxyquire = require('proxyquire')
const { createSingleExposureEvent, createExposureEventArray } = require('./stubs/exposure-events')

const Config = require('../packages/dd-trace/src/config')
const getConfig = require('../packages/dd-trace/src/config')
const ExposuresWriter = proxyquire('../packages/dd-trace/src/openfeature/writers/exposures', {
'../../exporters/common/request': () => {}
})

const config = new Config({ service: 'benchmark', version: '1.0.0', env: 'test' })
const config = getConfig({ service: 'benchmark', version: '1.0.0', env: 'test' })
const suite = benchmark('openfeature')

let writer
Expand Down
4 changes: 2 additions & 2 deletions benchmark/sirun/debugger/start-devtools-client.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
'use strict'

const Config = require('../../../packages/dd-trace/src/config')
const getConfig = require('../../../packages/dd-trace/src/config')
const { start } = require('../../../packages/dd-trace/src/debugger')
const { generateProbeConfig } = require('../../../packages/dd-trace/test/debugger/devtools_client/utils')

const breakpoint = {
file: process.env.BREAKPOINT_FILE,
line: process.env.BREAKPOINT_LINE
}
const config = new Config()
const config = getConfig()
const rc = {
setProductHandler (product, cb) {
const action = 'apply'
Expand Down
9 changes: 5 additions & 4 deletions packages/datadog-plugin-openai/test/services.spec.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
'use strict'

const services = require('../src/services')
const { getConfigFresh } = require('../../dd-trace/test/helpers/config')

describe('Plugin', () => {
describe('openai services', () => {
Expand All @@ -10,23 +11,23 @@ describe('Plugin', () => {
})

it('dogstatsd does not throw when missing .dogstatsd', () => {
const service = services.init({
const service = services.init(getConfigFresh({
hostname: 'foo',
service: 'bar',
apiKey: 'my api key',
interval: 1000
})
}))

service.metrics.increment('mykey')
service.logger.log('hello')
})

it('logger does not throw', () => {
const service = services.init({
const service = services.init(getConfigFresh({
hostname: 'foo',
service: 'bar',
interval: 1000
})
}))

service.logger.log('hello')
})
Expand Down
10 changes: 9 additions & 1 deletion packages/dd-trace/src/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -1507,4 +1507,12 @@ function getAgentUrl (url, options) {
}
}

module.exports = Config
let configInstance = null
function getConfig (options) {
if (!configInstance) {
configInstance = new Config(options)
}
return configInstance
}

module.exports = getConfig
4 changes: 2 additions & 2 deletions packages/dd-trace/src/proxy.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use strict'
const NoopProxy = require('./noop/proxy')
const DatadogTracer = require('./tracer')
const Config = require('./config')
const getConfig = require('./config')
const runtimeMetrics = require('./runtime_metrics')
const log = require('./log')
const { setStartupLogPluginManager } = require('./startup-log')
Expand Down Expand Up @@ -98,7 +98,7 @@ class Tracer extends NoopProxy {
this._initialized = true

try {
const config = new Config(options) // TODO: support dynamic code config
const config = getConfig(options) // TODO: support dynamic code config

if (config.crashtracking.enabled) {
require('./crashtracking').start(config)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
'use strict'

const path = require('node:path')

const axios = require('axios')
const { assert } = require('chai')
const path = require('path')

const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')
const { withVersions } = require('../../../dd-trace/test/setup/mocha')

withVersions('express', 'express', expressVersion => {
Expand Down Expand Up @@ -40,7 +41,7 @@ withVersions('express', 'express', expressVersion => {
})

beforeEach(() => {
appsec.enable(new Config(
appsec.enable(getConfigFresh(
{
appsec: {
enabled: true,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
'use strict'

const path = require('node:path')

const Axios = require('axios')
const { assert } = require('chai')
const path = require('path')

const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')
const { withVersions } = require('../setup/mocha')

withVersions('fastify', 'fastify', fastifyVersion => {
Expand Down Expand Up @@ -40,7 +41,7 @@ withVersions('fastify', 'fastify', fastifyVersion => {
})

beforeEach(() => {
appsec.enable(new Config(
appsec.enable(getConfigFresh(
{
appsec: {
enabled: true,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const { assert } = require('chai')

const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')
const { withVersions } = require('../setup/mocha')

function assertFingerprintInTraces (traces) {
Expand All @@ -27,7 +27,7 @@ withVersions('passport-http', 'passport-http', version => {
})

before(() => {
appsec.enable(new Config({
appsec.enable(getConfigFresh({
appsec: true
}))
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const { assert } = require('chai')

const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')
const { withVersions } = require('../setup/mocha')

function assertFingerprintInTraces (traces) {
Expand All @@ -27,7 +27,7 @@ withVersions('passport-local', 'passport-local', version => {
})

before(() => {
appsec.enable(new Config({
appsec.enable(getConfigFresh({
appsec: true
}))
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@

const axios = require('axios')
const { assert } = require('chai')

const agent = require('../plugins/agent')
const tracer = require('../../../../index')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')

describe('Attacker fingerprinting', () => {
describe('SDK', () => {
Expand All @@ -21,7 +22,7 @@ describe('Attacker fingerprinting', () => {
}

before(() => {
appsec.enable(new Config({
appsec.enable(getConfigFresh({
enabled: true
}))
})
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
'use strict'

const Config = require('../../src/config')
const path = require('path')
const assert = require('node:assert')
const path = require('node:path')

const axios = require('axios')
const msgpack = require('@msgpack/msgpack')

const { withVersions } = require('../setup/mocha')
const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const axios = require('axios')
const assert = require('assert')
const msgpack = require('@msgpack/msgpack')
const { createDeepObject } = require('./utils')
const { getConfigFresh } = require('../helpers/config')

describe('extended data collection', () => {
before(() => {
Expand Down Expand Up @@ -68,7 +70,7 @@ describe('extended data collection', () => {
})

beforeEach(() => {
appsec.enable(new Config(
appsec.enable(getConfigFresh(
{
appsec: {
enabled: true,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
'use strict'

const Config = require('../../src/config')
const path = require('path')
const assert = require('node:assert')
const path = require('node:path')

const axios = require('axios')
const msgpack = require('@msgpack/msgpack')

const { withVersions } = require('../setup/mocha')
const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const axios = require('axios')
const assert = require('assert')
const msgpack = require('@msgpack/msgpack')

const { createDeepObject } = require('./utils')
const { getConfigFresh } = require('../helpers/config')

describe('extended data collection', () => {
before(() => {
Expand Down Expand Up @@ -69,7 +72,7 @@ describe('extended data collection', () => {
})

beforeEach(() => {
appsec.enable(new Config(
appsec.enable(getConfigFresh(
{
appsec: {
enabled: true,
Expand Down
10 changes: 5 additions & 5 deletions packages/dd-trace/test/appsec/graphql.test-utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ const fs = require('node:fs')
const { graphqlJson, json } = require('../../src/appsec/blocked_templates')
const agent = require('../plugins/agent')
const appsec = require('../../src/appsec')
const Config = require('../../src/config')
const { getConfigFresh } = require('../helpers/config')

const schema = `
directive @case(format: String) on FIELD
Expand Down Expand Up @@ -76,7 +76,7 @@ async function makeGraphqlRequest (port, variables, derivativeParam, extraHeader
function graphqlCommonTests (config) {
describe('Block with content', () => {
beforeEach(() => {
appsec.enable(new Config({ appsec: { enabled: true, rules: path.join(__dirname, 'graphql-rules.json') } }))
appsec.enable(getConfigFresh({ appsec: { enabled: true, rules: path.join(__dirname, 'graphql-rules.json') } }))
})

afterEach(() => {
Expand Down Expand Up @@ -151,10 +151,10 @@ function graphqlCommonTests (config) {

describe('Block with custom content', () => {
const blockedTemplateGraphql = path.join(__dirname, 'graphql.block.json')
const customGraphqlJson = fs.readFileSync(blockedTemplateGraphql)
const customGraphqlJson = fs.readFileSync(blockedTemplateGraphql, { encoding: 'utf8' })

beforeEach(() => {
appsec.enable(new Config({
appsec.enable(getConfigFresh({
appsec: {
enabled: true,
rules: path.join(__dirname, 'graphql-rules.json'),
Expand All @@ -181,7 +181,7 @@ function graphqlCommonTests (config) {

describe('Block with redirect', () => {
beforeEach(() => {
appsec.enable(new Config({
appsec.enable(getConfigFresh({
appsec: {
enabled: true,
rules: path.join(__dirname, 'graphql-rules-redirect.json')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ const fs = require('node:fs')
const os = require('node:os')

const agent = require('../../../plugins/agent')
const Config = require('../../../../src/config')
const { getConfigFresh } = require('../../../helpers/config')

const hardcodedPasswordAnalyzer = require('../../../../src/appsec/iast/analyzers/hardcoded-password-analyzer')
const iast = require('../../../../src/appsec/iast')
Expand Down Expand Up @@ -125,7 +125,7 @@ describe('Hardcoded Password Analyzer', () => {

beforeEach(() => {
const tracer = require('../../../../')
const config = new Config({
const config = getConfigFresh({
experimental: {
iast: {
enabled: true,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const fs = require('node:fs')
const os = require('node:os')

const agent = require('../../../plugins/agent')
const Config = require('../../../../src/config')
const { getConfigFresh } = require('../../../helpers/config')

const { NameAndValue, ValueOnly } = require('../../../../src/appsec/iast/analyzers/hardcoded-rule-type')
const hardcodedSecretAnalyzer = require('../../../../src/appsec/iast/analyzers/hardcoded-secret-analyzer')
Expand Down Expand Up @@ -95,7 +95,7 @@ describe('Hardcoded Secret Analyzer', () => {

beforeEach(() => {
const tracer = require('../../../../')
const config = new Config({
const config = getConfigFresh({
experimental: {
iast: {
enabled: true,
Expand Down
6 changes: 3 additions & 3 deletions packages/dd-trace/test/appsec/iast/index.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ const { describe, it, beforeEach, afterEach } = require('mocha')
const proxyquire = require('proxyquire')
const sinon = require('sinon')

const Config = require('../../../src/config')
const agent = require('../../plugins/agent')
const iast = require('../../../src/appsec/iast')
const iastContextFunctions = require('../../../src/appsec/iast/iast-context')
const overheadController = require('../../../src/appsec/iast/overhead-controller')
const vulnerabilityReporter = require('../../../src/appsec/iast/vulnerability-reporter')
const { testInRequest } = require('./utils')
const { IAST_MODULE } = require('../../../src/appsec/rasp/fs-plugin')
const { getConfigFresh } = require('../../helpers/config')

describe('IAST Index', () => {
beforeEach(() => {
Expand Down Expand Up @@ -48,7 +48,7 @@ describe('IAST Index', () => {
const originalReleaseRequest = overheadController.releaseRequest

beforeEach(() => {
iast.enable(new Config({
iast.enable(getConfigFresh({
experimental: {
iast: {
enabled: true,
Expand Down Expand Up @@ -112,7 +112,7 @@ describe('IAST Index', () => {
let appsecFsPlugin
let analyzers

const config = new Config({
const config = getConfigFresh({
experimental: {
iast: {
enabled: true,
Expand Down
Loading
Loading