1. Packages
  2. HashiCorp Consul
  3. API Docs
  4. getServiceHealth
Consul v3.11.0 published on Monday, Nov 20, 2023 by Pulumi

consul.getServiceHealth

Explore with Pulumi AI

consul logo
Consul v3.11.0 published on Monday, Nov 20, 2023 by Pulumi

    consul.getServiceHealth can be used to get the list of the instances that are currently healthy, according to their associated health-checks. The result includes the list of service instances, the node associated to each instance and its health-checks.

    This resource is likely to change as frequently as the health-checks are being updated, you should expect different results in a frequent basis.

    Example Usage

    Coming soon!

    Coming soon!

    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.consul.ConsulFunctions;
    import com.pulumi.consul.inputs.GetServiceHealthArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var vaultServiceHealth = ConsulFunctions.getServiceHealth(GetServiceHealthArgs.builder()
                .passing(true)
                .service("vault")
                .build());
    
        }
    }
    

    Coming soon!

    Coming soon!

    variables:
      vaultServiceHealth:
        fn::invoke:
          Function: consul:getServiceHealth
          Arguments:
            passing: true
            service: vault
    

    Using getServiceHealth

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getServiceHealth(args: GetServiceHealthArgs, opts?: InvokeOptions): Promise<GetServiceHealthResult>
    function getServiceHealthOutput(args: GetServiceHealthOutputArgs, opts?: InvokeOptions): Output<GetServiceHealthResult>
    def get_service_health(datacenter: Optional[str] = None,
                           filter: Optional[str] = None,
                           name: Optional[str] = None,
                           near: Optional[str] = None,
                           node_meta: Optional[Mapping[str, str]] = None,
                           passing: Optional[bool] = None,
                           tag: Optional[str] = None,
                           wait_for: Optional[str] = None,
                           opts: Optional[InvokeOptions] = None) -> GetServiceHealthResult
    def get_service_health_output(datacenter: Optional[pulumi.Input[str]] = None,
                           filter: Optional[pulumi.Input[str]] = None,
                           name: Optional[pulumi.Input[str]] = None,
                           near: Optional[pulumi.Input[str]] = None,
                           node_meta: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                           passing: Optional[pulumi.Input[bool]] = None,
                           tag: Optional[pulumi.Input[str]] = None,
                           wait_for: Optional[pulumi.Input[str]] = None,
                           opts: Optional[InvokeOptions] = None) -> Output[GetServiceHealthResult]
    func LookupServiceHealth(ctx *Context, args *LookupServiceHealthArgs, opts ...InvokeOption) (*LookupServiceHealthResult, error)
    func LookupServiceHealthOutput(ctx *Context, args *LookupServiceHealthOutputArgs, opts ...InvokeOption) LookupServiceHealthResultOutput

    > Note: This function is named LookupServiceHealth in the Go SDK.

    public static class GetServiceHealth 
    {
        public static Task<GetServiceHealthResult> InvokeAsync(GetServiceHealthArgs args, InvokeOptions? opts = null)
        public static Output<GetServiceHealthResult> Invoke(GetServiceHealthInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetServiceHealthResult> getServiceHealth(GetServiceHealthArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: consul:index/getServiceHealth:getServiceHealth
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string

    The service name to select.

    Datacenter string

    The Consul datacenter to query.

    Filter string

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    Near string

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    NodeMeta Dictionary<string, string>

    Filter the results to nodes with the specified key/value pairs.

    Passing bool

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    Tag string

    A single tag that can be used to filter the list to return based on a single matching tag.

    WaitFor string
    Name string

    The service name to select.

    Datacenter string

    The Consul datacenter to query.

    Filter string

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    Near string

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    NodeMeta map[string]string

    Filter the results to nodes with the specified key/value pairs.

    Passing bool

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    Tag string

    A single tag that can be used to filter the list to return based on a single matching tag.

    WaitFor string
    name String

    The service name to select.

    datacenter String

    The Consul datacenter to query.

    filter String

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    near String

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    nodeMeta Map<String,String>

    Filter the results to nodes with the specified key/value pairs.

    passing Boolean

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    tag String

    A single tag that can be used to filter the list to return based on a single matching tag.

    waitFor String
    name string

    The service name to select.

    datacenter string

    The Consul datacenter to query.

    filter string

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    near string

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    nodeMeta {[key: string]: string}

    Filter the results to nodes with the specified key/value pairs.

    passing boolean

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    tag string

    A single tag that can be used to filter the list to return based on a single matching tag.

    waitFor string
    name str

    The service name to select.

    datacenter str

    The Consul datacenter to query.

    filter str

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    near str

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    node_meta Mapping[str, str]

    Filter the results to nodes with the specified key/value pairs.

    passing bool

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    tag str

    A single tag that can be used to filter the list to return based on a single matching tag.

    wait_for str
    name String

    The service name to select.

    datacenter String

    The Consul datacenter to query.

    filter String

    A filter expression to refine the list of results, see https://www.consul.io/api-docs/features/filtering and https://www.consul.io/api-docs/health#filtering-2.

    near String

    Specifies a node name to sort the node list in ascending order based on the estimated round trip time from that node.

    nodeMeta Map<String>

    Filter the results to nodes with the specified key/value pairs.

    passing Boolean

    Whether to return only nodes with all checks in the passing state. Defaults to true.

    tag String

    A single tag that can be used to filter the list to return based on a single matching tag.

    waitFor String

    getServiceHealth Result

    The following output properties are available:

    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The name of this health-check.

    Results List<GetServiceHealthResult>

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    Datacenter string

    The datacenter in which the node is running.

    Filter string
    Near string

    The node to which the result must be sorted to.

    NodeMeta Dictionary<string, string>

    The list of metadata to filter the nodes.

    Passing bool

    Whether to return only nodes with all checks in the passing state.

    Tag string

    The name of the tag used to filter the list.

    WaitFor string
    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The name of this health-check.

    Results []GetServiceHealthResult

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    Datacenter string

    The datacenter in which the node is running.

    Filter string
    Near string

    The node to which the result must be sorted to.

    NodeMeta map[string]string

    The list of metadata to filter the nodes.

    Passing bool

    Whether to return only nodes with all checks in the passing state.

    Tag string

    The name of the tag used to filter the list.

    WaitFor string
    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The name of this health-check.

    results List<GetServiceHealthResult>

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    datacenter String

    The datacenter in which the node is running.

    filter String
    near String

    The node to which the result must be sorted to.

    nodeMeta Map<String,String>

    The list of metadata to filter the nodes.

    passing Boolean

    Whether to return only nodes with all checks in the passing state.

    tag String

    The name of the tag used to filter the list.

    waitFor String
    id string

    The provider-assigned unique ID for this managed resource.

    name string

    The name of this health-check.

    results GetServiceHealthResult[]

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    datacenter string

    The datacenter in which the node is running.

    filter string
    near string

    The node to which the result must be sorted to.

    nodeMeta {[key: string]: string}

    The list of metadata to filter the nodes.

    passing boolean

    Whether to return only nodes with all checks in the passing state.

    tag string

    The name of the tag used to filter the list.

    waitFor string
    id str

    The provider-assigned unique ID for this managed resource.

    name str

    The name of this health-check.

    results Sequence[GetServiceHealthResult]

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    datacenter str

    The datacenter in which the node is running.

    filter str
    near str

    The node to which the result must be sorted to.

    node_meta Mapping[str, str]

    The list of metadata to filter the nodes.

    passing bool

    Whether to return only nodes with all checks in the passing state.

    tag str

    The name of the tag used to filter the list.

    wait_for str
    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The name of this health-check.

    results List<Property Map>

    A list of entries and details about each endpoint advertising a service. Each element in the list has three attributes: node, service and checks. The list of the attributes of each one is detailed below.

    datacenter String

    The datacenter in which the node is running.

    filter String
    near String

    The node to which the result must be sorted to.

    nodeMeta Map<String>

    The list of metadata to filter the nodes.

    passing Boolean

    Whether to return only nodes with all checks in the passing state.

    tag String

    The name of the tag used to filter the list.

    waitFor String

    Supporting Types

    GetServiceHealthResult

    checks List<Property Map>
    nodes List<Property Map>

    The name of the node associated with this health-check.

    services List<Property Map>

    GetServiceHealthResultCheck

    Id string

    The ID of this health-check.

    Name string

    The service name to select.

    Node string

    The name of the node associated with this health-check.

    Notes string

    A human readable description of the current state of the health-check.

    Output string

    The output of the health-check.

    ServiceId string

    The ID of the service associated to this health-check.

    ServiceName string

    The name of the service associated with this health-check.

    ServiceTags List<string>

    The list of tags associated with this health-check.

    Status string

    The status of this health-check.

    Id string

    The ID of this health-check.

    Name string

    The service name to select.

    Node string

    The name of the node associated with this health-check.

    Notes string

    A human readable description of the current state of the health-check.

    Output string

    The output of the health-check.

    ServiceId string

    The ID of the service associated to this health-check.

    ServiceName string

    The name of the service associated with this health-check.

    ServiceTags []string

    The list of tags associated with this health-check.

    Status string

    The status of this health-check.

    id String

    The ID of this health-check.

    name String

    The service name to select.

    node String

    The name of the node associated with this health-check.

    notes String

    A human readable description of the current state of the health-check.

    output String

    The output of the health-check.

    serviceId String

    The ID of the service associated to this health-check.

    serviceName String

    The name of the service associated with this health-check.

    serviceTags List<String>

    The list of tags associated with this health-check.

    status String

    The status of this health-check.

    id string

    The ID of this health-check.

    name string

    The service name to select.

    node string

    The name of the node associated with this health-check.

    notes string

    A human readable description of the current state of the health-check.

    output string

    The output of the health-check.

    serviceId string

    The ID of the service associated to this health-check.

    serviceName string

    The name of the service associated with this health-check.

    serviceTags string[]

    The list of tags associated with this health-check.

    status string

    The status of this health-check.

    id str

    The ID of this health-check.

    name str

    The service name to select.

    node str

    The name of the node associated with this health-check.

    notes str

    A human readable description of the current state of the health-check.

    output str

    The output of the health-check.

    service_id str

    The ID of the service associated to this health-check.

    service_name str

    The name of the service associated with this health-check.

    service_tags Sequence[str]

    The list of tags associated with this health-check.

    status str

    The status of this health-check.

    id String

    The ID of this health-check.

    name String

    The service name to select.

    node String

    The name of the node associated with this health-check.

    notes String

    A human readable description of the current state of the health-check.

    output String

    The output of the health-check.

    serviceId String

    The ID of the service associated to this health-check.

    serviceName String

    The name of the service associated with this health-check.

    serviceTags List<String>

    The list of tags associated with this health-check.

    status String

    The status of this health-check.

    GetServiceHealthResultNode

    Address string

    The address of this instance.

    Datacenter string

    The Consul datacenter to query.

    Id string

    The ID of this health-check.

    Meta Dictionary<string, string>

    Service metadata tag information, if any.

    Name string

    The service name to select.

    TaggedAddresses Dictionary<string, string>
    Address string

    The address of this instance.

    Datacenter string

    The Consul datacenter to query.

    Id string

    The ID of this health-check.

    Meta map[string]string

    Service metadata tag information, if any.

    Name string

    The service name to select.

    TaggedAddresses map[string]string
    address String

    The address of this instance.

    datacenter String

    The Consul datacenter to query.

    id String

    The ID of this health-check.

    meta Map<String,String>

    Service metadata tag information, if any.

    name String

    The service name to select.

    taggedAddresses Map<String,String>
    address string

    The address of this instance.

    datacenter string

    The Consul datacenter to query.

    id string

    The ID of this health-check.

    meta {[key: string]: string}

    Service metadata tag information, if any.

    name string

    The service name to select.

    taggedAddresses {[key: string]: string}
    address str

    The address of this instance.

    datacenter str

    The Consul datacenter to query.

    id str

    The ID of this health-check.

    meta Mapping[str, str]

    Service metadata tag information, if any.

    name str

    The service name to select.

    tagged_addresses Mapping[str, str]
    address String

    The address of this instance.

    datacenter String

    The Consul datacenter to query.

    id String

    The ID of this health-check.

    meta Map<String>

    Service metadata tag information, if any.

    name String

    The service name to select.

    taggedAddresses Map<String>

    GetServiceHealthResultService

    Address string

    The address of this instance.

    Id string

    The ID of this health-check.

    Meta Dictionary<string, string>

    Service metadata tag information, if any.

    Name string

    The service name to select.

    Port int

    The port of this instance.

    Tags List<string>

    The list of tags associated with this instance.

    Address string

    The address of this instance.

    Id string

    The ID of this health-check.

    Meta map[string]string

    Service metadata tag information, if any.

    Name string

    The service name to select.

    Port int

    The port of this instance.

    Tags []string

    The list of tags associated with this instance.

    address String

    The address of this instance.

    id String

    The ID of this health-check.

    meta Map<String,String>

    Service metadata tag information, if any.

    name String

    The service name to select.

    port Integer

    The port of this instance.

    tags List<String>

    The list of tags associated with this instance.

    address string

    The address of this instance.

    id string

    The ID of this health-check.

    meta {[key: string]: string}

    Service metadata tag information, if any.

    name string

    The service name to select.

    port number

    The port of this instance.

    tags string[]

    The list of tags associated with this instance.

    address str

    The address of this instance.

    id str

    The ID of this health-check.

    meta Mapping[str, str]

    Service metadata tag information, if any.

    name str

    The service name to select.

    port int

    The port of this instance.

    tags Sequence[str]

    The list of tags associated with this instance.

    address String

    The address of this instance.

    id String

    The ID of this health-check.

    meta Map<String>

    Service metadata tag information, if any.

    name String

    The service name to select.

    port Number

    The port of this instance.

    tags List<String>

    The list of tags associated with this instance.

    Package Details

    Repository
    HashiCorp Consul pulumi/pulumi-consul
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the consul Terraform Provider.

    consul logo
    Consul v3.11.0 published on Monday, Nov 20, 2023 by Pulumi