Skip to content

Commit 043067f

Browse files
feat(@opentelemetry/semantic-conventions): change enum to object literals (#2532)
Co-authored-by: Valentin Marchaud <[email protected]>
1 parent f9f43e5 commit 043067f

File tree

3 files changed

+243
-228
lines changed

3 files changed

+243
-228
lines changed

packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts

+69-65
Original file line numberDiff line numberDiff line change
@@ -476,141 +476,145 @@ As an alternative, consider setting `faas.id` as a span attribute instead.
476476
WEBENGINE_DESCRIPTION: 'webengine.description',
477477
}
478478

479-
// Enum definitions
480479

481-
482-
export enum CloudProviderValues {
480+
export const CloudProviderValues = {
483481
/** Alibaba Cloud. */
484-
ALIBABA_CLOUD = 'alibaba_cloud',
482+
ALIBABA_CLOUD: 'alibaba_cloud',
485483
/** Amazon Web Services. */
486-
AWS = 'aws',
484+
AWS: 'aws',
487485
/** Microsoft Azure. */
488-
AZURE = 'azure',
486+
AZURE: 'azure',
489487
/** Google Cloud Platform. */
490-
GCP = 'gcp',
491-
}
488+
GCP: 'gcp',
489+
} as const
490+
export type CloudProviderValues = typeof CloudProviderValues[keyof typeof CloudProviderValues]
492491

493492

494493

495494

496-
export enum CloudPlatformValues {
495+
export const CloudPlatformValues = {
497496
/** Alibaba Cloud Elastic Compute Service. */
498-
ALIBABA_CLOUD_ECS = 'alibaba_cloud_ecs',
497+
ALIBABA_CLOUD_ECS: 'alibaba_cloud_ecs',
499498
/** Alibaba Cloud Function Compute. */
500-
ALIBABA_CLOUD_FC = 'alibaba_cloud_fc',
499+
ALIBABA_CLOUD_FC: 'alibaba_cloud_fc',
501500
/** AWS Elastic Compute Cloud. */
502-
AWS_EC2 = 'aws_ec2',
501+
AWS_EC2: 'aws_ec2',
503502
/** AWS Elastic Container Service. */
504-
AWS_ECS = 'aws_ecs',
503+
AWS_ECS: 'aws_ecs',
505504
/** AWS Elastic Kubernetes Service. */
506-
AWS_EKS = 'aws_eks',
505+
AWS_EKS: 'aws_eks',
507506
/** AWS Lambda. */
508-
AWS_LAMBDA = 'aws_lambda',
507+
AWS_LAMBDA: 'aws_lambda',
509508
/** AWS Elastic Beanstalk. */
510-
AWS_ELASTIC_BEANSTALK = 'aws_elastic_beanstalk',
509+
AWS_ELASTIC_BEANSTALK: 'aws_elastic_beanstalk',
511510
/** Azure Virtual Machines. */
512-
AZURE_VM = 'azure_vm',
511+
AZURE_VM: 'azure_vm',
513512
/** Azure Container Instances. */
514-
AZURE_CONTAINER_INSTANCES = 'azure_container_instances',
513+
AZURE_CONTAINER_INSTANCES: 'azure_container_instances',
515514
/** Azure Kubernetes Service. */
516-
AZURE_AKS = 'azure_aks',
515+
AZURE_AKS: 'azure_aks',
517516
/** Azure Functions. */
518-
AZURE_FUNCTIONS = 'azure_functions',
517+
AZURE_FUNCTIONS: 'azure_functions',
519518
/** Azure App Service. */
520-
AZURE_APP_SERVICE = 'azure_app_service',
519+
AZURE_APP_SERVICE: 'azure_app_service',
521520
/** Google Cloud Compute Engine (GCE). */
522-
GCP_COMPUTE_ENGINE = 'gcp_compute_engine',
521+
GCP_COMPUTE_ENGINE: 'gcp_compute_engine',
523522
/** Google Cloud Run. */
524-
GCP_CLOUD_RUN = 'gcp_cloud_run',
523+
GCP_CLOUD_RUN: 'gcp_cloud_run',
525524
/** Google Cloud Kubernetes Engine (GKE). */
526-
GCP_KUBERNETES_ENGINE = 'gcp_kubernetes_engine',
525+
GCP_KUBERNETES_ENGINE: 'gcp_kubernetes_engine',
527526
/** Google Cloud Functions (GCF). */
528-
GCP_CLOUD_FUNCTIONS = 'gcp_cloud_functions',
527+
GCP_CLOUD_FUNCTIONS: 'gcp_cloud_functions',
529528
/** Google Cloud App Engine (GAE). */
530-
GCP_APP_ENGINE = 'gcp_app_engine',
531-
}
529+
GCP_APP_ENGINE: 'gcp_app_engine',
530+
} as const
531+
export type CloudPlatformValues = typeof CloudPlatformValues[keyof typeof CloudPlatformValues]
532532

533533

534534

535535

536-
export enum AwsEcsLaunchtypeValues {
536+
export const AwsEcsLaunchtypeValues = {
537537
/** ec2. */
538-
EC2 = 'ec2',
538+
EC2: 'ec2',
539539
/** fargate. */
540-
FARGATE = 'fargate',
541-
}
540+
FARGATE: 'fargate',
541+
} as const
542+
export type AwsEcsLaunchtypeValues = typeof AwsEcsLaunchtypeValues[keyof typeof AwsEcsLaunchtypeValues]
542543

543544

544545

545546

546-
export enum HostArchValues {
547+
export const HostArchValues = {
547548
/** AMD64. */
548-
AMD64 = 'amd64',
549+
AMD64: 'amd64',
549550
/** ARM32. */
550-
ARM32 = 'arm32',
551+
ARM32: 'arm32',
551552
/** ARM64. */
552-
ARM64 = 'arm64',
553+
ARM64: 'arm64',
553554
/** Itanium. */
554-
IA64 = 'ia64',
555+
IA64: 'ia64',
555556
/** 32-bit PowerPC. */
556-
PPC32 = 'ppc32',
557+
PPC32: 'ppc32',
557558
/** 64-bit PowerPC. */
558-
PPC64 = 'ppc64',
559+
PPC64: 'ppc64',
559560
/** 32-bit x86. */
560-
X86 = 'x86',
561-
}
561+
X86: 'x86',
562+
} as const
563+
export type HostArchValues = typeof HostArchValues[keyof typeof HostArchValues]
562564

563565

564566

565567

566-
export enum OsTypeValues {
568+
export const OsTypeValues = {
567569
/** Microsoft Windows. */
568-
WINDOWS = 'windows',
570+
WINDOWS: 'windows',
569571
/** Linux. */
570-
LINUX = 'linux',
572+
LINUX: 'linux',
571573
/** Apple Darwin. */
572-
DARWIN = 'darwin',
574+
DARWIN: 'darwin',
573575
/** FreeBSD. */
574-
FREEBSD = 'freebsd',
576+
FREEBSD: 'freebsd',
575577
/** NetBSD. */
576-
NETBSD = 'netbsd',
578+
NETBSD: 'netbsd',
577579
/** OpenBSD. */
578-
OPENBSD = 'openbsd',
580+
OPENBSD: 'openbsd',
579581
/** DragonFly BSD. */
580-
DRAGONFLYBSD = 'dragonflybsd',
582+
DRAGONFLYBSD: 'dragonflybsd',
581583
/** HP-UX (Hewlett Packard Unix). */
582-
HPUX = 'hpux',
584+
HPUX: 'hpux',
583585
/** AIX (Advanced Interactive eXecutive). */
584-
AIX = 'aix',
586+
AIX: 'aix',
585587
/** Oracle Solaris. */
586-
SOLARIS = 'solaris',
588+
SOLARIS: 'solaris',
587589
/** IBM z/OS. */
588-
Z_OS = 'z_os',
589-
}
590+
Z_OS: 'z_os',
591+
} as const
592+
export type OsTypeValues = typeof OsTypeValues[keyof typeof OsTypeValues]
590593

591594

592595

593596

594-
export enum TelemetrySdkLanguageValues {
597+
export const TelemetrySdkLanguageValues = {
595598
/** cpp. */
596-
CPP = 'cpp',
599+
CPP: 'cpp',
597600
/** dotnet. */
598-
DOTNET = 'dotnet',
601+
DOTNET: 'dotnet',
599602
/** erlang. */
600-
ERLANG = 'erlang',
603+
ERLANG: 'erlang',
601604
/** go. */
602-
GO = 'go',
605+
GO: 'go',
603606
/** java. */
604-
JAVA = 'java',
607+
JAVA: 'java',
605608
/** nodejs. */
606-
NODEJS = 'nodejs',
609+
NODEJS: 'nodejs',
607610
/** php. */
608-
PHP = 'php',
611+
PHP: 'php',
609612
/** python. */
610-
PYTHON = 'python',
613+
PYTHON: 'python',
611614
/** ruby. */
612-
RUBY = 'ruby',
615+
RUBY: 'ruby',
613616
/** webjs. */
614-
WEBJS = 'webjs',
615-
}
617+
WEBJS: 'webjs',
618+
} as const
619+
export type TelemetrySdkLanguageValues = typeof TelemetrySdkLanguageValues[keyof typeof TelemetrySdkLanguageValues]
616620

0 commit comments

Comments
 (0)