Skip to content

Releases: pinpoint-apm/pinpoint-node-agent

v1.2

01 Aug 08:08
Compare
Choose a tag to compare

[1.2.0] - 2025-08-01

Added

  • [#344] Express 5 Support: Extended version compatibility to support Express 5.x (>=4.0.0 <6)

    • Native async/await route handlers support with improved error handling
    • Automatic Promise error catching without manual try/catch blocks
    • Enhanced testing infrastructure with npm aliases for multi-version Express testing (express4/express5)

    Express 5 Async/Await Example:

    const express = require('express')
    const app = express()
    
    // Express 5: Native async/await support with automatic error handling
    app.get('/users/:id', async (req, res) => {
      // No try/catch needed - Express 5 automatically catches Promise rejections
      const user = await getUserFromDatabase(req.params.id) // May throw/reject
      const profile = await getUserProfile(user.id)         // May throw/reject
    
      res.json({ user, profile })
    })
    
    // Express 4: Required manual error handling
    app.get('/users-old/:id', (req, res, next) => {
      getUserFromDatabase(req.params.id)
        .then(user => getUserProfile(user.id))
        .then(profile => res.json({ user, profile }))
        .catch(next) // Manual error handling required
    })
    
    async function getUserFromDatabase(id) {
      if (!id) throw new Error('User ID required')
      return { id, name: 'User ' + id }
    }
    
    async function getUserProfile(id) {
      return { preferences: 'dark-mode', notifications: true }
    }

Changed

  • [#346] [#337] require-in-the-middle Package Upgrade: Updated require-in-the-middle to support hooking modules within packages for enhanced instrumentation capabilities

1.1.0

30 Jun 01:58
Compare
Choose a tag to compare

[1.1] - 2025-06-18

Added

Full Changelog: 1.0.1...1.1.0

1.0.1

23 May 13:04
Compare
Choose a tag to compare

What's Changed

Full Changelog: 1.0.0...1.0.1

v1.0.0

22 May 02:15
Compare
Choose a tag to compare

[1.0.0] - 2025-05-22

Added

  • [#214] Support Active Request

    Image
  • [#290] Added support for displaying the Agent Name in the Inspector. The Agent Name, configurable via the PINPOINT_AGENT_NAME environment variable, is now visible within the Inspector. This allows for easier identification and management of individual agents within the Pinpoint system.

    Image
  • [#265] Support MongoDB

  • [#216] Fetch API with Undici in Node.js

    • Since the Undici library requires Node.js >=20.18.1, please ensure your application’s Node.js version is compatible before adopting fetch or undici.
  • [#317] Warning message Warning: Collector returned 13 INTERNAL error. Too much Span data may be sent. Try increasing PINPOINT_SAMPLING_RATE to reduce traffic.

Fixed

  • [#291] Resolved an issue where the Pinpoint Node Agent would occasionally disappear from the Inspector. This fix ensures that the Agent remains consistently visible in the Inspector.
  • [#303] fix: fix remote address fn (Thanks @YangJonghun)
  • [#309]PINPOINT_TRACE_EXCLUSION_URL_PATTERN not respected

⚠️ Breaking Changes

  • The Pinpoint Node.js Agent can use Node above v18 or higher updated: The minimum required Node.js version has been updated from v14 to v18. The Node.js fetch API now includes a version check. If the Node.js runtime version is below v18, an error will be thrown to prevent unsupported usage.
  • AgentId no longer required: The AgentId field is now optional. If an AgentId is not provided, it will be automatically generated. This change may affect systems or scripts that previously relied on manually setting the AgentId.
  • Agent Name Added: The Agent Name field is now a new optional configuration and can be set as a user-defined value with a maximum length of 255 characters. Developer can optionally use the pod name or any other identifier as the Agent Name. Ensure that your configuration aligns with this new behavior.
  • Added a waring message when the PINPOINT_SAMPLING_RATE is set too low, causing excessive span data to be sent to the collector. If the collector cannot handle the data and return an error to Pinpoint Node agent, a warning is now logged advising users to increase the PINPOINT_SAMPLING_RATE.

v1.0.0-next.2

25 Apr 13:00
Compare
Choose a tag to compare
v1.0.0-next.2 Pre-release
Pre-release

Added

  • [#214] Support Active Request

    Image
  • [#290] Added support for displaying the Agent Name in the Inspector. The Agent Name, configurable via the PINPOINT_AGENT_NAME environment variable, is now visible within the Inspector. This allows for easier identification and management of individual agents within the Pinpoint system.

    Image
  • [#265] Support MongoDB

  • [#216] Fetch API with Undici in Node.js

    • Since the Undici library requires Node.js >=20.18.1, please ensure your application’s Node.js version is compatible before adopting fetch or undici.

Fixed

  • [#291] Resolved an issue where the Pinpoint Node Agent would occasionally disappear from the Inspector. This fix ensures that the Agent remains consistently visible in the Inspector.
  • [#303] fix: fix remote address fn (Thanks @YangJonghun)

⚠️ Breaking Changes

  • The Pinpoint Node.js Agent can use Node above v18 or higher updated: The minimum required Node.js version has been updated from v14 to v18. The Node.js fetch API now includes a version check. If the Node.js runtime version is below v18, an error will be thrown to prevent unsupported usage.
  • AgentId no longer required: The AgentId field is now optional. If an AgentId is not provided, it will be automatically generated. This change may affect systems or scripts that previously relied on manually setting the AgentId.
  • Agent Name Added: The Agent Name field is now a new optional configuration and can be set as a user-defined value with a maximum length of 255 characters. Developer can optionally use the pod name or any other identifier as the Agent Name. Ensure that your configuration aligns with this new behavior.

v1.0.0-next.1

11 Apr 13:09
Compare
Choose a tag to compare
v1.0.0-next.1 Pre-release
Pre-release

Added

  • [#214] Support Active Request

    Image
  • [#290] Added support for displaying the Agent Name in the Inspector. The Agent Name, configurable via the PINPOINT_AGENT_NAME environment variable, is now visible within the Inspector. This allows for easier identification and management of individual agents within the Pinpoint system.

    Image
  • [#265] Support MongoDB

  • [#216] Fetch API with Undici in Node.js

    • Since the Undici library requires Node.js >=20.18.1, please ensure your application’s Node.js version is compatible before adopting fetch or undici.

Fixed

  • [#291] Resolved an issue where the Pinpoint Node Agent would occasionally disappear from the Inspector. This fix ensures that the Agent remains consistently visible in the Inspector.

⚠️ Breaking Changes

  • The Pinpoint Node.js Agent can use Node above v18 or higher updated: The minimum required Node.js version has been updated from v14 to v18. The Node.js fetch API now includes a version check. If the Node.js runtime version is below v18, an error will be thrown to prevent unsupported usage.
  • AgentId no longer required: The AgentId field is now optional. If an AgentId is not provided, it will be automatically generated. This change may affect systems or scripts that previously relied on manually setting the AgentId.
  • Agent Name Added: The Agent Name field is now a new optional configuration and can be set as a user-defined value with a maximum length of 255 characters. Developer can optionally use the pod name or any other identifier as the Agent Name. Ensure that your configuration aligns with this new behavior.

v0.8.7

20 Mar 11:36
Compare
Choose a tag to compare

Added

  • [#290] Added support for displaying the Agent Name in the Inspector. The Agent Name, configurable via the PINPOINT_AGENT_NAME environment variable, is now visible within the Inspector. This allows for easier identification and management of individual agents within the Pinpoint system.

    Image

Fixed

  • [#291] Resolved an issue where the Pinpoint Node Agent would occasionally disappear from the Inspector. This fix ensures that the Agent remains consistently visible in the Inspector.

⚠️ Breaking Changes

  • The Pinpoint Node.js Agent can use Node above v14 or higher updated: The minimum required Node.js version has been updated from v10 to v14. This change was made because the CI environment no longer supports testing on Node.js v10 and v12. As a result, compatibility with these older versions cannot be guaranteed. Please ensure your environment is running Node.js v14 or higher.
  • AgentId no longer required: The AgentId field is now optional. If an AgentId is not provided, it will be automatically generated. This change may affect systems or scripts that previously relied on manually setting the AgentId.
  • Agent Name Added: The Agent Name field is now a new optional configuration and can be set as a user-defined value with a maximum length of 255 characters. Developer can optionally use the pod name or any other identifier as the Agent Name. Ensure that your configuration aligns with this new behavior.

v0.8.6

17 Jul 13:02
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.8.5...0.8.6

v0.8.5

13 May 10:52
Compare
Choose a tag to compare

[0.8.5] - 2024-05-13

Fixed

  • #190 Remove JSON.stringify on Info Logger

v0.8.4

03 May 07:45
Compare
Choose a tag to compare

[0.8.4] - 2024-05-03

Changed

  • #186 Change error log level to info log