Eigenschaften und Transaktionskontextdaten für ARM-Anwendungen
Request Metrics stellt integrierte Instrumente für die Überwachung von Transaktionsabläufen bereit. Die von Request Metrics erfassten Daten können an einen unterstützen ARM-Agenten (Application Response Measurement) gesendet werden.
ARM-Anwendungseigenschaften
Die folgenden Tabellen enthalten die ARM-Anwendungseigenschaften, die verwendet werden, wenn Request Metrics einen ARM-Agenten der Version 4.0 initialisiert.
Namen der Identitätseigenschaften | Wert |
---|---|
Zellenname | Der Name der Zelle, zu der der Server gehört. |
Version | Die Version von WebSphere Application Server. |
Anwendungseigenschaften | Wert |
---|---|
Registrierter Anwendungsname | WebSphere:<Servertyp> Die gültigen Werte für <Servertyp> sind APPLICATION_SERVER, ONDEMAND_ROUTER oder PROXY_SERVER. |
Anwendungsgruppe | <Servername> |
Anwendungsinstanz | <Knotenname>.<Servername> |
String serverType; // Der Servertyp, z. B. APPLICATION_SERVER
String version; // WebSphere-Version
String sCellName; // Zellenname des DMGR
String sAppInstance. // <Kurzname_des_Knotens>.<Kurzname_des_Servers>
String sServerInstance; // Kurzname des Servers
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 );
ARM-Transaktionstypen
String[] contextNames; // Namen für Kontextdaten, z. B. Port, QueryString, URI, EJBName
String tranIdentityName; // Die in der folgenden Tabelle gezeigten Transaktionstypen, z. B. URI, EJB
String appDef; // Im vorherigen Code-Snippet unter ARM-Anwendungseigenschaften definiert und erstellt
String app; // Im vorherigen Code-Snippet unter ARM-Anwendungseigenschaften definiert und erstellt
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)
- Servletfilter
- Java Database Connectivity (JDBC)
- Java EE Connector Architecture (JCA)
- Web-Service-Provider
- Web-Service-Anforderer
- Java Message Service (JMS)
- Senden und Empfangen über JMS
- Senden und Empfangen über den Service Integration Bus (SIB)
- SIB-MDB
- Vermittlung über SIB
- Asynchrone Beans
- Java Naming and Directory Interface (JNDI)
- Portlet
Uniform Resource Identifier (URI)
Dieser Transaktionstyp ist der Uniform Resource Identifier (URI) für Servlet- und JSP-Anforderungen. Die folgenden Transaktionstypen und Kontextnamen sind in allen Servertypen verfügbar.
Transaktionstyp: URI | |
---|---|
Kontextname | Beschreibung |
Port | Der TCP/IP-Port, an dem die Anforderung ankommt, angegeben mit einer Zeichenfolgedarstellung des Dezimalwerts.
Beispiel: 9080 |
QueryString | Der Teil des dynamischen URI, der die Suchparameter der
Anforderung im Abfragesegment der URI-Zeichenfolge enthält, einschließlich
des Fragezeichens (?). Beispiel: selection=EJB&lookup=GBL&trans=CMT |
URI | Der eingehende Anforderungs-URI der verwendeten Servlet- bzw. JSP-Datei.
Beispiel: /hitcount |
Enterprise JavaBeans (EJB)
Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: EJB | |
---|---|
Kontextname | Beschreibung |
EJBName | Der vollständig qualifizierte Name der EJB-Klasse, gefolgt
vom Methodennamen mit einem Punkt (.) dazwischen, z. B. com.mypackge.MyEJBClass.mymethod. Beispiel: com.ibm.defaultapplication.IncrementBean.create |
ApplicationName | Der Name der J2EE-Anwendung (Java™ 2 Platform, Enterprise Edition), die die Enterprise-Bean enthält.
Beispiel: DefaultApplication |
ModuleName | er Name des J2EE-Moduls, das die Enterprise-Bean enthält.
Beispiel: Increment.jar |
Servletfilter
Der Transaktionstyp Servletfilter ist nur auf der Tracestufe DEBUG verfügbar. Für die anderen Stufen werden keine Servletfilter instrumentiert. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Servletfilter | |
---|---|
Kontextname | Beschreibung |
FilterName | Der Name des Servletfilter für das Servlet. Beispiel: ALoginFilter |
Java Database Connectivity (JDBC)
Der Transaktionstyp JDBC ist nur auf der Tracestufe DEBUG verfügbar. Für die anderen Stufen ist JDBC ein Blockaufruf. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: JDBC | |
---|---|
Kontextname | Beschreibung |
ClassName | Der Name der Schnittstelle für den JDBC-Aufruf. Dieser Name ist nicht der Name der eigentlichen Klasse.
Beispiel: java.sql.PreparedStatement |
MethodName | Der Methodenname für den JDBC-Aufruf. Beispiel: executeUpdate() |
Java EE Connector Architecture (JCA)
Dieser Transaktionstyp ist nur auf der Tracestufe DEBUG verfügbar. Für die anderen Stufen ist JCA ein Blockaufruf. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: JCA | |
---|---|
Kontextname | Beschreibung |
ClassName | Der Klassenname für den JCA-Aufruf. Beispiel: javax.resource.spi.ManagedConnection |
MethodName | Der Methodenname für den JCA-Aufruf. Beispiel: getConnection(Subject, ConnectionRequestInfo) |
Web-Service-Provider
Der Transaktionstyp "Web-Service-Provider" ist für serverseitige Web-Service-Anforderungen bestimmt. Dieser Transaktionstyp und die Kontextnamen Wsdlport und Operation sind in allen Servertypen verfügbar. Die Kontextnamen Transport, NameSpace und InputMessage sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Web-Service-Provider | |
---|---|
Kontextname | Beschreibung |
WsdlPort | Der Name des WSDL-Ports, der dem Web-Service zugeordnet ist.
Beispiel: AccountManager |
Operation | Der Operationsname, der dem Web-Service zugeordnet ist. Beispiel: createNewAccount |
Transport | Der Transportname, der dem Web-Service zugeordnet ist. Beispiel: http |
NameSpace | Der Namespace, der dem Web-Service zugeordnet ist. Beispiel: http://accountmanager.mycorp.com |
InputMessage | Der Eingabenachrichtenname, der dem Web-Service zugeordnet ist.
Beispiel: createNewAccountRequest |
Web-Service-Anforderer
Der Transaktionstyp "Web-Service-Anforderer" ist nur auf der Tracestufe DEBUG verfügbar. Für die anderen Stufen ist Web-Service-Anforderer ein Blockaufruf. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Web-Service-Anforderer | |
---|---|
Kontextname | Beschreibung |
WsdlPort | Der Name des WSDL-Ports, der dem Web-Service zugeordnet ist.
Beispiel: AccountManager |
Operation | Der Operationsname, der dem Web-Service zugeordnet ist. Beispiel: createNewAccount |
Transport | Der Transportname, der dem Web-Service zugeordnet ist. Beispiel: http |
Parameter | Die Parameter für die Web-Service-Anforderung. Beispiel: customerName,addressStreet,addressCity,addressState,addressZip |
Java Message Service (JMS)
Der Transaktionstyp JMS ist nur für MDB-Szenarien im Standard-Messaging, einschließlich System Integration Bus (SIB) und MQ bestimmt. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: JMS | |
---|---|
Kontextname | Beschreibung |
DestinationName | Der Name der Zielwarteschlange bzw. des Zieltopic für Java™ Message Service (JMS). Beispiel: MyBusiness.Topic.Space |
MessageSelector | Der Nachrichtenselektor für JMS. |
Provider | Gültige Providerwerte sind Default Messaging, SIB und
MQ. Beispiel: Default Messaging |
Senden und Empfangen über JMS
Dieser Transaktionstyp ist nur auf der Tracestufe DEBUG verfügbar. Für alle anderen Stufen ist das Senden und Empfangen über JMS ein Blockaufruf. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Senden/Empfangen über JMS | |
---|---|
Kontextname | Beschreibung |
ClassName | Der Name der Klasse im JMS-Provider, die den Aufruf absetzt. Beispiel: com.ibm.ws.sib.api.jms.impl.JmsTopicPublisherImpl |
MethodName | Der Name der Methode im JMS-Provider, die den Aufruf absetzt. Beispiel: sendMessage |
Senden und Empfangen über den Service Integration Bus (SIB)
Dieser Transaktionstyp ist nur auf der Tracestufe DEBUG verfügbar. Für alle anderen Stufen ist das Senden und Empfangen über SIB ein Blockaufruf. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Senden/Empfangen über SIB | |
---|---|
Kontextname | Beschreibung |
ClassName | Der Name der Klasse in der SIB-Schicht, die den Aufruf absetzt. Beispiel: com.ibm.ws.sib.processor.impl.ProducerSessionImpl |
MethodName | Der Name der Methode in der SIB-Schicht, die den Aufruf absetzt. Beispiel: send |
BusName | Der Name des Service Integration Bus, für den dieser Aufruf abgesetzt wird. |
DestinationName | Der Name des SIB-Ziels, für das dieser Aufruf abgesetzt wird. |
SIB-MDB
Der Transaktionstyp "SIB-MDB" ist nur in Anwendungsservern verfügbar.
Transaktionstyp: SIB-MDB. | |
---|---|
Kontextname | Beschreibung |
BusName | Der Name des SIB, in dem sich das Ziel, an dem die MDB empfangsbereit ist, befindet. |
DestinationName | Der Name des SIB, für den diese MDB empfangsbereit ist. |
MessageSelector | Der von dieser MDB verwendete Nachrichtenselektor. |
MdbDiscriminator | Der von dieser MDB verwendete Diskriminator. |
Provider | Der Providertyp, für den diese MDB bestimmt ist. Beispiel: Default Messaging oder SIB |
Vermittlung über SIB
Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Vermittlung über SIB | |
---|---|
Kontextname | Beschreibung |
ClassName | Der Name der Klasse, in der der Aufruf abgesetzt wird. |
MethodName | Der Name der Methode, in der der Aufruf abgesetzt wird. |
MediationName | Der Mediationsname für JMS. Beispiel: myMediation |
BusName | Der Name des Service Integration Bus (SIB) für JMS. Beispiel: thisBusName |
DestinationName | Der Zielname für JMS. Beispiel: myMessageQueue |
Asynchrone Beans
Der Transaktionstyp "Asynchrone Beans" ist für Zeitgeber, Alerts, verzögerte Starts und EE Concurrency-Tasks für asynchrone Beans bestimmt, für die LONGRUNNING_HINT nicht festgelegt ist. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Asynchrone Beans | |
---|---|
Kontextname | Beschreibung |
Typ | Der Typ der asynchronen Bean-Task. Beispiel: COMMONJ_TIMER |
ClassName | Der Name der Klasse, die die asynchrone Bean-Task ausführt.
Beispiel: com.mycorp.MyTaskClass |
Java Naming and Directory Interface (JNDI)
Der Transaktionstyp JNDI ist nur auf der Tracestufe DEBUG verfügbar. Für die anderen Tracestufen werden keine JNDI-Aufrufe instrumentiert. Dieser Transaktionstyp und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: JNDI | |
---|---|
Kontextname | Beschreibung |
JNDIName | Der JNDI-Lookup-Name.
Beispiel: ejbJndiName |
Portlet
Dieser Transaktionstyp "Portlet" und die Kontextnamen sind nur in Anwendungsservern verfügbar.
Transaktionstyp: Portlet | |
---|---|
Kontextname | Beschreibung |
Methode | Die Methode des derzeit verwendeten Portlets. Die gültigen Werte sind "action" und "render". |
Fenster-ID | Die Fenster-ID des derzeit verwendeten Portlets. |
URI (Dies ist der Name einer ARM-Transaktionskontexteigenschaft und darf nicht mit der expliziten URI-Eigenschaft für ARM-Transaktionen, die in WebSphere-Servlettransaktionen angegeben ist, und insbesondere nicht mit dem EWLM-Richtlinienfilter (Enterprise Workload Manager) "EWLM: URI" verwechselt werden.) | Der Kontextpfad der aktuellen Portletanforderung. |
ARM-Korrelatoren über die Protokolle HTTP und SOAP
Bei eingehenden HTTP-Anforderungen prüft WebSphere Application Server die Groß-/Kleinschreibung des HTTP-Headers “ARM_CORRELATOR” für den eingehenden ARM-Korrelator. Der Anwendungsserver lässt den Fluss von ARM-Korrelatoren über abgehende HTTP-Anforderungen nicht zu.
- element ="arm_correlator";
- namespace URI = "http://websphere.ibm.com",
- prefix = "reqmetrics";
- actor URI = "reqmetricsURI";
- element ="arm_correlator";
- namespace URI = "http://websphere.ibm.com",
- prefix = "reqmetrics";
- actor URI = "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>