Notes
๋ฒ๊ทธ ์์
- ํจ์๊ฐ ์๋ ๊ฒฝ์ฐ ํธ๋ค๋ฌ๋ฅผ ๋ํํ์ง ์๋๋ก ๋ฏธ๋ค์จ์ด ๋ํผ๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3469)(c702689)
์ ์ ์๋ฅ ๋น์น
์ง์ง ์ฑ๋ช :
์ต์ ์์ด์ ํธ ๋ฒ์ ์ด ์ถ์๋๋ฉด ์ฆ์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ต์ ๋ฒ์ ์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ, ์์ด์ ํธ๋ฅผ 90์ผ ์ด๋ด ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ์์ด์ ํธ์๊ฒ ์ต์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด์ธ์. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
์์ด์ ํธ ๋ฆด๋ฆฌ์ค ๋ฐ ์ง์ ๋ ์ง์ ๋ํ ์ ๋ณด๋ ๋ด๋ ๋ฆญ Node.js ์์ด์ ํธ EOL ์ ์ฑ ์ ์ฐธ์กฐํ์ธ์. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
ํน์ง
- http2 ํด๋ผ์ด์ธํธ ๋ฉ์๋์ ๋ํ ์ธก์ , ๋ก๊ทธ๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. (#3284) (bda7aea)
๋ฒ๊ทธ ์์
.pipeline์ฌ์ฉํ ๋ ๋ฐ์ํ๋ ์ค๋ฅ์ ํ์์ ์ฒ๋ฆฌํ๊ธฐ ์ํดioredis์ธก์ , ๊ณ์ธก์ ์ ๋ฐ์ดํธํ์ต๋๋ค. (#3457) (49f4d93)include_usage์ค์ ๋ ๊ฒฝ์ฐ ๋น ์ฒญํฌ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํดopenaiinstrumentStreamํจ์๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3427)(f804940)
์ฝ๋ ๋ฆฌํฉํ ๋ง
- ๋ฐฉ์ถ๋ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋
ํ๊ธฐ ์ํ
express์ธก์ , ๋ก๊ทธ ์ ๋ฐ์ดํธ(#3424)(bbf3d01) - ๋ ๋์ for...of ๋๋ for index ๋ฃจํ๋ฅผ ์ํด ์ธก์ ์์
Array.forEach์ ๋ก๊ทธ๊ฐ ์ ๋ฐ์ดํธ๋์์ต๋๋ค. (#3463) (99484ce) - ๋ ๋์ for...of ๋๋ for index ๋ฃจํ๋ฅผ ์ํด
Array.forEach์ ์ธ์คํด์ค๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3440)(48c37bf) aws-bedrockLLM ์ด๋ฒคํธ์ ๋ํ ํ ํฐ ๊ณ์ฐ์ด ์ ๋ฐ์ดํธ๋์์ต๋๋ค(#3445)(9450181)google-genaiLLM ์ด๋ฒคํธ์ ๋ํ ํ ํฐ ๊ณ์ฐ์ด ์ ๋ฐ์ดํธ๋์์ต๋๋ค(#3431)(41d32be)openaiLLM ์ด๋ฒคํธ์ ๋ํ ํ ํฐ ๊ณ์ฐ์ด ์ ๋ฐ์ดํธ๋์์ต๋๋ค(#3430)(b8678cc)
์ ์ ์๋ฅ ๋น์น
์ก์ผ
ํ ์คํธ
- agent_helper์
randomString๋์ฐ๋ฏธ๋ฅผ ์ถ๊ฐํ๊ณ ioredis์์ ํ๋ํผ ํ ์คํธ๋ฅผ ํผํ๊ธฐ ์ํด ์ฌ์ฉํ์ผ๋ฉฐ, ๋ํ kafka, elasticsearch ๋ฐ opensearch ํ ์คํธ์์ ์์ ๋ฌธ์์ด์ ๋ก์ปฌ ์ธ์คํด์ค๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3462)(4deb6d8) - ํ
์คํธ ์ค๊ฐ์ ์ธ๋ฑ์ค๊ฐ ์ ๊ฑฐ๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด
flushall๋์flushdb์คํํ์ฌ ioredis์ ioredis-esm ๊ฐ์ ์ถฉ๋์ ์์ ํ์ต๋๋ค(#3464)(5e3f0a8) - ์ถฉ๋์ ๋ฐ์์ํค๊ธฐ ์ํด ์๋์ ์ผ๋ก ๋ฉ์๋๋ฅผ ์๋ชป ์ฒ ์ํ๋ ๊ณ ์ ๋ ๋น๋๊ธฐ ์ค๋ฅ ํ ์คํธ(#3435)(ff9f064)
- AWS-sdk-v3 common.js ์๊ตฌ ์ฌํญ์ semver๋ก ์ด๋ํ์ต๋๋ค(#3461)(6a380ef)
- Next.js ํ
์คํธ๋ฅผ
<16.0.0์ ๊ณ ์ ํ์ต๋๋ค(#3446)(10787a1) @langchain/core์ ์ต์ ํ ์คํธ ๋ฒ์ ์ 1.0.0์ผ๋ก ์ ๋ฐ์ดํธํ์ต๋๋ค(#3437)(b61f67a)
์ง์ง ์ฑ๋ช :
์ต์ ์์ด์ ํธ ๋ฒ์ ์ด ์ถ์๋๋ฉด ์ฆ์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ต์ ๋ฒ์ ์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ, ์์ด์ ํธ๋ฅผ 90์ผ ์ด๋ด ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ์์ด์ ํธ์๊ฒ ์ต์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด์ธ์. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
์์ด์ ํธ ๋ฆด๋ฆฌ์ค ๋ฐ ์ง์ ๋ ์ง์ ๋ํ ์ ๋ณด๋ ๋ด๋ ๋ฆญ Node.js ์์ด์ ํธ EOL ์ ์ฑ ์ ์ฐธ์กฐํ์ธ์. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
์ฝ๋ ๋ฆฌํฉํ ๋ง
๋ฐฉ์ถ๋ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋ ํ๋๋ก
fastify์ธก์ , ๋ก๊ทธ๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค. (#3407) (51e361e)๋ฐฉ์ถ๋ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋ ํ๋๋ก
pg๋ฐpg-native์ธก์ ์ธก์ ์ ์ ๋ฐ์ดํธํ์ต๋๋ค. (#3397) (04af258)๊ธฐ๋ณธ์ ์ผ๋ก
timers.setTimeout๋ฐtimers.setInterval๋นํ์ฑํํ๊ธฐ ์ํดconfig.instrumentation.timers.enabledfalse๋ก ์ ๋ฐ์ดํธํ์ต๋๋ค. (#3414) (b925d3d)- ๋ค์ ํ์ฑํํ๋ ค๋ฉด config์์
config.instrumentation.timers.enabledtrue๋ก ์ค์ ํ๊ฑฐ๋ ์ค์ ํ์ธ์.NEW_RELIC_INSTRUMENTATION_TIMERS_ENABLED=true
- ๋ค์ ํ์ฑํํ๋ ค๋ฉด config์์
์ ์ ์๋ฅ ๋น์น
์ก์ผ
- ์๋ก์ด ์ง๋จ ๊ธฐ๋ณธ ํด๋์ค๋ฅผ ์ถ๊ฐํ๊ณ ์ ํด๋์ค๋ฅผ ์ฌ์ฉํ๋๋ก undici๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ์ต๋๋ค(#3408)(8047bf1)
- ์ํ๋ฌ์ฉ ๋๋ ํ ๋ฆฌ ์์ฑ(#3419)(dd2d3df)
์คํ์ผ
check-types๋ฐrequire-returns-typejsdoc ํ์(#3400)(e4cd687)- jsdoc
check*,implements-on-classes๋ฐ ์ผ๋ถno-undefined-types๊ฐ ํ์ํฉ๋๋ค(#3404)(4fa645b) - jsdoc
require-returns-check๋ฐrequire-property-*ํ์ (#3403) (1008073)
ํ ์คํธ
- package.json์ด ๋ด๋ณด๋ด์ง์ง ์์ ๋ ํจํค์ง ๋ฒ์ ์ ๊ฐ์ ธ์ค๋ ๋์ฐ๋ฏธ๋ฅผ ์ถ๊ฐํ๊ณ ํด๋น ๋ฒ์ ์ด ํ์ํ ํ ์คํธ๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3411)(5ae02c7)
- ๋ณด์ ์์ด์ ํธ๊ฐ ํ์ฑํ๋ ๊ฒฝ์ฐ ๊ณ ์ ๋ fastify ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ ์ด์ค์ (#3422)(b2cf6ed)
- ๋ชจ๋ ์คํธ๋ฆฌ๋ฐ ํ ์คํธ๋ฅผ ์ํด ์ ํฌํธ์์ ์์ ํ๋๋ก mcp ํ ์คํธ๋ฅผ ๋ฆฌํฉํ ๋งํ๊ณ ๋ถํ์ํ ํ๋ก์ธ์ค ์ข ๋ฃ๋ฅผ ์ ๊ฑฐํ์ต๋๋ค(#3420)(17db813)
- setTimeout์ด ๋นํ์ฑํ๋ openai ์ด์ค์ ์ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3421)(ceec8f9)
์ง์ง ์ฑ๋ช :
์ต์ ์์ด์ ํธ ๋ฒ์ ์ด ์ถ์๋๋ฉด ์ฆ์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ต์ ๋ฒ์ ์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ, ์์ด์ ํธ๋ฅผ 90์ผ ์ด๋ด ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ์์ด์ ํธ์๊ฒ ์ต์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด์ธ์. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
์์ด์ ํธ ๋ฆด๋ฆฌ์ค ๋ฐ ์ง์ ๋ ์ง์ ๋ํ ์ ๋ณด๋ ๋ด๋ ๋ฆญ Node.js ์์ด์ ํธ EOL ์ ์ฑ ์ ์ฐธ์กฐํ์ธ์. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
์ฝ๋ ๋ฆฌํฉํ ๋ง
- ๋ฐฉ์ถ๋ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋
ํ๊ธฐ ์ํ
amqplib์ธก์ ์ธก์ ์ ๋ฐ์ดํธ(#3377)(fecbb08) - ๋ฐฉ์ถ๋ ์ด๋ฒคํธ๋ฅผ ๊ตฌ๋
ํ๊ธฐ ์ํด
cassandra-driver์ธก์ , ๋ก๊ทธ๋ฅผ ์ ๋ฐ์ดํธํ์ต๋๋ค. (#3372) (bb87cd8)
์ ์ ์๋ฅ ๋น์น
์ก์ผ
- wasm ์ต์ ํ๋ฅผ ํ์ฉํ๊ธฐ ์ํด
@apm-js-collab/tracing-hooks์ต์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ต๋๋ค(#3398)(cda56cc)
์คํ์ผ
jsdoc/valid-types๋ฐjsdoc/check-param-namesํ์ (#3368) (5d1b1d9)- jsdoc
require-param-description๋ฐrequire-param-typeํ์ (#3391) (3785d0c)
์ง์ง ์ฑ๋ช :
์ต์ ์์ด์ ํธ ๋ฒ์ ์ด ์ถ์๋๋ฉด ์ฆ์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ต์ ๋ฒ์ ์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ, ์์ด์ ํธ๋ฅผ 90์ผ ์ด๋ด ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ์์ด์ ํธ์๊ฒ ์ต์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด์ธ์. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
์์ด์ ํธ ๋ฆด๋ฆฌ์ค ๋ฐ ์ง์ ๋ ์ง์ ๋ํ ์ ๋ณด๋ ๋ด๋ ๋ฆญ Node.js ์์ด์ ํธ EOL ์ ์ฑ ์ ์ฐธ์กฐํ์ธ์. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
ํน์ง
๋ฒ๊ทธ ์์
completions.parse๋๋responses.parse์ฌ์ฉํ ๋ ์ถฉ๋์ ๋ฐฉ์งํ๊ธฐ ์ํด APIPromise๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๋ฐํํ๋๋กopenai์ธก์ , ๊ณ์ธก์ ์ ๋ฐ์ดํธํ์ต๋๋ค(#3382)(c7ccf26)
์ ์ ์๋ฅ ๋น์น
์ก์ผ
- ์ฌ์ฉํ์ง ์๋
loader.mjs์ ๊ฑฐํ์ต๋๋ค(#3376)(66a9fd5) - OTel Bridge ํ์ฑํ/๋นํ์ฑํ์ ๋ํ ์ ๋ฐ์ดํธ๋ ๋ฉํธ๋ฆญ(#3381)(b976c37)
- ์ ๋ฐ์ดํธ๋ ์ง์ ๊ฐ๋ฅ์ฑ OTel Bridge ํ์ฑํ๋ฅผ ์ํ ์งํ ์ด๋ฆโฆ (#3383) (c7c1d6c)
์ง์ง ์ฑ๋ช :
์ต์ ์์ด์ ํธ ๋ฒ์ ์ด ์ถ์๋๋ฉด ์ฆ์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ต์ ๋ฒ์ ์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ, ์์ด์ ํธ๋ฅผ 90์ผ ์ด๋ด ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ์์ด์ ํธ์๊ฒ ์ต์ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด์ธ์. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
์์ด์ ํธ ๋ฆด๋ฆฌ์ค ๋ฐ ์ง์ ๋ ์ง์ ๋ํ ์ ๋ณด๋ ๋ด๋ ๋ฆญ Node.js ์์ด์ ํธ EOL ์ ์ฑ ์ ์ฐธ์กฐํ์ธ์. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)
Notes
Bug fixes
Code refactoring
Documentation
Continuous integration
- Benchmark tests run on push on main (#3359) (c0f81c3)
- Changed NUGET_SOURCE workflow to variable (#3364) (10692db)
- Fix benchmark workflow (#3365) (7da99b5)
- Updated the
GH_RELEASE_TOKENto point to our bot user PAT instead of python agent (#3363) (06eb5c1)
Support statement:
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/)
See the New Relic Node.js agent EOL policy for information about agent releases and support dates. (https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/nodejs-agent-eol-policy/)