Class ServiceSummary

java.lang.Object
software.amazon.awssdk.services.applicationsignals.model.ServiceSummary
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<ServiceSummary.Builder,ServiceSummary>

@Generated("software.amazon.awssdk:codegen") public final class ServiceSummary extends Object implements SdkPojo, Serializable, ToCopyableBuilder<ServiceSummary.Builder,ServiceSummary>

This structure contains information about one of your services that was discovered by Application Signals

See Also:
  • Method Details

    • hasKeyAttributes

      public final boolean hasKeyAttributes()
      For responses, this returns true if the service returned a value for the KeyAttributes property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • keyAttributes

      public final Map<String,String> keyAttributes()

      This is a string-to-string map that help identify the objects discovered by Application Signals. It can include the following fields.

      • Type designates the type of object this is.

      • ResourceType specifies the type of the resource. This field is used only when the value of the Type field is Resource or AWS::Resource.

      • Name specifies the name of the object. This is used only if the value of the Type field is Service, RemoteService, or AWS::Service.

      • Identifier identifies the resource objects of this resource. This is used only if the value of the Type field is Resource or AWS::Resource.

      • Environment specifies the location where this object is hosted, or what it belongs to.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasKeyAttributes() method.

      Returns:
      This is a string-to-string map that help identify the objects discovered by Application Signals. It can include the following fields.

      • Type designates the type of object this is.

      • ResourceType specifies the type of the resource. This field is used only when the value of the Type field is Resource or AWS::Resource.

      • Name specifies the name of the object. This is used only if the value of the Type field is Service, RemoteService, or AWS::Service .

      • Identifier identifies the resource objects of this resource. This is used only if the value of the Type field is Resource or AWS::Resource.

      • Environment specifies the location where this object is hosted, or what it belongs to.

    • hasAttributeMaps

      public final boolean hasAttributeMaps()
      For responses, this returns true if the service returned a value for the AttributeMaps property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • attributeMaps

      public final List<Map<String,String>> attributeMaps()

      This structure contains one or more string-to-string maps that help identify this service. It can include platform attributes, application attributes, and telemetry attributes.

      Platform attributes contain information the service's platform.

      • PlatformType defines the hosted-in platform.

      • EKS.Cluster is the name of the Amazon EKS cluster.

      • K8s.Cluster is the name of the self-hosted Kubernetes cluster.

      • K8s.Namespace is the name of the Kubernetes namespace in either Amazon EKS or Kubernetes clusters.

      • K8s.Workload is the name of the Kubernetes workload in either Amazon EKS or Kubernetes clusters.

      • K8s.Node is the name of the Kubernetes node in either Amazon EKS or Kubernetes clusters.

      • K8s.Pod is the name of the Kubernetes pod in either Amazon EKS or Kubernetes clusters.

      • EC2.AutoScalingGroup is the name of the Amazon EC2 Auto Scaling group.

      • EC2.InstanceId is the ID of the Amazon EC2 instance.

      • Host is the name of the host, for all platform types.

      Application attributes contain information about the application.

      • AWS.Application is the application's name in Amazon Web Services Service Catalog AppRegistry.

      • AWS.Application.ARN is the application's ARN in Amazon Web Services Service Catalog AppRegistry.

      Telemetry attributes contain telemetry information.

      • Telemetry.SDK is the fingerprint of the OpenTelemetry SDK version for instrumented services.

      • Telemetry.Agent is the fingerprint of the agent used to collect and send telemetry data.

      • Telemetry.Source Specifies the point of application where the telemetry was collected or specifies what was used for the source of telemetry data.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasAttributeMaps() method.

      Returns:
      This structure contains one or more string-to-string maps that help identify this service. It can include platform attributes, application attributes, and telemetry attributes.

      Platform attributes contain information the service's platform.

      • PlatformType defines the hosted-in platform.

      • EKS.Cluster is the name of the Amazon EKS cluster.

      • K8s.Cluster is the name of the self-hosted Kubernetes cluster.

      • K8s.Namespace is the name of the Kubernetes namespace in either Amazon EKS or Kubernetes clusters.

      • K8s.Workload is the name of the Kubernetes workload in either Amazon EKS or Kubernetes clusters.

      • K8s.Node is the name of the Kubernetes node in either Amazon EKS or Kubernetes clusters.

      • K8s.Pod is the name of the Kubernetes pod in either Amazon EKS or Kubernetes clusters.

      • EC2.AutoScalingGroup is the name of the Amazon EC2 Auto Scaling group.

      • EC2.InstanceId is the ID of the Amazon EC2 instance.

      • Host is the name of the host, for all platform types.

      Application attributes contain information about the application.

      • AWS.Application is the application's name in Amazon Web Services Service Catalog AppRegistry.

      • AWS.Application.ARN is the application's ARN in Amazon Web Services Service Catalog AppRegistry.

      Telemetry attributes contain telemetry information.

      • Telemetry.SDK is the fingerprint of the OpenTelemetry SDK version for instrumented services.

      • Telemetry.Agent is the fingerprint of the agent used to collect and send telemetry data.

      • Telemetry.Source Specifies the point of application where the telemetry was collected or specifies what was used for the source of telemetry data.

    • hasMetricReferences

      public final boolean hasMetricReferences()
      For responses, this returns true if the service returned a value for the MetricReferences property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • metricReferences

      public final List<MetricReference> metricReferences()

      An array of structures that each contain information about one metric associated with this service.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasMetricReferences() method.

      Returns:
      An array of structures that each contain information about one metric associated with this service.
    • toBuilder

      public ServiceSummary.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<ServiceSummary.Builder,ServiceSummary>
      Returns:
      a builder for type T
    • builder

      public static ServiceSummary.Builder builder()
    • serializableBuilderClass

      public static Class<? extends ServiceSummary.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.