DMI service method reference

Methods and data structures of DMIService enable you to integrate NAM with enterprise solutions such as dashboards, portals, and intranets.

To understand how DMI works, see DMI. Note that metrics available in data views may be different from those used in predefined reports.

Parameters are case-sensitive.

getApplications

Method getApplications returns a list of applications as an array of arrays of Strings.

public String[][] getApplications()

The nested array describes an application:

  • [0] : Internal identifier of an application.
  • [1] : User-readable name of the application. Used for presentation in DMI.

getCurrentTime

Method getCurrentTime returns the time stamp in the form of the number of milliseconds since January 1, 1970.

public long getCurrentTime(String appId, String viewId, String resolution)

appId (type string) - Application ID as returned by getApplications().
viewId (type string) - Data view ID as returned by getDataViews().
resolution (type string) - Data resolution ID as returned by getResolutions().

getDataSources

Method getDataSources returns a list of data servers as an array of arrays of Strings.

public String[][] getDataSources(String appId, String viewId)

The nested array describes a data source:

  • [0] : Internal identifier of a data source.
  • [1] : User-readable name of the data source. Used for presentation in DMI.

appId (type string) - Application ID as returned by getApplications().
viewId (type string) - Data view ID as returned by getDataViews().

getDataViews

Method getDataViews returns a list of data views as an array of arrays of Strings.

public String[][] getDataViews(String appId)

The nested array describes a data view:

  • [0]: Internal identifier of a data view.
  • [1]: User-readable name of the data view. Used for presentation in DMI.

appId (type string) - Application ID as returned by getApplications()

getDimensions

Method getDimensions returns a list of dimensions as an array of arrays of Strings.

public String[][] getDimensions(String appId, String viewId, String resolution)

The nested array describes a dimension:

  • [0]: Internal identifier of a dimension (filter criterion).
  • [1]: User-readable name of a dimension. Used for presentation in DMI.
  • [2]: Unit of a dimension. This field is empty because dimensions do not have units.
  • [3]: Type of a dimension. For example, STRING.

appId (type string) - Application ID, as returned by getApplications().
viewId (type string) - Data view ID, as returned by getDataViews().
resolution (type string) - Data resolution ID, as returned by getResolutions().

getDimensionValues

Method getDimensionValues returns a list of dimension values as an array of Strings.

public String[] getDimensionValues(String appId, String viewId, String dimId, String dataSourceId, Integer quantity, String filter)

The values can be used as parts of filter expressions in data retrieval method getDMIData .

appId (type string) - Application ID, as returned by getApplications().
viewId (type string) - Data view ID, as returned by getDataViews().
dimId (type string) - Dimension ID, as returned by getDimensions().
dataSourceId (type string) - Data source ID, as returned by getDataSources() or null. quantity (type integer) - Maximum number of data rows in the returned table. If more values are available in DMI, only quantity will be returned. If quantity is null or <=0, then all values of the dimension will be returned. Note that this list may be very long.
filter (type string) - Filter expression to narrow dimension value selection. You can use wildcard characters “?” and “*” and combine filter expressions with the pipe character “|” interpreted as logical OR.

getDMIData

Method getDMIData returns an adlex.delta.ws.DMIData object. Note that it is an actual data retrieval method.

Syntax

Note
  • The difference between getDMIData and getDMIData2 is that the latter method returns an object that contains GUI labels and units of measure for returned data.
  • The difference between getDMIData2 and getDMIData3 is that the latter method returns an object that contains IDs of the column renderers.

public adlex.delta.ws.DMIData getDMIData(String appId, String viewId, String dataSourceId, String[] dimensionIds, String[] metricIds, String[][] dimFilters, String[][] metricFilters, String[][] sort, Integer top, String resolution, String timePeriod, Integer numberOfPeriods, Long timeBegin, Long timeEnd, Long timeout)

Parameter Type Description
appId String Application ID, as returned by getApplications() .
viewId String Data view ID, as returned by getDataViews() .
dataSourceId String Dimension ID, as returned by getDataSources() or null .
dimensionIds String Dimension IDs, as returned by getDimensions() .
metricIds String Metric IDs, as returned by getMetrics() .
dimFilters array of String s Array of dimension filters. The array structure is as follows:
  • [0] : dimension ID, as returned by getDimensions()
  • [1] : as per description of filter in the table above
  • [2] : filter negation trigger, if it is present and contains the value “NOT ” or “1 ”.
metricFilters array of String s Array of metric filters. The array structure is as follows:
  • [0] : metric ID, as returned by getMetrics()
  • [1] : operator
  • [2] : value
  • [3] : the filter is applied to results, if it is present and contains the value “RESULT ” or “1
sort array of String s Result sort criteria. The nested array describes filter:
  • [0] : metric or dimension identifier
  • [1] : sort order. Available orders are: “ASC ” or null for ascending order, “DESC ” for descending order.
In the current version, only the first subarray is taken into consideration.
top Integer Number of returned table rows. If top is set to 0, all rows will be returned. If top is set to null or <=0, only first 1000 rows will be returned.
resolution String Data resolution ID, as returned by getResolutions()
timePeriod String Time period covered by the report, as one of the following values:
  • p : 1 period (monitoring interval, dependent on the report server settings)
  • d : 1 day
  • w : 1 week
  • m : 1 month
  • T : today (since midnight)
  • 1P : last period
  • 1H : last hour
  • 1D : last day
  • 7D : last 7 days
  • 30D : last 30 days
  • 3MO : last 3 months
  • 12MO : last 12 months
  • FW : the full week
  • FM : the full month
  • WTD : week to date
  • MTD : month to date
  • QTD : quarter to date
  • YTD : year to date
numberOfPeriods Integer Number of periods; if it is set and timeBegin is null, then timePeriod has to be set.
timeBegin Long Data coverage begin time, expressed in milliseconds elapsed since January 1, 1970; if it is set, then timePeriod and numberOfPeriods are ignored.
timeEnd Long Data coverage begin time, expressed in milliseconds elapsed since January 1, 1970; if it is null, then time of the last processed performance data batch is taken.
timeOut Long Timeout value in milliseconds to retrieve data; if timeout <=0, then default DMI timeout value for queries will be applied.

adlex.delta.ws.DMIData

text
 public class DMIData implements java.io.Serializable {
    String[] columnHeaders;
    String[][] formattedData;
    Double[][] rawData;
    Boolean timeout;
    Long TimeoutValue;
    DMIServiceError [] dmiServiceError;
    Long timeBegin;
    Long timeEnd;
}

where:

columnHeaders

A table of dimension IDs and metrics IDs. Note that in some cases DMI can limit list of metrics and dimensions depending on a data view logic.

formattedData

A two-dimensional table of formatted data returned by DMI.

rawData

A two-dimensional table of data returned in the numerical form. Most metrics and some dimensions are numbers (such as time). If something does not have a numeric representation, it is represented as null .

timeout

A boolean value indicating whether time out occurred.

timeoutValue

A timeout threshold value.

dmiServiceError

A table of errors, messages, and warnings returned by DMI. Each position describes the nature of a problem.

timeBegin

The actual begin time taken by the server.

timeEnd

The actual end time taken by the server.

dmiServiceError

text
 public class DMIServiceError {
    String [] errorDescriptions;   
    protected String [] infoDescriptions;    
    protected String [] warningDescriptions;
    boolean error;
    boolean info;
    boolean warning;
}
  • errorDescriptions : A table of error descriptions; it contains values only if error is set to true .
  • warningDescriptions : A table of warning descriptions; it contains values only if warning is set to true .
  • infoDescriptions : A table of info descriptions; it contains values only if info is set to true .
  • error : Indicates the occurrence of a DMI error.
  • warning : Indicates the occurrence of a DMI warning.
  • info : Indicates the occurrence of a DMI info message.

getDMIData2

Method getDMIData2 returns an adlex.delta.ws.DMIData object. Note that it is an actual data retrieval method.

Syntax

Note
  • The difference between getDMIData and getDMIData2 is that the latter method returns an object that contains GUI labels and units of measure for returned data.
  • The difference between getDMIData2 and getDMIData3 is that the latter method returns an object that contains IDs of the column renderers.

public adlex.delta.ws.DMIData2 getDMIData2(String appId, String viewId, String dataSourceId, String[] dimensionIds, String[] metricIds, String[][] dimFilters, String[][] metricFilters, String[][] sort, Integer top, String resolution, String timePeriod, Integer numberOfPeriods, Long timeBegin, Long timeEnd, Long timeout)

Parameter Type Description
appId String Application ID, as returned by getApplications() .
viewId String Data view ID, as returned by getDataViews() .
dataSourceId String Dimension ID, as returned by getDataSources() or null .
dimensionIds String Dimension IDs, as returned by getDimensions() .
metricIds String Metric IDs, as returned by getMetrics() .
dimFilters array of String s Array of dimension filters. The array structure is as follows:
  • [0] : dimension ID, as returned by getDimensions()
  • [1] : as per description of filter in the table above
  • [2] : filter negation trigger, if it is present and contains the value “NOT ” or “1 ”.
metricFilters array of String s Array of metric filters. The array structure is as follows:
  • [0] : metric ID, as returned by getMetrics()
  • [1] : operator
  • [2] : value
  • [3] : the filter is applied to results, if it is present and contains the value “RESULT ” or “1
sort array of String s Result sort criteria. The nested array describes filter:
  • [0] - metric or dimension identifier
  • [1] - sort order. Available orders are: “ASC ” or null for ascending order, “DESC ” for descending order.
In the current version, only the first subarray is taken into consideration.
top Integer Number of returned table rows. If top is set to 0, all rows will be returned. If top is set to null or <=0, only first 1000 rows will be returned.
resolution String Data resolution ID, as returned by getResolutions()
timePeriod String Time period covered by the report, as one of the following values:
  • p : 1 period (monitoring interval, dependent on the report server settings)
  • d : 1 day
  • w : 1 week
  • m : 1 month
  • T : today (since midnight)
  • 1P : last period
  • 1H : last hour
  • 1D : last day
  • 7D : last 7 days
  • 30D : last 30 days
  • 3MO : last 3 months
  • 12MO : last 12 months
  • FW : the full week
  • FM : the full month
  • WTD : week to date
  • MTD : month to date
  • QTD : quarter to date
  • YTD : year to date
numberOfPeriods Integer Number of periods; if it is set and timeBegin is null, then timePeriod has to be set.
timeBegin Long Data coverage begin time, expressed in milliseconds elapsed since January 1, 1970; if it is set, then timePeriod and numberOfPeriods are ignored.
timeEnd Long Data coverage begin time, expressed in milliseconds elapsed since January 1, 1970; if it is null, then time of the last processed performance data batch is taken.
timeOut Long Timeout value in milliseconds to retrieve data; if timeout <=0, then default DMI timeout value for queries is applied.

adlex.delta.ws.DMIData2

text
 public class DMIData2 implements java.io.Serializable {
    String[] columnHeaders;
    String[] columnUnit;
    String columnHeaderName;
    String[][] formattedData;
    Double[][] rawData;
    Boolean timeout;
    Long TimeoutValue;
    DMIServiceError [] dmiServiceError;
    Long timeBegin;
    Long timeEnd;
}

where:

columnHeaders

A table of dimension and metrics internal IDs. Note that in some cases DMI can limit the list of metrics and dimensions, depending on the data view logic.

columnUnit

A table of units of measure for returned dimensions and metrics.

columnHeaderNames

A table of dimension names and metric names, as they appear in DMI reports on the screen. Note that in some cases DMI can limit the list of metrics and dimensions, depending on data view logic.

formattedData

A two-dimensional table of formatted data returned by DMI.

rawData

A two-dimensional table of data returned in the numerical form. Most metrics and some dimensions are numbers (such as time). If something does not have a numeric representation, it is represented as null .

timeout

A boolean value indicating whether a timeout occurred.

timeoutValue

A timeout threshold value.

dmiServiceError

A table of of errors, messages, and warnings returned by DMI. Each position describes the nature of a problem.

timeBegin

The actual begin time taken by the server.

timeEnd

The actual end time taken by the server.

dmiServiceError

java
 public class DMIServiceError {
    String [] errorDescriptions;   
    protected String [] infoDescriptions;    
    protected String [] warningDescriptions;
    boolean error;
    boolean info;
    boolean warning;
}
  • errorDescriptions: A table of error descriptions; it contains values only if error is set to true .
  • warningDescriptions: A table of warning descriptions; it contains values only if warning is set to true .
  • infoDescriptions: A table of info descriptions; it contains values only if info is set to true .
  • error: Indicates the occurrence of a DMI error.
  • warning: Indicates the occurrence of a DMI warning.
  • info: Indicates the occurrence of a DMI info message.

getDMIData3

Method getDMIData3 is an extension of getDMIData3 .

Syntax

Note
  • The difference between getDMIData and getDMIData2 is that the latter method returns an object that contains GUI labels and units of measure for returned data.

  • The difference between getDMIData2 and getDMIData3 is that the latter method returns an object that contains IDs of the column renderers.

public adlex.delta.ws.DMIData3 getDMIData3(String appId, String viewId, String dataSourceId, String[] dimensionIds, String[] metricIds, String[][] dimFilters, String[][] metricFilters, String[][] sort, Integer top, String resolution, String timePeriod, Integer numberOfPeriods, Long timeBegin, Long timeEnd, Long timeout)

Parameter Type Description
appId String Application ID, as returned by getApplications() .
viewId String Data view ID, as returned by getDataViews() .
dataSourceId String Dimension ID, as returned by getDataSources() or null .
dimensionIds String Dimension IDs, as returned by getDimensions() .
metricIds String Metric IDs, as returned by getMetrics() .
dimFilters array of String s
  • [0] : dimension ID, as returned by getDimensions()
  • [1] : as per description of filter in the table above
  • [2] : filter negation trigger, if it is present and contains the value “NOT ” or “1 ”.
metricFilters array of String s
  • [1] : operator
  • [2] : value
  • [3] : the filter is applied to results, if it is present and contains the value “RESULT ” or “1
sort array of String s
  • [1] - sort order. Available orders are: “ASC ” or null for ascending order, “DESC ” for descending order.
In the current version, only the first subarray is taken into consideration.
top Integer
resolution String Data resolution ID, as returned by getResolutions()
timePeriod String
  • d : 1 day
  • w : 1 week
  • m : 1 month
  • T : today (since midnight)
  • 1P : last period
  • 1H : last hour
  • 1D : last day
  • 7D : last 7 days
  • 30D : last 30 days
  • 3MO : last 3 months
  • 12MO : last 12 months
  • FW : the full week
  • FM : the full month
  • WTD : week to date
  • MTD : month to date
  • QTD : quarter to date
  • YTD : year to date
numberOfPeriods Integer Number of periods; if it is set and timeBegin is null, then timePeriod has to be set.
timeBegin Long
timeEnd Long
timeOut Long

adlex.delta.ws.DMIData3

java
 public class DMIData3 implements java.io.Serializable {
    String[] columnHeaders;
    String[] columnUnit;
    String[] columnHeaderName;
    String[] columnRendererId;
    String[][] formattedData;
    Double[][] rawData;
    Boolean timeout;
    Long TimeoutValue;
    DMIServiceError [] dmiServiceError;
    Long timeBegin;
    Long timeEnd;
}

where:

columnHeaders

A table of dimension and metrics internal IDs. Note that in some cases DMI can limit the list of metrics and dimensions, depending on the data view logic.

columnUnit

A table of units of measure for returned dimensions and metrics.

columnHeaderNames

A table of dimension names and metric names, as they appear in DMI reports on the screen. Note that in some cases DMI can limit the list of metrics and dimensions, depending on data view logic.

columnRendererId

A table of renderer identifiers for returned dimensions and metrics.

formattedData

A two-dimensional table of formatted data returned by DMI.

rawData

A two-dimensional table of data returned in the numerical form. Most metrics and some dimensions are numbers (such as time). If something does not have a numeric representation, it is represented as null .

timeout

A boolean value indicating whether a timeout occurred.

timeoutValue

A timeout threshold value.

dmiServiceError

A table of of errors, messages, and warnings returned by DMI. Each position describes the nature of a problem.

timeBegin

The actual begin time taken by the server.

timeEnd

The actual end time taken by the server.

dmiServiceError

java
 public class DMIServiceError {
    String [] errorDescriptions;   
    protected String [] infoDescriptions;    
    protected String [] warningDescriptions;
    boolean error;
    boolean info;
    boolean warning;
}
  • errorDescriptions: A table of error descriptions; it contains values only if error is set to true .
  • warningDescriptions: A table of warning descriptions; it contains values only if warning is set to true .
  • infoDescriptions: A table of info descriptions; it contains values only if info is set to true .
  • error: Indicates the occurrence of a DMI error.
  • warning: Indicates the occurrence of a DMI warning.
  • info: Indicates the occurrence of a DMI info message.

getLastSampleTime

The method getLastSampleTime returns a time stamp of the last performance data batch processed by the report server, in milliseconds elapsed since January 1, 1970.

public long getLastSampleTime(String appId, String viewId, String resolution)

appId (type string) - Application ID, as returned by getApplications().
viewId (type string) - Data view ID, as returned by getDataViews().
resolution (type string) - Data resolution ID, as returned by getResolutions().

getMetrics

The method getMetrics returns a list of metrics as an array of arrays of Strings.

public String[][] getMetrics(String appId, String viewId, String resolution)

The nested array describes a metric:

  • [0]: Internal identifier of a metric.
  • [1]: User-readable name of a metric. Used for presentation in DMI.
  • [2]: Unit of a metric. For example, B or %.
  • [3]: Type of a metric. For example, BYTE or PERCENT.

appId (type string) - Application ID, as returned by getApplications().
viewId (type string) - Data view ID, as returned by getDataViews().
resolution (type string) - Data resolution ID, as returned by getResolutions().

getResolutions

The method getResolutions returns a list of identifiers of available resolutions as an array of String s.

public String[] getResolutions(String appId, String viewId)

Resolution IDs are identical to those used for definitions in dmi_dataview-*.properties files.

appId (type string) - Application ID, as returned by getApplications().
viewId (type string) - Data view ID, as returned by getDataViews().

getServerUUID

The method getServerUUID returns the Universal Unique Identifier (UUID) of the report server.

public String getServerUUID()