Slack License

ๆณจ: ใ“ใฎใƒชใƒใ‚ธใƒˆใƒชใซใฏใ€Datadog Lambda ๆ‹กๅผตๆฉŸ่ƒฝใซ้–ข้€ฃใ™ใ‚‹ใƒชใƒชใƒผใ‚นใƒŽใƒผใƒˆใ€ๅ•้กŒใ€่ชฌๆ˜Žใ€ใ‚นใ‚ฏใƒชใƒ—ใƒˆใŒๅซใพใ‚Œใฆใ„ใพใ™ใ€‚ใ“ใฎๆ‹กๅผตๆฉŸ่ƒฝใฏใ€Datadog Agent ใฎ็‰นๅˆฅใชใƒ“ใƒซใƒ‰ใงใ™ใ€‚ใ‚ฝใƒผใ‚นใ‚ณใƒผใƒ‰ใฏใ“ใ“ใซใ‚ใ‚Šใพใ™ใ€‚

Datadog Lambda ๆ‹กๅผตๆฉŸ่ƒฝใฏใ€AWS Lambda ้–ขๆ•ฐใฎๅฎŸ่กŒไธญใซ้žๅŒๆœŸใซใ‚ซใ‚นใ‚ฟใƒ ใƒกใƒˆใƒชใ‚ฏใ‚นใ€ใƒˆใƒฌใƒผใ‚นใ€ใƒญใ‚ฐใ‚’้€ไฟกใ™ใ‚‹ใ“ใจใ‚’ใ‚ตใƒใƒผใƒˆใ™ใ‚‹ AWS Lambda ๆ‹กๅผตๆฉŸ่ƒฝใงใ™ใ€‚

ใ‚คใƒณใ‚นใƒˆใƒผใƒซ

ใ‚คใƒณใ‚นใƒˆใƒผใƒซๆ‰‹้ †ใซๅพ“ใฃใฆใ€Datadog ใง้–ขๆ•ฐใฎๆ‹กๅผตใƒกใƒˆใƒชใ‚ฏใ‚นใ€ใƒˆใƒฌใƒผใ‚นใ€ใƒญใ‚ฐใ‚’่กจ็คบใ—ใพใ™ใ€‚

ใ‚ขใƒƒใƒ—ใ‚ฐใƒฌใƒผใƒ‰

ใ‚ขใƒƒใƒ—ใ‚ฐใƒฌใƒผใƒ‰ใ™ใ‚‹ใซใฏใ€Lambda ๅฑคใฎๆง‹ๆˆใพใŸใฏ Dockerfile (ใ‚ณใƒณใƒ†ใƒŠใ‚คใƒกใƒผใ‚ธใจใ—ใฆใƒ‡ใƒ—ใƒญใ‚คใ•ใ‚ŒใŸ Lambda ้–ขๆ•ฐใฎๅ ดๅˆ) ใฎ Datadog ๆ‹กๅผตๆฉŸ่ƒฝใฎใƒใƒผใ‚ธใƒงใƒณใ‚’ๆ›ดๆ–ฐใ—ใฆใใ ใ•ใ„ใ€‚ใ‚ขใƒƒใƒ—ใ‚ฐใƒฌใƒผใƒ‰ใ™ใ‚‹ๅ‰ใซใ€ๆœ€ๆ–ฐใฎใƒชใƒชใƒผใ‚นใจๅฏพๅฟœใ™ใ‚‹ๅค‰ๆ›ดใƒญใ‚ฐใ‚’ใ”่ฆงใใ ใ•ใ„ใ€‚

ๆง‹ๆˆ

ๆง‹ๆˆๆ‰‹้ †ใซๅพ“ใฃใฆใ€ใƒ†ใƒฌใƒกใƒˆใƒชใƒผใซใ‚ฟใ‚ฐใ‚’ไป˜ใ‘ใ€ใƒชใ‚ฏใ‚จใ‚นใƒˆ/ใƒฌใ‚นใƒใƒณใ‚นใƒšใ‚คใƒญใƒผใƒ‰ใ‚’ใ‚ญใƒฃใƒ—ใƒใƒฃใ—ใ€ใƒญใ‚ฐใ‚„ใƒˆใƒฌใƒผใ‚นใ‹ใ‚‰ๆฉŸๅฏ†ๆƒ…ๅ ฑใ‚’ใƒ•ใ‚ฃใƒซใ‚ฟใƒชใƒณใ‚ฐใพใŸใฏใ‚นใ‚ฏใƒฉใƒ–ใ™ใ‚‹ใ€ใชใฉใฎๆ“ไฝœใ‚’่กŒใ„ใพใ™ใ€‚

ใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰

Datadog Lambda ๆ‹กๅผตๆฉŸ่ƒฝใ‚’ๅˆๆœŸๅŒ–ใ™ใ‚‹้š›ใซใฏใ€Lambda ้–ขๆ•ฐใฎใ‚ณใƒผใƒซใƒ‰ใ‚นใ‚ฟใƒผใƒˆ (init ใฎๅฎŸ่กŒๆ™‚้–“ใŒๅข—ๅŠ ) ใซๅคšๅฐ‘ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใŒ็™บ็”Ÿใ—ใพใ™ใ€‚Datadog ใฏ Lambda ๆ‹กๅผตๆฉŸ่ƒฝใฎใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’็ถ™็ถš็š„ใซๆœ€้ฉๅŒ–ใ—ใฆใ„ใ‚‹ใŸใ‚ใ€ๅธธใซๆœ€ๆ–ฐใฎใƒชใƒชใƒผใ‚นใ‚’ไฝฟ็”จใ™ใ‚‹ใ“ใจใ‚’ใŠๅ‹งใ‚ใ—ใพใ™ใ€‚

Lambda ้–ขๆ•ฐใฎๅ ฑๅ‘ŠๆœŸ้–“ (aws.lambda.duration ใพใŸใฏ aws.lambda.enhanced.duration) ใŒ้•ทใใชใฃใฆใ„ใ‚‹ใ“ใจใซๆฐ—ใฅใใ‹ใ‚‚ใ—ใ‚Œใพใ›ใ‚“ใ€‚ใ“ใ‚Œใฏใ€Datadog Lambda ๆ‹กๅผตๆฉŸ่ƒฝใŒ Datadog API ใซใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใƒฉใƒƒใ‚ทใƒฅใƒใƒƒใ‚ฏใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใŸใ‚ใงใ™ใ€‚ๆ‹กๅผตๆฉŸ่ƒฝใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใƒฉใƒƒใ‚ทใƒฅใ™ใ‚‹ใฎใซ่ฒปใ‚„ใ—ใŸๆ™‚้–“ใฏใ€ๆœŸ้–“ใฎไธ€้ƒจใจใ—ใฆๅ ฑๅ‘Šใ•ใ‚Œใพใ™ใŒใ€ใใ‚Œใฏ AWS ใŒ้–ขๆ•ฐใฎๅฟœ็ญ”ใ‚’ใ‚ฏใƒฉใ‚คใ‚ขใƒณใƒˆใซ่ฟ”ใ—ใŸๅพŒใซ่กŒใ‚ใ‚Œใพใ™ใ€‚่จ€ใ„ๆ›ใˆใ‚Œใฐใ€่ฟฝๅŠ ใ•ใ‚ŒใŸๆœŸ้–“ใฏใ€Lambda ้–ขๆ•ฐใ‚’้…ใใ™ใ‚‹ใ“ใจใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๆŠ€่ก“็š„ใชๆƒ…ๅ ฑใซใคใ„ใฆใฏใ€ใ“ใกใ‚‰ใฎ AWS ใƒ–ใƒญใ‚ฐใƒใ‚นใƒˆใ‚’ๅ‚็…งใ—ใฆใใ ใ•ใ„ใ€‚Datadog ๆ‹กๅผตๆฉŸ่ƒฝใซใ‚ˆใฃใฆ่ฟฝๅŠ ใ•ใ‚ŒใŸๆœŸ้–“ใ‚’้™คๅค–ใ—ใฆ้–ขๆ•ฐใฎๅฎŸ้š›ใฎใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใ‚’็›ฃ่ฆ–ใ™ใ‚‹ใซใฏใ€ aws.lambda.enhanced.runtime_duration ใจใ„ใ†ใƒกใƒˆใƒชใ‚ฏใ‚นใ‚’ไฝฟ็”จใ—ใพใ™ใ€‚

ใƒ‡ใƒ•ใ‚ฉใƒซใƒˆใงใฏใ€ๆ‹กๅผตๆฉŸ่ƒฝใฏๅ„ๅ‘ผใณๅ‡บใ—ใฎๆœ€ๅพŒใซใƒ‡ใƒผใ‚ฟใ‚’ Datadog ใซใƒ•ใƒฉใƒƒใ‚ทใƒฅใ—ใพใ™ (ไพ‹ใˆใฐใ€ใ‚ณใƒผใƒซใƒ‰ใ‚นใ‚ฟใƒผใƒˆใฏๅธธใซใƒ•ใƒฉใƒƒใ‚ทใƒฅใ‚’ใƒˆใƒชใ‚ฌใƒผใ—ใพใ™)ใ€‚ใ“ใ‚Œใซใ‚ˆใ‚Šใ€ใƒˆใƒฉใƒ•ใ‚ฃใƒƒใ‚ฏใฎๅฐ‘ใชใ„ใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใ€cron ใ‚ธใƒงใƒ–ใ€ใŠใ‚ˆใณๆ‰‹ๅ‹•ใƒ†ใ‚นใƒˆใ‹ใ‚‰ใฎๆ•ฃ็™บ็š„ใชๅ‘ผใณๅ‡บใ—ใซๅฏพใ™ใ‚‹ใƒ‡ใƒผใ‚ฟๅˆฐ็€ใฎ้…ๅปถใ‚’ๅ›ž้ฟใงใใพใ™ใ€‚ๆ‹กๅผตๆฉŸ่ƒฝใŒๅฎ‰ๅฎšใ—ใŸ้ ป็นใชๅ‘ผใณๅ‡บใ—ใƒ‘ใ‚ฟใƒผใƒณ (1 ๅˆ†ใซ 1 ๅ›žไปฅไธŠ) ใ‚’ๆคœๅ‡บใ™ใ‚‹ใจใ€่ค‡ๆ•ฐใฎๅ‘ผใณๅ‡บใ—ใ‹ใ‚‰ใƒ‡ใƒผใ‚ฟใ‚’ใƒใƒƒใƒๅ‡ฆ็†ใ—ใ€ๆœŸ้™ใŒๆฅใŸๅ‘ผใณๅ‡บใ—ใฎๆœ€ๅˆใซๅฎšๆœŸ็š„ใซใƒ•ใƒฉใƒƒใ‚ทใƒฅใ‚’่กŒใ„ใพใ™ใ€‚ใ“ใ‚Œใฏใ€้–ขๆ•ฐใŒ้ ป็นใซๅ‘ผใณๅ‡บใ•ใ‚Œใ‚‹ใ‚ˆใ†ใซใชใ‚‹ใปใฉใ€ๅ‘ผใณๅ‡บใ—ใ”ใจใฎๅนณๅ‡ๅฎŸ่กŒๆ™‚้–“ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใŒไฝŽใใชใ‚‹ใ“ใจใ‚’ๆ„ๅ‘ณใ—ใพใ™ใ€‚่จ€ใ„ๆ›ใˆใ‚Œใฐใ€ไฝŽใƒˆใƒฉใƒ•ใ‚ฃใƒƒใ‚ฏใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใงใฏใ€ๆŒ็ถšๆ™‚้–“ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใŒ้ก•่‘—ใซใชใ‚‹ไธ€ๆ–นใงใ€้–ข้€ฃใ™ใ‚‹ใ‚ณใ‚นใƒˆใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใฏ้€šๅธธ็„ก่ฆ–ใงใใพใ™ใ€‚้ซ˜ใƒˆใƒฉใƒ•ใ‚ฃใƒƒใ‚ฏใฎใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใงใฏใ€ๆŒ็ถšๆ™‚้–“ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใฏใปใจใ‚“ใฉๆฐ—ใซใชใ‚‰ใชใ„ใงใ—ใ‚‡ใ†ใ€‚Datadog ๆ‹กๅผตๆฉŸ่ƒฝใŒใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใƒฉใƒƒใ‚ทใƒฅใ™ใ‚‹ใŸใ‚ใซไฝฟ็”จใ™ใ‚‹ๆŒ็ถšๆœŸ้–“ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใ‚’็†่งฃใ™ใ‚‹ใซใฏใ€ใƒกใƒˆใƒชใ‚ฏใ‚น aws.lambda.post_runtime_extensions_duration ใพใŸใฏ aws.lambda.enhanced.post_runtime_duration ใ‚’ไฝฟ็”จใ—ใพใ™ใ€‚

Datadog ใ‚ตใ‚คใƒˆใ‹ใ‚‰้ ใ้›ขใ‚ŒใŸๅœฐๅŸŸใซใƒ‡ใƒ—ใƒญใ‚คใ•ใ‚ŒใŸ Lambda ้–ขๆ•ฐใฎๅ ดๅˆใ€ไพ‹ใˆใฐ US1 ใฎ Datadog ใ‚ตใ‚คใƒˆใซใƒ‡ใƒผใ‚ฟใ‚’ๅ ฑๅ‘Šใ™ใ‚‹ eu-west-1 ใซใƒ‡ใƒ—ใƒญใ‚คใ•ใ‚ŒใŸ Lambda ้–ขๆ•ฐใฏใ€ใƒใƒƒใƒˆใƒฏใƒผใ‚ฏใฎใƒฌใ‚คใƒ†ใƒณใ‚ทใƒผใซ่ตทๅ› ใ™ใ‚‹้ซ˜ใ„ๆŒ็ถšๆœŸ้–“ (ใ—ใŸใŒใฃใฆใ‚ณใ‚นใƒˆ) ใฎใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใ‚’่ฆณๆธฌใ™ใ‚‹ใ“ใจใŒใงใใพใ™ใ€‚ใ‚ชใƒผใƒใƒผใƒ˜ใƒƒใƒ‰ใ‚’ๆธ›ใ‚‰ใ™ใซใฏใ€ๆ‹กๅผตๆฉŸ่ƒฝใ‚’ๆง‹ๆˆใ—ใฆใ€ใƒ‡ใƒผใ‚ฟใ‚’ใƒ•ใƒฉใƒƒใ‚ทใƒฅใ™ใ‚‹้ ปๅบฆใ‚’ๅฐ‘ใชใ (ไพ‹ใˆใฐๆฏŽๅˆ†: DD_SERVERLESS_FLUSH_STRATEGY=periodically,60000) ใ—ใพใ™ใ€‚

้žๅธธใซ็Ÿญใ„ใ‚ฟใ‚คใƒ ใ‚ขใ‚ฆใƒˆใŒๆง‹ๆˆใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆ (_็Ÿญใ„_ใฎๅฎš็พฉใฏใƒฉใƒณใ‚ฟใ‚คใƒ ใซไพๅญ˜ใ—ใพใ™)ใ€ใพใ‚Œใซ Lambda ใƒใƒณใƒ‰ใƒฉใƒผใ‚ณใƒผใƒ‰ใŒๆฌกใฎๅ‘ผใณๅ‡บใ—ใงๅฎŸ่กŒใ•ใ‚Œใชใ„ใ“ใจใŒใ‚ใ‚Šใพใ™ใ€‚ใ“ใ‚Œใฏใ€ๆœ€ๅˆใฎๅ‘ผใณๅ‡บใ—ใŒใ‚ฟใ‚คใƒ ใ‚ขใ‚ฆใƒˆใ—ใ€ๆฌกใฎๅ‘ผใณๅ‡บใ—ใง INIT ใƒ•ใ‚งใƒผใ‚บใ‚’ๅ†ๅบฆ้–‹ๅง‹ใ™ใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ๅ ดๅˆใซ็™บ็”Ÿใ—ใพใ™ใ€‚ๆฌกใฎๅ‘ผใณๅ‡บใ—ใง INIT ใƒ•ใ‚งใƒผใ‚บใŒๅฎŒไบ†ใ™ใ‚‹ๅ‰ใซ้–ขๆ•ฐใŒใ‚ฟใ‚คใƒ ใ‚ขใ‚ฆใƒˆใ—ใŸๅ ดๅˆใ€้–ขๆ•ฐใฏ Lambda ใซใ‚ˆใฃใฆ็ต‚ไบ†ใ•ใ‚Œใ€ใƒใƒณใƒ‰ใƒฉใƒผใ‚ณใƒผใƒ‰ใฏๅฎŸ่กŒใ•ใ‚Œใพใ›ใ‚“ใ€‚ใ“ใฎใ‚ˆใ†ใชๅคฑๆ•—ใฏ INIT_REPORT ใƒญใ‚ฐใ‚’ไฝฟใฃใฆ็‰นๅฎšใงใใพใ™ใ€‚Datadog ใงใฏใ€ใ“ใฎใ‚ˆใ†ใช็พ่ฑกใŒ็ขบ่ชใ•ใ‚ŒใŸ Lambda ้–ขๆ•ฐใฎใ‚ฟใ‚คใƒ ใ‚ขใ‚ฆใƒˆใ‚’ๅข—ใ‚„ใ™ใ“ใจใ‚’ๆŽจๅฅจใ—ใฆใ„ใพใ™ใ€‚

ๅ•้กŒใ‚’้–‹ใ

ใ“ใฎใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใงใƒใ‚ฐใŒ็™บ็”Ÿใ—ใŸๅ ดๅˆใฏใ€ใŠ็Ÿฅใ‚‰ใ›ใใ ใ•ใ„ใ€‚ๆ–ฐใ—ใ„ๅ•้กŒใ‚’้–‹ใๅ‰ใซใ€้‡่ค‡ใ‚’้ฟใ‘ใ‚‹ใŸใ‚ใซๆ—ขๅญ˜ใฎๅ•้กŒใ‚’ๆคœ็ดขใ—ใฆใใ ใ•ใ„ใ€‚

ๅ•้กŒใ‚’้–‹ใใจใใฏใ€ๆ‹กๅผตๆฉŸ่ƒฝใฎใƒใƒผใ‚ธใƒงใƒณใ€ใŠใ‚ˆใณๅ–ๅพ—ใงใใ‚‹ๅ ดๅˆใฏใ‚นใ‚ฟใƒƒใ‚ฏใƒˆใƒฌใƒผใ‚นใ‚’ๅซใ‚ใฆใใ ใ•ใ„ใ€‚ใ•ใ‚‰ใซใ€ๅฟ…่ฆใซๅฟœใ˜ใฆๅ†็พๆ‰‹้ †ใ‚’ๅซใ‚ใฆใใ ใ•ใ„ใ€‚

ๆฉŸ่ƒฝใƒชใ‚ฏใ‚จใ‚นใƒˆใฎๅ•้กŒใ‚’้–‹ใใ“ใจใ‚‚ใงใใพใ™ใ€‚

ๅฏ„็จฟ

ใ“ใฎใƒ‘ใƒƒใ‚ฑใƒผใ‚ธใซๅ•้กŒใŒ่ฆ‹ใคใ‹ใ‚Šใ€ไฟฎๆญฃๆ–นๆณ•ใŒๅˆ†ใ‹ใ‚‹ๅ ดๅˆใฏใ€ๆ‰‹้ †ใซๅพ“ใฃใฆใƒ—ใƒซใƒชใ‚ฏใ‚จใ‚นใƒˆใ‚’้–‹ใ„ใฆใใ ใ•ใ„ใ€‚

ใƒ†ใ‚นใƒˆ

Google Cloud Run ใง Datadog Serverless-Init ใฎๅค‰ๆ›ดใ‚’ใƒ†ใ‚นใƒˆใ™ใ‚‹ใซใฏ

  1. ใ“ใฎใƒชใƒใ‚ธใƒˆใƒชใจ Datadog Agent ใƒชใƒใ‚ธใƒˆใƒชใ‚’ๅŒใ˜่ฆชใƒ‡ใ‚ฃใƒฌใ‚ฏใƒˆใƒชใซ่ค‡่ฃฝใ—ใพใ™ใ€‚
  2. ใ“ใฎใƒชใƒใ‚ธใƒˆใƒชใง VERSION=0 SERVERLESS_INIT=true ./scripts/build_binary_and_layer_dockerized.sh ใ‚’ๅฎŸ่กŒใ—ใฆใ€serverless-init ใƒใ‚คใƒŠใƒชใ‚’ใƒ“ใƒซใƒ‰ใ—ใพใ™ใ€‚
  3. ใ“ใ“ใซ่ชฌๆ˜Žใ•ใ‚Œใฆใ„ใ‚‹ใ‚ˆใ†ใซ โ€œHello Worldโ€ ใ‚ตใƒผใƒใƒผใƒฌใ‚นใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใ‚’ไฝœๆˆใ—ใพใ™ใ€‚
  4. ๅ…ฌ้–‹ใ•ใ‚Œใฆใ„ใ‚‹ๆ‰‹้ †ใซๅพ“ใฃใฆใ€ใ‚ตใƒผใƒใƒผใƒฌใ‚นใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใซ Serverless-Init ใ‚’่ฟฝๅŠ ใ—ใพใ™ใ€‚
  5. ใƒ“ใƒซใƒ‰ใ—ใŸใƒใ‚คใƒŠใƒชใƒ•ใ‚กใ‚คใƒซใ‚’ Dockerfile ใจๅŒใ˜ๅ ดๆ‰€ใซใ‚ณใƒ”ใƒผใ—ใพใ™ใ€‚
cp datadog-lambda-extension/.layers/datadog_extension-amd64/extensions/datadog-agent ~/hello-world-app/datadog-init
  1. Dockerfile ใงใ€
COPY --from=datadog/serverless-init:1 /datadog-init /app/datadog-init

ใ‚’ไปฅไธ‹ใซ็ฝฎใๆ›ใˆใพใ™ใ€‚

COPY datadog-init /app/datadog-init

ใ‚ตใƒผใƒใƒผใƒฌใ‚นใ‚ขใƒ—ใƒชใ‚ฑใƒผใ‚ทใƒงใƒณใ‚’ใƒ‡ใƒ—ใƒญใ‚คใ™ใ‚‹ใจใ€ใ‚ณใƒผใƒ‰ใธใฎๅค‰ๆ›ดใ‚’ๅซใ‚€ใƒใƒผใ‚ธใƒงใƒณใฎ Serverless-Init ใงๅฎŸ่กŒใ•ใ‚Œใพใ™ใ€‚

ใ‚ณใƒŸใƒฅใƒ‹ใƒ†ใ‚ฃ

่ฃฝๅ“ใฎใƒ•ใ‚ฃใƒผใƒ‰ใƒใƒƒใ‚ฏใ‚„่ณชๅ•ใซใคใ„ใฆใฏใ€Slack ใฎ Datadog ใ‚ณใƒŸใƒฅใƒ‹ใƒ†ใ‚ฃใฎ #serverless ใƒใƒฃใƒณใƒใƒซใซๅ‚ๅŠ ใ—ใฆใใ ใ•ใ„ใ€‚

ใƒฉใ‚คใ‚ปใƒณใ‚น

็‰นใซๆ˜Ž่จ˜ใ•ใ‚Œใฆใ„ใชใ„้™ใ‚Šใ€ใ“ใฎใƒชใƒใ‚ธใƒˆใƒชๅ†…ใฎใ™ในใฆใฎใƒ•ใ‚กใ‚คใƒซใฏใ€Apache License Version 2.0 ใฎไธ‹ใงใƒฉใ‚คใ‚ปใƒณใ‚นใ•ใ‚Œใพใ™ใ€‚

ใ“ใฎ่ฃฝๅ“ใซใฏใ€Datadog(https://www.datadoghq.com/) ใง้–‹็™บใ•ใ‚ŒใŸใ‚ฝใƒ•ใƒˆใ‚ฆใ‚งใ‚ขใŒๅซใพใ‚Œใฆใ„ใพใ™ใ€‚Copyright 2021 Datadog, Inc.