1. Packages
  2. HashiCorp Consul
  3. API Docs
  4. getServiceHealth
Consul v3.11.2 published on Thursday, Mar 21, 2024 by Pulumi

consul.getServiceHealth

Explore with Pulumi AI

consul logo
Consul v3.11.2 published on Thursday, Mar 21, 2024 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!
    
    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());
    
        }
    }
    
    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.2 published on Thursday, Mar 21, 2024 by Pulumi