Propriétés de l'application AEM et données de contexte de transaction
Request metrics fournit une instrumentation intégrée pour surveiller les flux de transactions. Les données recueillies par request metrics peuvent être envoyées à un agent ARM (Application Response Measurement).
Propriétés d'application ARM
Les tableaux suivants présentent les propriétés d'application ARM lorsque request metrics initialise un agent ARM 4.0.
Noms de propriété d'identité | Valeur |
---|---|
Nom de cellule | Nom de la cellule à laquelle le serveur appartient. |
Version | Version de WebSphere Application Server. |
Propriétés de l'application | Valeur |
---|---|
Nom déposé de l'application | WebSphere :<server_type> Le <type_serveur> peut être APPLICATION_SERVER, ONDEMAND_ROUTER ou PROXY_SERVER. |
Groupe de l'application | <nom_serveur> |
Instance de l'application | <nom_noeud>.<nom_serveur> |
String serverType; // the server type like APPLICATION_SERVER
String version; // WebSphere version
String sCellName; // the cell name of dMgr
String sAppInstance. // <short_node_name>.<short_server_name>
String sServerInstance; // short server name
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 );
Types de transaction ARM
String[] contextNames; // the names for the context data like Port, QueryString, URI, EJBName
String tranIdentityName; // the transaction types shown in the following table like URI, EJB.
String appDef; // defined and created in above code snippet under ARM application properties
String app; // defined and created in above code snippet under ARM application properties
ArmIdentityPropertiesTransaction props = armFactory.newArmIdentityPropertiesTransaction( null, null,
contextNames, null );
ArmTransactionDefinition atd = armFactory.newArmTransactionDefinition(appDef, identityName, props, (ArmID)null);
ArmTransaction at = txFactory.newArmTransaction(app, atd );
- Uniform resource identifier (URI)
- Enterprise JavaBeans (EJB)
- Filtre de servlet
- Java Database Connectivity (JDBC)
- Java EE Connector Architecture (JCA)
- Fournisseur de services Web
- Demandeur de services Web
- Java Message Service (JMS)
- Envoi et réception JMS
- Envoi et réception SIB
- MDB SIB
- Médiation SIB
- Beans asynchrones
- Java Naming and Directory Interface (JNDI)
- Portlet
Uniform resource identifier (URI)
Ce type de transaction est l'identificateur URI (uniform resource identifier) du servlet et des requêtes JSP (JavaServer Page). Tous les types de transaction et noms de contexte suivants sont disponibles dans tous les types de serveurs.
Type de transaction : URI | |
---|---|
Nom de contexte | Description |
Port | Port TCP/IP sur lequel la requête est arrivée, spécifiée
en tant que représentation sous forme de chaîne de la valeur décimale. Exemple : 9080 |
QueryString | Partie de l'URI dynamique qui contient les paramètres
de recherche de la requête du segment de requête de la chaîne d'URI, à l'exclusion
du point d'interrogation (?). . Exemple : selection=EJB&lookup=GBL&trans=CMT |
URI | URI de requête entrant du servlet et du fichier JSP
utilisés. Exemple : /hitcount |
Enterprise JavaBeans (EJB)
Ces types de transaction EJB et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : EJB | |
---|---|
Nom de contexte | Description |
EJBName | Nom de classe EJB qualifié complet, suivi d'un
point (.) et du nom de méthode. Par exemple,
com.mypackge.MyEJBClass.mymethod. Exemple : com.ibm.defaultapplication.IncrementBean.create |
ApplicationName | Nom de l'application Java™ 2 Platform
Enterprise Edition (J2EE) contenant le bean enterprise. Exemple : DefaultApplication |
ModuleName | Nom du module J2EE qui contient le bean enterprise. Exemple : Increment.jar |
Filtre de servlet
Le type de transaction du filtre de servlet n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux, les filtres de servlet ne sont pas instrumentés. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : filtre de servlet | |
---|---|
Nom de contexte | Description |
FilterName | Nom du filtre du servlet. Exemple : ALoginFilter |
Java Database Connectivity (JDBC)
Le type de transaction du filtre de servlet n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux, JDBC est un appel de bloc. Ces type de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : JDBC | |
---|---|
Nom de contexte | Description |
Nom de classe | Nom de l'interface de l'appel JDBC. Ce nom n'est pas
le nom de classe réel. Exemple : java.sql.PreparedStatement |
Nom méthode | Nom de méthode de l'appel JDBC. Exemple : executeUpdate() |
Java EE Connector Architecture (JCA)
Le type de transaction JCA n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux, JCA est un appel de bloc. Ces type de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : JCA | |
---|---|
Nom de contexte | Description |
Nom de classe | Nom de classe de l'appel JCA. Exemple : javax.resource.spi.ManagedConnection |
Nom méthode | Nom de méthode de l'appel JCA. Exemple : getConnection(Subject, ConnectionRequestInfo) |
Fournisseur de services Web
Le type de transaction de fournisseur de services Web s'applique aux requêtes de services Web côté serveur. Ce type de transaction et les noms de contexte Wsdlport et Operation sont disponibles dans tous types de serveur. Les noms de contexte Transport, NameSpace, et InputMessage ne sont disponibles que dans des serveurs d'applications.
Type de transaction : fournisseur de services Web | |
---|---|
Nom de contexte | Description |
WsdlPort | Nom de port WSDL associé au service Web. Exemple : AccountManager |
Opération | Nom d'opération associé au service Web. Exemple : createNewAccount |
Transport | Nom de transport associé au service Web. Exemple : http |
NameSpace | Espace de nom associé au service Web. Exemple : http://accountmanager.mycorp.com |
InputMessage | Message d'entrée associé au service Web. Exemple : createNewAccountRequest |
Demandeur de services Web
Le type de transaction demandeur de services Web n'est disponible qu'au niveau de la trace DEBUG. Pour tous les autres niveaux, demandeur de services Web est un appel de bloc. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : demandeur de services Web | |
---|---|
Nom de contexte | Description |
WsdlPort | Nom de port WSDL (Web Services Description Language)
associé au service Web. Exemple : AccountManager |
Opération | Nom d'opération associé au service Web. Exemple : createNewAccount |
Transport | Nom de transport associé au service Web. Exemple : http |
Paramètres | Paramètres de la requête de service Web. Exemple : customerName,addressStreet,addressCity,addressState,addressZip |
Java Message Service (JMS)
Le type de transaction JMS est réservé aux scénarios de beans gérés par message (MDB) dans la messagerie par défaut, notamment la couche SIB (System Integration Bus) et la file d'attente MQ. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : JMS | |
---|---|
Nom de contexte | Description |
DestinationName | Nom de la file d'attente de destination ou nom de sujet pour le JMS (Java™
Message Service). Exemple : MyBusiness.Topic.Space |
MessageSelector | Sélecteur de message pour JMS. |
Fournisseur | Fournisseur fait référence à la messagerie par défaut, au SIB, ou
à la MQ. Exemple : messagerie par défaut |
Envoi et réception JMS
Le type de transaction envoi et réception JMS n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux, envoi et réception JMS est un appel de bloc. Ces type de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : envoi/réception JMS | |
---|---|
Nom de contexte | Description |
Nom de classe | Nom de classe du fournisseur JMS qui effectue l'appel. Exemple : com.ibm.ws.sib.api.jms.impl.JmsTopicPublisherImpl |
Nom méthode | Nom de méthode du fournisseur JMS qui effectue l'appel. Exemple : sendMessage |
Envoi et réception SIB
Le type de transaction envoi et réception SIB n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux, envoi et réception SIB est un appel de bloc. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : envoi/réception SIB. | |
---|---|
Nom de contexte | Description |
Nom de classe | Nom de classe de la couche SIB qui effectue l'appel. Exemple : com.ibm.ws.sib.processor.impl.ProducerSessionImpl |
Nom méthode | Nom de méthode de la couche SIB qui effectue l'appel. Exemple : send |
BusName | Nom du bus d'intégration des services (SIB, Service Integration Bus) sur lequel cet appel est effectué. |
DestinationName | Nom de la destination d'intégration de service sur laquelle cet appel est effectué. |
Beans gérés par messages (MDB) SIB
Le type de transaction MDB SIB n'est disponible que dans les serveurs d'applications.
Type de transaction : MDB SIB. | |
---|---|
Nom de contexte | Description |
BusName | Nom du SIB sur lequel la destination que le MDB écoute est située. |
DestinationName | Nom du SIB que le MDB écoute. |
MessageSelector | Sélecteur de message qu'utilise ce MDB. |
MdbDiscriminator | Discriminateur qu'utilise ce MDB. |
Fournisseur | Type de fournisseur auquel ce MDB est destiné. Exemple : Messagerie par défaut ou SIB |
Médiation SIB
Les type de transaction de médiation SIB et les noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : médiation SIB | |
---|---|
Nom de contexte | Description |
Nom de classe | Nom de classe dans lequel l'appel est effectué. |
Nom méthode | Nom de méthode dans lequel l'appel est effectué. |
MediationName | Nom de médiation du JMS. Exemple : myMediation |
BusName | Nom du bus d'intégration de services du JMS. Exemple : thisBusName |
DestinationName | Nom de destination du JMS. Exemple : myMessageQueue |
Beans asynchrones
Le type de transaction de bean asynchrone s'applique aux temporisateurs, alertes, lancements différés et tâches concurrentes EE de bean asynchrone pour lesquels la valeur LONGRUNNING_HINT n'est pas définie. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : Beans asynchrones | |
---|---|
Nom de contexte | Description |
Type | Type de tâche Beans asynchrones. Exemple : COMMONJ_TIMER |
Nom de classe | Nom de classe qui exécute la tâche Beans asynchrones. Exemple : com.mycorp.MyTaskClass |
Java Naming and Directory Interface (JNDI)
Le type de transaction JNDI n'est disponible qu'au niveau de la trace DEBUG. Pour les autres niveaux de trace, les appels JNDI ne peuvent pas être instrumentés. Ces types de transaction et noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : JNDI | |
---|---|
Nom de contexte | Description |
JNDIName | Nom de recherche JNDI. Exemple : ejbJndiName |
Portlet
Le type de transaction portlet et les noms de contexte ne sont disponibles que dans les serveurs d'applications.
Type de transaction : portlet | |
---|---|
Nom de contexte | Description |
Méthode | Méthode du portlet actuellement utilisé, qui peut être action ou affichage. |
WindowID | Identificateur de fenêtre du portlet actuellement utilisé. |
URI (il s'agit d'un nom de propriété de contexte de transaction ARM, à ne pas confondre avec la propriété URI des transactions ARM spécifiée sur les transactions du servlet WebSphere, ni avec le filtre de stratégies EWLM (Enterprise Workload Manager) "EWLM : URI".) | Chemin de contexte de la requête de portlet actuelle. |
Corrélateurs ARM via protocoles HTTP et SOAP
Pour le protocole HTTP entrant, WebSphere Application Server vérifie l'en-tête HTTP sensible à la casse “ARM_CORRELATOR” du corrélateur ARM entrant. Le serveur d'applications n'autorise pas le flux de corrélateurs ARM via HTTP sortant.
- élément ="arm_correlator";
- URI espace de nom = "http://websphere.ibm.com",
- préfixe = "reqmetrics";
- URI acteur = "reqmetricsURI";
- élément ="arm_correlator";
- URI espace de nom = "http://websphere.ibm.com",
- préfixe = "reqmetrics";
- URI acteur = "reqmetricsURI";
<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>