본문 바로가기
WIKI 기술 지식 베이스

.NET 및 .NET Core 호환성 요구사항 (.NET and .NET Core Compatibility Requirements)

원문 보기 위키 갱신

Datadog .NET Tracer가 지원하는 .NET·.NET Core 런타임, 운영체제, 자동 계측 라이브러리 목록이에요.

출처: 문서

본문

Datadog .NET Tracer는 모든 .NET 기반 언어(예: C#, F#, Visual Basic)를 지원해요. trimmed 앱에 대한 미리 보기(Preview) 지원이 있어요.

.NET Tracer는 오픈소스예요. 자세한 내용은 .NET Tracer 저장소를 참고하세요.

지원되는 .NET·.NET Core 런타임

.NET Tracer는 다음 .NET·.NET Core 버전에서 자동 계측을 지원해요. 또한 .NET Framework를 지원해요.

.NET 버전 Microsoft 수명 종료 지원 수준 패키지 버전
.NET 10 2028년 11월 14일 GA latest (>= 3.31.0)
.NET 9 2026년 11월 10일 GA latest (>= 3.6.0)
.NET 8 2026년 11월 10일 GA latest (>= 2.42.0)
.NET 7 2024년 5월 14일 GA latest (>= 2.20.0)
.NET 6 2024년 11월 12일 GA latest (>= 2.0.0)
.NET 5 2022년 5월 10일 GA latest (>= 2.0.0)
.NET Core 3.1 2022년 12월 13일 GA latest
.NET Core 3.0 2020년 3월 3일 EOL 권장하지 않음
.NET Core 2.2 2019년 12월 23일 EOL 권장하지 않음
.NET Core 2.1 2021년 8월 21일 EOL 권장하지 않음
.NET Core 2.0 2018년 10월 1일 EOL 권장하지 않음

추가 정보는 Microsoft의 .NET·.NET Core 수명 주기 정책, 수명 종료 .NET 런타임 버전, .NET 런타임 지원 정책에서 확인할 수 있어요.

지원되는 운영 체제 (Supported operating systems)

.NET Tracer는 Windows와 Linux 운영체제에서 .NET·.NET Core 애플리케이션의 자동 계측을 지원해요. macOS는 CI 테스트 최적화(Test Optimization) 전용으로 지원해요. .NET·.NET Core가 지원하는 운영체제에 대한 추가 정보는 .NET 릴리스 노트에서 확인할 수 있어요.

Windows

운영체제 버전 지원 수준 패키지 버전
Windows Server 2012+ GA latest
Windows Client 8.1+ GA latest
Windows Server (x86) 모든 버전 EOL < 3.0.0 (예: 2.48.0)
Windows Server < 2012 EOL < 3.0.0 (예: 2.48.0)

참고: "Windows Server"는 모든 에디션과 설치 옵션을 포함해요.

  • 에디션: Datacenter, Standard, Essentials 등.
  • 설치 옵션: Server Core, Server with Desktop Experience, Nano Server(컨테이너 이미지 전용).

32비트(x86) 애플리케이션의 계측은 64비트(x64) Windows에서 지원돼요. Windows on ARM64는 지원되지 않아요.

Linux

.NET Tracer는 최소 libc 버전 호환성을 기준으로 Linux 배포판을 최선의 노력(best-effort)으로 지원해요.

  • x64: glibc 2.17 (CentOS 7부터)
  • arm64: glibc 2.23 (Debian 10부터)
  • Alpine x64: musl 1.2.2 (Alpine 3.14부터)
  • Alpine arm64: musl 1.2.4 (Alpine 3.18부터)
운영체제 버전 아키텍처 지원 수준 패키지 버전
Alpine Linux (x64) 3.14+ x64 GA latest (.NET 5+ 전용, v1.27.0+)
Alpine Linux (arm64) 3.18+ arm64 GA latest (.NET 6+ 전용, v3.2.0+)
CentOS Linux 7+ x64 Maintenance latest (v4.0.0에서 EOL)
CentOS Stream Linux 8 x64 Maintenance latest (v4.0.0에서 EOL)
Debian 10+ x64, arm64 GA latest
Fedora 29+ x64 GA latest
openSUSE 15+ x64 GA latest
Red Hat Enterprise Linux 7+ x64 GA latest
Ubuntu 18.04+ x64, arm64 GA latest

macOS

.NET Tracer는 CI 테스트 최적화(Test Optimization) 전용으로 macOS를 지원해요.

운영체제 버전 아키텍처 지원 수준 패키지 버전
macOS 14.0+ x64, arm64 GA latest
macOS 11.0 x64 EOL < 3.0.0
macOS 11.0 arm64 EOL < 3.0.0 (2.20.0에서 추가)

통합 (Integrations)

최신 .NET Tracer 버전은 다음 라이브러리를 자동 계측할 수 있어요.

프레임워크 또는 라이브러리 NuGet 패키지 통합 이름
ADO.NET 모든 AdoNet 통합 AdoNet
Aerospike Aerospike.Client 4.0.0+ Aerospike
ASP.NET Core Microsoft.AspNetCore``Microsoft.AspNetCore.App2.0+ 및 3.0+ AspNetCore
Azure Functions Microsoft.Azure.Webjobs 3.0+ AzureFunctions
Amazon DynamoDB AWSSDK.DynamoDBv2 3.0+ AwsDynamoDb
Amazon Kinesis AWSSDK.Kinesis 3.0+ AwsKinesis
Amazon SNS AWSSDK.SNS 3.0+ AwsSns
Amazon SQS AWSSDK.SQS 3.0+ AwsSqs
Azure Cosmos DB Microsoft.Azure.Cosmos 3.6.0+ CosmosDb
Azure Event Hubs Azure.Messaging.EventHubs 5.9.2+ AzureEventHubs
Azure Service Bus Azure.Messaging.ServiceBus 7.14+ AzureServiceBus
Couchbase CouchbaseNetClient 2.2.8+ Couchbase
Elasticsearch Elasticsearch.Net 5.3.0+ ElasticsearchNet
GraphQL .NET GraphQL 2.3.0+ GraphQL
gRPC Grpc.Net.Client2.30.0+ (.NET Core 3.0+ 전용)Grpc.Core 2.30.0+Grpc.AspNetCore 2.30.0+ Grpc
HotChocolate HotChocolate 11.0.0+ HotChocolate
HttpClient / HttpMessageHandler System.Net.Http 4.0+ HttpMessageHandler
Kafka Confluent.Kafka 1.4+ Kafka
IBM MQ amqmdnetstd 9.0.0+ IbmMq
MongoDB MongoDB.Driver.Core 2.1.0+ MongoDb
MySql MySql.Data 6.7.0+MySqlConnector 0.61.0+ MySql
Oracle Oracle.ManagedDataAccess 4.122.0+ Oracle
PostgreSQL Npgsql 4.0+ Npgsql
Process System.Diagnostics.Process 4.0+ Process
RabbitMQ RabbitMQ.Client 3.6.9+ . RabbitMQ
Redis (ServiceStack 클라이언트) ServiceStack.Redis 4.0.48+ ServiceStackRedis
Redis (StackExchange 클라이언트) StackExchange.Redis 1.0.187+ StackExchangeRedis
Service Fabric Remoting Microsoft.ServiceFabric.Services.Remoting 4.0.470+ ServiceRemoting
SQLite System.Data.Sqlite 2.0.0+Microsoft.Data.Sqlite 1.0.0+ Sqlite
SQL Server System.Data 4.0.0+System.Data.SqlClient 4.0.0+Microsoft.Data.SqlClient 1.0.0+ SqlClient
WebClient / WebRequest System.Net.Requests 4.0+ WebRequest

참고: Redis 6.0+는 HELLO, MIGRATE, ACL SETUSER 같은 명령에서 인라인 인증을 지원해요.

  • Datadog Trace Agent: 인증 매개변수가 트레이스 메타데이터에서 자동으로 난독화되도록 최소 필수·권장 버전은 7.76.1이에요.
  • Datadog Lambda Extension (Serverless 환경): 최소 필수 버전은 v28.0.0이에요.

원하는 라이브러리가 없나요? 먼저 라이브러리가 OpenTelemetry와 호환되는 관측성 데이터를 생성하는지 확인하세요(자세한 내용은 OpenTelemetry 계측 라이브러리 사용 참고). 아니라면 Datadog이 지속적으로 지원을 추가하고 있어요. Datadog 팀에 문의해 도움을 받으세요.

수명 종료 .NET 런타임 버전 (End of life .NET runtime versions)

.NET Tracer는 .NET Core 2.0, 2.1, 2.2, 3.0, 3.1과 .NET 5, 7에서 동작하지만, 이 버전은 수명 종료에 도달해 Microsoft가 더 이상 지원하지 않아요. 자세한 내용은 Microsoft의 지원 정책을 참고하세요. Datadog은 .NET 6 또는 .NET 8의 최신 패치 버전을 사용할 것을 권장해요. 구버전 .NET·.NET Core는 자동 계측 활성화 시 다음 런타임 문제가 발생할 수 있어요.

문제 영향받는 .NET 버전 해결책 추가 정보
Linux/x64의 JIT 컴파일러 버그 2.0.x,2.1.0-2.1.11,2.2.0-2.2.5 .NET Core를 최신 패치 버전으로 업그레이드하거나 연결된 이슈의 단계를 따르세요 DataDog/dd-trace-dotnet/issues/302
en-US이 아닌 로케일의 리소스 조회 버그 2.0.0 .NET Core를 2.0.3 이상으로 업그레이드하세요 dotnet/runtime/issues/23938
종료 시 크래시를 일으키는 JIT 컴파일러 버그 2.0.0-2.2.x .NET Core를 3.1.0 이상으로 업그레이드하세요 dotnet/runtime/pull/11885
JIT 컴파일러 버그 2.x, 3.x, 5.x, 6.x, 7.x, 8.0.0-8.0.5 .NET을 8.0.6 이상으로 업그레이드하세요 dotnet/runtime/pull/73760
JIT 컴파일러 버그 모든 .NET 버전 현재 해결 방법 없음 dotnet/runtime/issues/85777
런타임 메트릭 사용 시 크래시를 일으키는 .NET 런타임 버그 6.0.0-6.0.10 .NET 6.0.11 이상으로 업그레이드하거나 런타임 메트릭을 비활성화하세요 dotnet/runtime/pull/76431
크래시를 일으키는 JIT 컴파일러 버그 2.x, 3.x, 5.x, 6.x, 7.x, 8.x .NET을 9.0.0 이상으로 업그레이드하세요 dotnet/runtime/pull/95653
크래시를 일으키는 JIT 컴파일러 버그 2.x, 3.x, 5.x, 6.x, 7.x, 8.x, 9.x, 10.x 현재 해결 방법 없음 dotnet/runtime/issues/127957

지원되는 Datadog Agent 버전

Datadog Agent 버전 패키지 버전
7.x Latest
6.x Latest
5.x Latest

.NET 런타임 지원 정책 (.NET runtime support policy)

.NET Tracer는 호스트 운영체제, .NET 런타임, 특정 .NET 라이브러리, Datadog Agent/API에 의존해요. 이 서드파티 소프트웨어 시스템은 특정 .NET·.NET Core 버전을 지원해요. 외부 소프트웨어가 특정 .NET 버전을 더 이상 지원하지 않으면, .NET Tracer도 해당 버전에 대한 지원을 제한해요.

지원 수준 (Levels of support)

수준 제공되는 지원
지원 안 함 (Unsupported) 구현 없음. 특별 요청은 고객 지원에 문의하세요.
미리 보기 (Preview) 초기 구현. 아직 모든 기능을 포함하지 않을 수 있어요. 새 기능·버그·보안 수정 지원은 최선의 노력으로 제공돼요.
일반 공급 (GA) 모든 기능의 전체 구현. 새 기능·버그·보안 수정에 대한 완전한 지원.
유지보수 (Maintenance) 기존 기능의 전체 구현. 새 기능은 받지 않아요. 버그·보안 수정 지원만.
수명 종료 (EOL) 지원 없음.

패키지 버전 관리 (Package versioning)

.NET Tracer는 시맨틱 버전 관리를 실천해요. 버전 업데이트는 런타임 지원에 다음 변경을 의미해요.

  • 메이저 버전 업데이트(예: 1.0.0 → 2.0.0)는 모든 런타임의 지원을 Preview/GA에서 Maintenance/EOL로 바꿀 수 있어요.
  • 마이너 버전 업데이트(예: 1.0.0 → 1.1.0)는 한 런타임의 지원 수준을 낮추지 않지만 하나를 추가할 수 있어요.
  • 패치 버전 업데이트(예: 1.0.0 → 1.0.1)는 어떤 런타임의 지원도 변경하지 않아요.

더 알아보기 (Learn more)

도움이 되는 추가 문서, 링크, 글: