Service
The Service resource lets you manage AWS ServiceDiscovery Services for discovering and connecting to your application resources.
Minimal Example
Section titled “Minimal Example”Create a basic service with required properties and a common optional property for DNS configuration.
import AWS from "alchemy/aws/control";
const basicService = await AWS.ServiceDiscovery.Service("basicService", { name: "myService", type: "HTTP", namespaceId: "ns-123456", dnsConfig: { namespaceId: "ns-123456", routingPolicy: "MULTIVALUE", dnsRecords: [ { type: "A", ttl: 60 } ] }});
Advanced Configuration
Section titled “Advanced Configuration”Configure a service with health check settings and custom attributes for enhanced monitoring.
const advancedService = await AWS.ServiceDiscovery.Service("advancedService", { name: "advancedService", type: "HTTP", namespaceId: "ns-123456", healthCheckConfig: { type: "HTTP", resourcePath: "/health", failureThreshold: 3 }, serviceAttributes: { "customAttr1": "value1", "customAttr2": "value2" }});
Service with Custom Health Check
Section titled “Service with Custom Health Check”Create a service that specifies a custom health check configuration to monitor application health.
const customHealthCheckService = await AWS.ServiceDiscovery.Service("customHealthCheckService", { name: "customHealthService", type: "HTTP", namespaceId: "ns-123456", healthCheckCustomConfig: { failureThreshold: 2, healthyThreshold: 3 }, dnsConfig: { namespaceId: "ns-123456", routingPolicy: "WEIGHTED", dnsRecords: [ { type: "A", ttl: 60 } ] }});
Service with Tags
Section titled “Service with Tags”Create a service and add tags for better resource organization and management.
const taggedService = await AWS.ServiceDiscovery.Service("taggedService", { name: "taggedService", type: "HTTP", namespaceId: "ns-123456", tags: [ { key: "Environment", value: "Production" }, { key: "Team", value: "Engineering" } ]});