on 07-05-2010 2:26 AM
How do I determine the number of jobs currently executing and pending via AdminTools.
I can determine overall using si_schedule_status, but would like to obtain info for each of the job servers or each server group.
a) from the job server
FROM CI_SYSTEMOBJECTS
WHERE si_name='CrystalReportsJobServer-1'
and SI_KIND='Server'
and SI_SERVER_KIND='jobserver'
b) job servers attached to a report server group.
FROM CI_SYSTEMOBJECTS
WHERE si_name='CrystalReportsJobServerGROUP-1''
and SI_KIND='Server'?
something like this?
TIA,
JM
Need version info.
Also, it'll be good to indicate which metric - for example, is it being displayed in the CMC?
Sincerely,
Ted Ueda
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Env = BOE XI 3.0
I found the info for jobs via IJobServerAdmin. But it seems to be deprecated. What should I use instead?
Metrics I am looking for :
Found these 2 in IJobServerAdmin
1) getCurrentJobs,
2) getMaxJobs
Trying to search for
3) names of jobs running /server
4) number of pending jobs/server
5) number of failed jobs/server
TIA,
JM
Server Metrics interface was changed with XI 3.x, to allow for increasing number of metrics and multi-language support. So given IServer server:
serverMetrics = server.getMetrics();
for(Iterator iServiceInterfaceName
= serverMetrics.getServiceInterfaceNames().iterator();
iServiceInterfaceName.hasNext() 😉 {
String serviceInterfaceName;
IMLDescriptions mlDescriptions;
IMetrics metrics;
serviceInterfaceName = (String) iServiceInterfaceName.next();
mlDescriptions = metricDescriptions.getMetricDescriptions(serviceInterfaceName);
metrics = serverMetrics.getMetrics(serviceInterfaceName);
for(Iterator imetric = metrics.iterator(); imetric.hasNext(); ) {
IMetric metric;
String metricName;
Object metricValue;
String localizedMetricName;
IPropertyRenderTemplate propertyRenderTemplate;
metric = (IMetric) imetric.next();
metricName = metric.getName();
metricValue = metric.getValue();
propertyRenderTemplate = mlDescriptions.getPropertyRenderTemplate(metricName);
// Do not display hidden values
if(ValueFormat.HIDDEN.equals(propertyRenderTemplate.getValueFormat())) {
continue;
}
localizedMetricName = propertyRenderTemplate.getLabel(Locale.ENGLISH);
outputString = metricValueToString(metricValue, propertyRenderTemplate);
}
}
where
/*
* Convert Metric Value to String
*/
String metricValueToString (Object value, IPropertyRenderTemplate propertyRenderTemplate) {
ValueFormat valueFormat;
if (value == null)
return null;
valueFormat = propertyRenderTemplate.getValueFormat();
if (ValueFormat.INTEGER.equals(valueFormat)) {
return value.toString();
} else if (ValueFormat.FLOAT.equals(valueFormat)
|| ValueFormat.PERCENT.equals(valueFormat)
|| ValueFormat.SHIFTSIZE_KB.equals(valueFormat)
|| ValueFormat.SHIFTSIZE_MB.equals(valueFormat)
|| ValueFormat.SHIFTSIZE_GB.equals(valueFormat)) {
double val;
double scale = 1.0;
if(value instanceof String) {
val = Double.parseDouble((String) value);
} else {
val = ((Number) value).doubleValue();
}
if(ValueFormat.PERCENT.equals(valueFormat)) {
scale = 100.0;
} else if(ValueFormat.SHIFTSIZE_KB.equals(valueFormat)) {
scale = 1024.0;
} else if(ValueFormat.SHIFTSIZE_MB.equals(valueFormat)) {
scale = 1024.0 * 1024.0;
} else if(ValueFormat.SHIFTSIZE_GB.equals(valueFormat)) {
scale = 1024.0 * 1024.0 * 1024.0;
}
return "" + (val/scale);
} else if (ValueFormat.DATETIME.equals(valueFormat)) {
return value.toString();
} else if (ValueFormat.PROPBAG.equals(valueFormat)) {
PropertyBag propertyBag;
if(value instanceof PropertyBag) {
propertyBag = (PropertyBag) value;
} else {
WireOb3Unpacker unpacker;
propertyBag = new PropertyBag();
unpacker = new WireOb3Unpacker();
unpacker.initialize(value.toString());
propertyBag.unpack(unpacker);
}
return propertyBagToHtml(propertyBag);
} else if (ValueFormat.STRING_MAP.equals(valueFormat)) {
return value.toString();
} else if (ValueFormat.BOOLEAN.equals(valueFormat)) {
return value.toString();
} else {
return value.toString();
}
}
Hope this helps.
Sincerely,
Ted Ueda
User | Count |
---|---|
89 | |
10 | |
9 | |
9 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.