Entity Object

The Entity object describes an individual entity. You can create a stand-alone entity, or you can stitch an entity into a larget topology via relationships such as hostedOn, or partOf. An entity can include specific metrics.

An entity you create can have one of two functions in your Turbonomic supply chain:

  • Topology Entity

    The entity you create exists in the topology, and displays as a member of the supply chain. For example, assume you want to create a business application, and then create services that are members of that business application. You would crate these as Topology Entities.

  • Proxy Entity

    The entity you create serves as a place-holder in the topology data you are creating. You can assign metrics to this entity, or add relationships to it to make it part of some other entity. But you also specify the matchIdentifiers relationship to map this entity to an entity that already exists in the environment. The match identifier is the IP address of the entity you are mapping to.

    When Turbonomic loads the topology, it moves your metric and relationship data from the topology file into the matched entity. The proxy entity does not appear in the Turbonomic supply chain, but the metric and relationship declarations do appear in the GUI for the matched entity.

The Entity object includes the following properties:

type

Required String

Can be one of:

  • businessApplication: a Business Application entity

  • businessTransaction: a Transaction entity

  • service: a Service entity

  • databaseServer: a Database Server entity

  • application: an Application Component entity

uniqueId

Required String

A unique identifier for the entity. This identifies the entity among all other instances of that type in your topology. Because the ID must be globally unique, you should use naming conventions that express a namespace for this topology that you’re creating.

name

Required String

The display name for the entity. This is not required to be unique, but it is usually convenient to give unique display names.

matchIdentifiers

Optional Object

This object contains the IP address of the entity you want to match, as follows:

{
    "ipAddress" : "11.22.33.44"
}

If you specify matchIdentifiers, then this entity will be a Proxy entity. You specify the IP address of the entity that you want to modify. Then Turbonomic will apply the metrics or the partOf specification from this proxy entity, onto the matching entity.

hostedOn

Optional Object

The entity that is a host, or provider, for this entity. This object contains the following properties:

  • hostEntityType (Required Array of String): An array of possible entity types. The probe starts with the first entity type in the list, and checks for a matching Uuid or IP address. It uses the first one to succeed. This array can contain the strings, container and virtualMachine.

  • hostUuid (Optional String): The unique identifier for the host. This can come be the Uuid you have declared for some other entity in your topology, or you can use the Turbonomic Rest API to get the Uuid of a specific entity in the environment. If you provide a Uuid, you do not need to provide an IP address.

  • ipAddress (Optional String): The IP address of a host entity in your environment. If you provide an IP address, you do not need to provide a Uuid for the entity.

partOf

Required Array of Objects

An array of entities that contain this entity. For example, one business application can contain multiple service and transaction entities. The business application would be the container or parent entity. Also note that your entity can be contained by more thn one parent.

The objects that are members of this array identify the entity type and the Uuid of the parent, as follows:

{
    "entityType": "businessApplication",
    "ipAddress" : "11.22.33.44"
}

The entity type can be one of:

  • businessApplication: a Business Application entity

  • businessTransaction: a Transaction entity

  • service: a Service entity

  • databaseServer: a Database Server entity

  • application: an Application Component entity

metrics

Optional Array of metricsEntry

The list of Metric Entry objects that speify metrics and values for this entity.

See Metrics Entry Object.