//
// Copyright (c) ZeroC, Inc. All rights reserved.
//
//
// Ice version 3.7.11
//
//
//
// Generated from file `Metrics.ice'
//
// Warning: do not edit this file.
//
//
//
export namespace IceMX
{
/**
* A dictionary of strings to integers.
*/
class StringIntDict extends Map
{
}
class StringIntDictHelper
{
static write(outs:Ice.OutputStream, value:StringIntDict):void;
static read(ins:Ice.InputStream):StringIntDict;
}
/**
* The base class for metrics. A metrics object represents a
* collection of measurements associated to a given a system.
*/
class Metrics extends Ice.Value
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number);
/**
* The metrics identifier.
*/
id:string;
/**
* The total number of objects observed by this metrics. This includes
* the number of currently observed objects and the number of objects
* observed in the past.
*/
total:Ice.Long;
/**
* The number of objects currently observed by this metrics.
*/
current:number;
/**
* The sum of the lifetime of each observed objects. This does not
* include the lifetime of objects which are currently observed,
* only the objects observed in the past.
*/
totalLifetime:Ice.Long;
/**
* The number of failures observed.
*/
failures:number;
}
/**
* A structure to keep track of failures associated with a given
* metrics.
*/
class MetricsFailures
{
constructor(id?:string, failures?:StringIntDict);
clone():MetricsFailures;
equals(rhs:any):boolean;
id:string;
failures:StringIntDict;
static write(outs:Ice.OutputStream, value:MetricsFailures):void;
static read(ins:Ice.InputStream):MetricsFailures;
}
/**
* A sequence of {@link MetricsFailures}.
*/
type MetricsFailuresSeq = MetricsFailures[];
class MetricsFailuresSeqHelper
{
static write(outs:Ice.OutputStream, value:MetricsFailuresSeq):void;
static read(ins:Ice.InputStream):MetricsFailuresSeq;
}
/**
* A metrics map is a sequence of metrics. We use a sequence here
* instead of a map because the ID of the metrics is already included
* in the Metrics class and using sequences of metrics objects is more
* efficient than using dictionaries since lookup is not necessary.
*/
type MetricsMap = IceMX.Metrics[];
class MetricsMapHelper
{
static write(outs:Ice.OutputStream, value:MetricsMap):void;
static read(ins:Ice.InputStream):MetricsMap;
}
/**
* A metrics view is a dictionary of metrics map. The key of the
* dictionary is the name of the metrics map.
*/
class MetricsView extends Map
{
}
class MetricsViewHelper
{
static write(outs:Ice.OutputStream, value:MetricsView):void;
static read(ins:Ice.InputStream):MetricsView;
}
/**
* Raised if a metrics view cannot be found.
*/
class UnknownMetricsView extends Ice.UserException
{
}
abstract class MetricsAdminPrx extends Ice.ObjectPrx
{
/**
* Get the names of enabled and disabled metrics.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
getMetricsViewNames(context?:Map):Ice.AsyncResult<[Ice.StringSeq, Ice.StringSeq]>;
/**
* Enables a metrics view.
* @param name The metrics view name.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
enableMetricsView(name:string, context?:Map):Ice.AsyncResult;
/**
* Disable a metrics view.
* @param name The metrics view name.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
disableMetricsView(name:string, context?:Map):Ice.AsyncResult;
/**
* Get the metrics objects for the given metrics view. This
* returns a dictionary of metric maps for each metrics class
* configured with the view. The timestamp allows the client to
* compute averages which are not dependent of the invocation
* latency for this operation.
* @param view The name of the metrics view.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
getMetricsView(view:string, context?:Map):Ice.AsyncResult<[MetricsView, Ice.Long]>;
/**
* Get the metrics failures associated with the given view and map.
* @param view The name of the metrics view.
* @param map The name of the metrics map.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
getMapMetricsFailures(view:string, map:string, context?:Map):Ice.AsyncResult;
/**
* Get the metrics failure associated for the given metrics.
* @param view The name of the metrics view.
* @param map The name of the metrics map.
* @param id The ID of the metrics.
* @param context The Context map to send with the invocation.
* @return The asynchronous result object for the invocation.
*/
getMetricsFailures(view:string, map:string, id:string, context?:Map):Ice.AsyncResult;
/**
* Downcasts a proxy without confirming the target object's type via a remote invocation.
* @param prx The target proxy.
* @return A proxy with the requested type.
*/
static uncheckedCast(prx:Ice.ObjectPrx, facet?:string):MetricsAdminPrx;
/**
* Downcasts a proxy after confirming the target object's type via a remote invocation.
* @param prx The target proxy.
* @param facet A facet name.
* @param context The context map for the invocation.
* @return A proxy with the requested type and facet, or nil if the target proxy is nil or the target
* object does not support the requested type.
*/
static checkedCast(prx:Ice.ObjectPrx, facet?:string, contex?:Map):Ice.AsyncResult;
}
abstract class MetricsAdmin extends Ice.Object
{
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract getMetricsViewNames(current:Ice.Current):PromiseLike<[Ice.StringSeq, Ice.StringSeq]>|[Ice.StringSeq, Ice.StringSeq];
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract enableMetricsView(name:string, current:Ice.Current):PromiseLike|void;
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract disableMetricsView(name:string, current:Ice.Current):PromiseLike|void;
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract getMetricsView(view:string, current:Ice.Current):PromiseLike<[MetricsView, Ice.Long]>|[MetricsView, Ice.Long];
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract getMapMetricsFailures(view:string, map:string, current:Ice.Current):PromiseLike|MetricsFailuresSeq;
/**
* The metrics administrative facet interface. This interface allows
* remote administrative clients to access metrics of an application
* that enabled the Ice administrative facility and configured some
* metrics views.
* @param current The Current object for the invocation.
* @return The result or a promise like object that will be resolved with the result of the invocation.
*/
abstract getMetricsFailures(view:string, map:string, id:string, current:Ice.Current):PromiseLike|MetricsFailures;
/**
* Obtains the Slice type ID of this type.
* @return The return value is always "::IceMX::MetricsAdmin".
*/
static ice_staticId():string;
}
/**
* Provides information on the number of threads currently in use and
* their activity.
*/
class ThreadMetrics extends Metrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param inUseForIO The number of threads which are currently performing socket read or writes.
* @param inUseForUser The number of threads which are currently calling user code (servant dispatch, AMI callbacks, etc).
* @param inUseForOther The number of threads which are currently performing other activities.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, inUseForIO?:number, inUseForUser?:number, inUseForOther?:number);
/**
* The number of threads which are currently performing socket
* read or writes.
*/
inUseForIO:number;
/**
* The number of threads which are currently calling user code
* (servant dispatch, AMI callbacks, etc).
*/
inUseForUser:number;
/**
* The number of threads which are currently performing other
* activities. These are all other that are not counted with
* {@link #inUseForUser} or {@link #inUseForIO}, such as DNS
* lookups, garbage collection).
*/
inUseForOther:number;
}
/**
* Provides information on servant dispatch.
*/
class DispatchMetrics extends Metrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param userException The number of dispatch that failed with a user exception.
* @param size The size of the dispatch.
* @param replySize The size of the dispatch reply.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, userException?:number, size?:Ice.Long, replySize?:Ice.Long);
/**
* The number of dispatch that failed with a user exception.
*/
userException:number;
/**
* The size of the dispatch. This corresponds to the size of the
* marshalled input parameters.
*/
size:Ice.Long;
/**
* The size of the dispatch reply. This corresponds to the size of
* the marshalled output and return parameters.
*/
replySize:Ice.Long;
}
/**
* Provides information on child invocations. A child invocation is
* either remote (sent over an Ice connection) or collocated. An
* invocation can have multiple child invocation if it is
* retried. Child invocation metrics are embedded within
* {@link InvocationMetrics}.
*/
class ChildInvocationMetrics extends Metrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param size The size of the invocation.
* @param replySize The size of the invocation reply.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, size?:Ice.Long, replySize?:Ice.Long);
/**
* The size of the invocation. This corresponds to the size of the
* marshalled input parameters.
*/
size:Ice.Long;
/**
* The size of the invocation reply. This corresponds to the size
* of the marshalled output and return parameters.
*/
replySize:Ice.Long;
}
/**
* Provides information on invocations that are collocated. Collocated
* metrics are embedded within {@link InvocationMetrics}.
*/
class CollocatedMetrics extends ChildInvocationMetrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param size The size of the invocation.
* @param replySize The size of the invocation reply.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, size?:Ice.Long, replySize?:Ice.Long);
}
/**
* Provides information on invocations that are specifically sent over
* Ice connections. Remote metrics are embedded within {@link InvocationMetrics}.
*/
class RemoteMetrics extends ChildInvocationMetrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param size The size of the invocation.
* @param replySize The size of the invocation reply.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, size?:Ice.Long, replySize?:Ice.Long);
}
/**
* Provide measurements for proxy invocations. Proxy invocations can
* either be sent over the wire or be collocated.
*/
class InvocationMetrics extends Metrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param retry The number of retries for the invocation(s).
* @param userException The number of invocations that failed with a user exception.
* @param remotes The remote invocation metrics map.
* @param collocated The collocated invocation metrics map.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, retry?:number, userException?:number, remotes?:MetricsMap, collocated?:MetricsMap);
/**
* The number of retries for the invocation(s).
*/
retry:number;
/**
* The number of invocations that failed with a user exception.
*/
userException:number;
/**
* The remote invocation metrics map.
* @see RemoteMetrics
*/
remotes:MetricsMap;
/**
* The collocated invocation metrics map.
* @see CollocatedMetrics
*/
collocated:MetricsMap;
}
/**
* Provides information on the data sent and received over Ice
* connections.
*/
class ConnectionMetrics extends Metrics
{
/**
* One-shot constructor to initialize all data members.
* @param id The metrics identifier.
* @param total The total number of objects observed by this metrics.
* @param current The number of objects currently observed by this metrics.
* @param totalLifetime The sum of the lifetime of each observed objects.
* @param failures The number of failures observed.
* @param receivedBytes The number of bytes received by the connection.
* @param sentBytes The number of bytes sent by the connection.
*/
constructor(id?:string, total?:Ice.Long, current?:number, totalLifetime?:Ice.Long, failures?:number, receivedBytes?:Ice.Long, sentBytes?:Ice.Long);
/**
* The number of bytes received by the connection.
*/
receivedBytes:Ice.Long;
/**
* The number of bytes sent by the connection.
*/
sentBytes:Ice.Long;
}
}