Propiedades de la aplicación ARM y datos del contexto de transacciones

Request Metrics incorpora una instrumentación que permite supervisar los flujos de transacciones. Los datos recopilados mediante Request Metrics se pueden enviar a un agente ARM (Application Response Measurement).

Propiedades de la aplicación ARM

Las tablas siguientes muestran las propiedades de las aplicaciones ARM cuando Request Metrics inicializa un agente ARM 4.0.

Tabla 1. Nombres de la propiedad de identidad. La tabla siguiente muestra las propiedades de las aplicaciones ARM cuando Request Metrics inicializa un agente ARM 4.0.
Nombres de la propiedad de identidad Valor
Nombre de célula El nombre de la célula a la que pertenece el servidor.
Versión La versión de WebSphere Application Server.
Tabla 2. Propiedades de la aplicación y valor. La tabla siguiente muestra las propiedades de las aplicaciones ARM cuando Request Metrics inicializa un agente ARM 4.0.
Propiedades de la aplicación Valor
Nombre de la aplicación registrada WebSphere:<tipo_servidor>

El <tipo_servidor> puede ser APPLICATION_SERVER, ONDEMAND_ROUTER o PROXY_SERVER.

Grupo de aplicaciones <nombre_servidor>
Instancia de la aplicación <nombre_nodo>.<nombre_servidor>
El ejemplo de código siguiente muestra cómo WebSphere Application Server crea una aplicación ARM.
String serverType; // el tipo de servidor como APPLICATION_SERVER
String version; // versión de WebSphere
String sCellName; // el nombre de la célula de dMgr
String sAppInstance. // <nombre_nodo_corto>.<nombre_servidor_corto>
String sServerInstance; // el nombre corto del servidor
String sWasName = "WebSphere:" + serverType;
String[] IDNAMES = new String[]{"Cell Name", "Version"};
ArmIdentityProperties appIdentity = txFactory.newArmIdentityProperties(IDNAMES, new String[]{sCellName, 
version}, null);
ArmApplicationDefinition appDef = txFactory.newArmApplicationDefinition( sWasName, appIdentity,  null );
ArmApplication app = txFactory.newArmApplication(appDef, sServerInstance, sAppInstance, null );

Tipos de transacciones ARM

Puede utilizar el siguiente ejemplo de código para crear una instancia de la transacción ARM.
String[] contextNames; // los nombres para los datos de contexto como Port, QueryString, URI, EJBName
String tranIdentityName; // los tipos de transacciones que aparecen en la tabla siguiente como URI, EJB.
String appDef; // definido y creado en el fragmento de código anterior bajo las propiedades de las aplicaciones ARM
String app; // definido y creado en el fragmento de código anterior bajo las propiedades de las aplicaciones ARM
ArmIdentityPropertiesTransaction props = armFactory.newArmIdentityPropertiesTransaction( null, null, 
contextNames, null );   
ArmTransactionDefinition atd = armFactory.newArmTransactionDefinition(appDef, identityName, props, (ArmID)null);
ArmTransaction at = txFactory.newArmTransaction(app, atd );
Las siguientes secciones muestran los tipos de transacciones ARM y sus nombres de contexto correspondientes. Algunos tipos de transacciones no se instrumentan a menos que el nivel de rastreo se establezca en DEBUG. Asimismo, no cada transacción está disponible en todos los tipos de servidores. Todos los tipos de transacciones y nombres de contexto son sensibles a las mayúsculas y minúsculas.

URI (Uniform Resource Identifier)

Este tipo de transacción es el URI (Uniform Resource Identifier) para las peticiones de servlets Y JSP (JavaServer Page). Todos los tipos de transacciones y nombres de contexto siguientes están disponibles en todos los tipos de servidores.

Tabla 3. Tipo de transacción: URI. Todos los tipos de transacciones y nombres de contexto siguientes están disponibles en todos los tipos de servidores.
Tipo de transacción: URI
Nombre de contexto Descripción
Port El puerto TCP/IP donde ha llegado la petición, especificado como una representación de serie de caracteres del valor decimal.

Ejemplo: 9080

QueryString La parte del URI dinámico que contiene los parámetros de búsqueda de la solicitud en el segmento de consulta de la serie de caracteres del URI, excluido el carácter de signo de interrogación (?).

Ejemplo: selection=EJB&lookup=GBL&trans=CMT

URI El URI de petición de entrada del servlet y archivo JSP utilizados.

Ejemplo: /hitcount

Enterprise JavaBeans (EJB)

Este tipo de transacción de EJB y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 4. Tipo de transacción: EJB . Este tipo de transacción de EJB y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: EJB
Nombre de contexto Descripción
EJBName El nombre de la clase EJB totalmente calificado, seguido del nombre de método con un punto (.) para conectarlos. Por ejemplo, com.mypackge.MyEJBClass.mymethod.

Ejemplo: com.ibm.defaultapplication.IncrementBean.create

ApplicationName El nombre de la aplicación J2EE (Java™ 2 Platform, Enterprise Edition) que contiene el enterprise bean.

Ejemplo: DefaultApplication

ModuleName El nombre del módulo J2EE que contiene el enterprise bean.

Ejemplo: Increment.jar

Filtro de servlet

El tipo de transacción de filtro de servlets sólo está disponible en el nivel de rastreo DEBUG. Para los otros niveles, los filtros de servlets no están instrumentados. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 5. Tipo de transacción: Filtro de servlet. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: Filtro de servlet
Nombre de contexto Descripción
FilterName El nombre del filtro de servlet para el servlet.

Ejemplo: ALoginFilter

Java Database Connectivity (JDBC)

El tipo de transacción JDBC sólo está disponible en el nivel de rastreo DEBUG. Para los otros niveles, JDBC es una llamada de bloque. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 6. Tipo de transacción: JDBC. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: JDBC
Nombre de contexto Descripción
ClassName El nombre de interfaz para la llamada JDBC. Este nombre no es el nombre de clase real.

Ejemplo: java.sql.PreparedStatement

MethodName El nombre de método para la llamada a JDBC.

Ejemplo: executeUpdate()

Java EE Connector Architecture (JCA)

El tipo de transacción JCA sólo está disponible en el nivel de rastreo DEBUG. Para los otros niveles, JCA es una llamada de bloque. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 7. Tipo de transacción: JCA. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: JCA
Nombre de contexto Descripción
ClassName El nombre de clase para la llamada JCA.

Ejemplo: javax.resource.spi.ManagedConnection

MethodName El nombre de método para la llamada JCA.

Ejemplo: getConnection(Subject, ConnectionRequestInfo)

Proveedor de servicios Web

El tipo de transacción del proveedor de servicios web es para las solicitudes de servicios web del lado del servidor. Este tipo de transacción y los nombres de contexto Wsdlport y Operation están disponibles en todos los tipos de servidores. Los nombres de contexto Transport, NameSpace, y InputMessage sólo están disponibles en servidores de aplicaciones.

Tabla 8. Tipo de transacción: proveedor de servicios. Este tipo de transacción y los nombres de contexto Wsdlport y Operation están disponibles en todos los tipos de servidores. Los nombres de contexto Transport, NameSpace, y InputMessage sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: proveedor de servicios  
Nombre de contexto Descripción
WsdlPort El nombre de puerto WSDL que está asociado con el servicio web.

Ejemplo: AccountManager

Operación El nombre de operación asociado al servicio web.

Ejemplo: createNewAccount

Transporte El nombre de transporte asociado al servicio web.

Ejemplo: http

NameSpace El espacio de nombres asociado al servicio Web.

Ejemplo: http://accountmanager.mycorp.com

InputMessage El nombre de mensaje de entrada asociado al servicio web.

Ejemplo: createNewAccountRequest

Solicitante de servicios Web

El tipo de transacción del solicitante de servicios web está disponible sólo en el nivel de rastreo DEBUG. Para otros niveles, el solicitante de servicios web es una llamada de bloque. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 9. Tipo de transacción: solicitante de servicios Web. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: solicitante de servicios Web
Nombre de contexto Descripción
WsdlPort El nombre de puerto de lenguaje de descripción de servicios web (WSDL) asociado al servicio web.

Ejemplo: AccountManager

Operación El nombre de operación asociado al servicio web.

Ejemplo: createNewAccount

Transporte El nombre de transporte asociado al servicio web.

Ejemplo: http

Parámetros Los parámetros de la solicitud de servicio web.

Ejemplo: customerName,addressStreet,addressCity,addressState,addressZip

JMS (Java Message Service)

El tipo de transacción JMS sólo es para escenarios de MDB (bean controlado por mensajes) en la mensajería por omisión, incluida la capa SIB (System Integration Bus) y MQ. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 10. Tipo de transacción: JMS. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: JMS
Nombre de contexto Descripción
DestinationName El nombre de la cola de destino o el nombre de tema para JMS (Java™ Message Service).

Ejemplo: MyBusiness.Topic.Space

MessageSelector El selector de mensajes para JMS.
Provider El proveedor hace referencia a la mensajería por omisión, SIB o MQ.

Ejemplo: mensajería por omisión

Envío y recepción de JMS

El tipo de transacción de envío y recepción de JMS sólo está disponible en el nivel de depuración DEBUG. Para otros niveles, el envío y recepción de JMS es una llamada de bloque. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 11. Tipo de transacción: envío y recepción de JMS. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: envío y recepción de JMS
Nombre de contexto Descripción
ClassName El nombre de clase del proveedor JMS que efectúa la llamada.

Ejemplo: com.ibm.ws.sib.api.jms.impl.JmsTopicPublisherImpl

MethodName El nombre de método del proveedor JMS que efectúa la llamada.

Ejemplo: sendMessage

Envío y recepción de SIB (Bus de integración de servicio)

El tipo de transacción de envío y recepción de SIB sólo está disponible en el nivel de depuración DEBUG. Para otros niveles, el envío y recepción de SIB es una llamada de bloque. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 12. Tipo de transacción: envío y recepción de SIB. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: envío y recepción de SIB
Nombre de contexto Descripción
ClassName El nombre de clase de la capa SIB que efectúa la llamada.

Ejemplo: com.ibm.ws.sib.processor.impl.ProducerSessionImpl

MethodName El nombre de método de la capa SIB que efectúa la llamada.

Ejemplo: send

BusName Nombre del bus de integración de servicios en el que se realiza esta llamada.
DestinationName Nombre del destino de integración de servicios en el que se realiza esta llamada.

Bean controlado por mensajes (MDB) SIB

El tipo de transacción de MDB SIB sólo está disponible en los servidores de aplicaciones.

Tabla 13. Tipo de transacción: SIB MDB. El tipo de transacción de MDB SIB sólo está disponible en los servidores de aplicaciones.
Tipo de transacción: MDB SIB.
Nombre de contexto Descripción
BusName Nombre del SIB en el que se encuentra el destino en el que escucha el MDB.
DestinationName Nombre del SIB en el que escucha este MDB.
MessageSelector Selector de mensaje que utiliza este MDB.
MdbDiscriminator Discriminador utilizado por este MDB.
Provider Tipo de proveedor para el que es este MDB.

Ejemplo: mensajería por omisión o SIB

Mediación de SIB

El tipo de transacción de mediación de SIB y los nombres de contexto sólo están disponibles en los servidores de aplicaciones.

Tabla 14. Tipo de transacción: mediación de SIB. El tipo de transacción de mediación de SIB y los nombres de contexto sólo están disponibles en los servidores de aplicaciones.
Tipo de transacción: mediación de SIB
Nombre de contexto Descripción
ClassName El nombre de clase en que se realiza la llamada.
MethodName El nombre de método en que se realiza la llamada.
MediationName El nombre de mediación para el JMS.

Ejemplo: myMediation

BusName El nombre de bus de integración de servicios para JMS.

Ejemplo: thisBusName

DestinationName El nombre de destino para el JMS.

Ejemplo: myMessageQueue

Beans asíncronos

El tipo de transacción de beans asíncronos es para temporizadores, alertas e inicios diferidos de beans asíncronos y las tareas de EE Concurrency no tienen establecido LONGRUNNING_HINT. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 15. Tipo de transacción: beans asíncronos. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: beans asíncronos
Nombre de contexto Descripción
Type El tipo de tarea de los beans asíncronos.

Ejemplo: COMMONJ_TIMER

ClassName El nombre de clase que ejecuta la tarea de los beans asíncronos.

Ejemplo: com.mycorp.MyTaskClass

Java Naming and Directory Interface (JNDI)

El tipo de transacción JNDI sólo está disponible en el nivel de rastreo DEBUG. Para otros niveles de rastreo, las llamadas JNDI no se instrumentarán. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.

Tabla 16. Tipo de transacción: JNDI. Este tipo de transacción y nombres de contexto sólo están disponibles en servidores de aplicaciones.
Tipo de transacción: JNDI
Nombre de contexto Descripción
JNDIName El nombre de búsqueda JNDI.

Ejemplo: ejbJndiName

Portlet

El tipo de transacción de portlet y los nombres de contexto sólo están disponibles en los servidores de aplicaciones.

Tabla 17. Tipo de transacción: Portlet. El tipo de transacción de portlet y los nombres de contexto sólo están disponibles en los servidores de aplicaciones.
Tipo de transacción: portlet
Nombre de contexto Descripción
Method El método que está utilizando actualmente el portlet, que puede ser de acción o visualización.
WindowID El identificador de la ventana que está utilizando actualmente el portlet.
URI (es un nombre de propiedad de contexto de transacción ARM y no debe confundirse con la propiedad URI de transacción ARM explícita que se especifica en las transacciones de servlet de WebSphere, y en concreto no debe confundirse con el filtro de política "EWLM: URI" de Enterprise Workload Manager (EWLM).) La vía de acceso de contexto de la petición de portlet actual.

Correlacionares ARM mediante protocolos HTTP y SOAP

Para las entradas HTTP, WebSphere Application Server comprueba la cabecera HTTP sensible a las mayúsculas y minúsculas “ARM_CORRELATOR” para el correlacionador ARM. El servidor de aplicaciones no permite el flujo de correlacionadores ARM mediante la salida HTTP.

Para la entrada SOAP, WebSphere Application Server comprueba la cabecera SOAP para un elemento, del modo siguiente:
  • elemento ="correlacionador_arm";
  • URI de espacio de nombres = "http://websphere.ibm.com",
  • prefijo = "reqmetrics";
  • URI de actor = "reqmetricsURI";
Para la salida SOAP, WebSphere Application Server crea una cabecera SOAP nueva y pasa la serie del correlacionador ARM como un nodo de texto en la cabecera. Por ejemplo:
  • elemento ="correlacionador_arm";
  • URI de espacio de nombres = "http://websphere.ibm.com",
  • prefijo = "reqmetrics";
  • URI de actor = "reqmetricsURI";
El siguiente es un ejemplo de cabecera SOAP con un correlacionador ARM. Tenga en cuenta que el correlacionador debe pasarse en el formato de serie hexadecimal de la matriz de bytes del correlacionador tanto si se utiliza el protocolo HTTP como el protocolo SOAP.
<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<reqmetrics:arm_correlator soapenv:actor="reqmetricsURI" xmlns:reqmetrics="http://websphere.ibm.com">
37000000000000000000
</reqmetrics:arm_correlator>
</soapenv:Header>

Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rprf_armproperties
File name: rprf_armproperties.html