Oracle
 sql >> Base de données >  >> RDS >> Oracle

Récupérer l'URL du fournisseur du serveur actuel lors de l'exécution sur weblogic (méthode non obsolète)

Vous pouvez rechercher le runtime JMX qui est le même pour toutes les applications. Pas besoin d'entrer l'adresse, l'utilisateur ou le mot de passe.

1) Recherchez le MBeanServer

InitialContext ctx = new InitialContext();
MBeanServer mBeanServer = (MBeanServer) ctx.lookup("java:comp/env/jmx/runtime");

2) Ensuite, vous devez récupérer le nom du serveur exécutant l'application. Ici, il y a deux façons (peut-être plus).

Le plus simple

String serverName = System.getProperty("weblogic.Name");

Mais je ne sais pas si c'est un moyen fiable.

L'autre façon d'obtenir le nom du serveur consiste à le rechercher dans les attributs du service d'exécution.

ObjectName serviceObjectName = new ObjectName("com.bea:Name=RuntimeService,Type=weblogic.management.mbeanservers.runtime.RuntimeServiceMBean");
String serverName = (String) mBeanServer.getAttribute(serviceObjectName, "ServerName");

3) Nous pouvons maintenant créer le serveur d'exécution ObjectName ...

ObjectName serverRuntime = new ObjectName("com.bea:Name="+serverName+",Type=ServerRuntime");

4) ... et obtenir les attributs dont nous avons besoin

String listenAddress = mBeanServer.getAttribute(serverRuntime, "ListenAddress");
Integer listenPort = mBeanServer.getAttribute(serverRuntime, "ListenPort");

rem :listenAddress est formaté en tant que hostname /IP , vous devez le manipuler pour obtenir uniquement l'IP ou l'hôte

De là, vous pouvez accéder à de nombreuses informations; comme l'adresse du serveur d'administration qui gère le serveur d'exécution, le cluster d'exécution, ... .

Voici une liste que j'obtiens de la console WLST (WL12.2.1), n'a pas testé si nous avons accès à tous les attributs/MBeans.

dr--   ApplicationRuntimes
dr--   AsyncReplicationRuntime
dr--   BatchJobRepositoryRuntime
dr--   ClassLoaderRuntime
dr--   ClusterRuntime
dr--   ConcurrentManagedObjectsRuntime
dr--   ConnectorServiceRuntime
dr--   DefaultExecuteQueueRuntime
dr--   EntityCacheCumulativeRuntime
dr--   EntityCacheCurrentStateRuntime
dr--   EntityCacheHistoricalRuntime
dr--   ExecuteQueueRuntimes
dr--   JDBCServiceRuntime
dr--   JMSRuntime
dr--   JTARuntime
dr--   JVMRuntime
dr--   JoltRuntime
dr--   LibraryRuntimes
dr--   LogBroadcasterRuntime
dr--   LogRuntime
dr--   MANAsyncReplicationRuntime
dr--   MANReplicationRuntime
dr--   MailSessionRuntimes
dr--   MaxThreadsConstraintRuntimes
dr--   MessagingBridgeRuntime
dr--   MessagingBridgeRuntimes
dr--   MinThreadsConstraintRuntimes
dr--   PartitionRuntimes
dr--   PathServiceRuntime
dr--   PathServiceRuntimes
dr--   PersistentStoreRuntimes
dr--   RequestClassRuntimes
dr--   SAFRuntime
dr--   SNMPAgentRuntime
dr--   ServerChannelRuntimes
dr--   ServerLogRuntime
dr--   ServerSecurityRuntime
dr--   ServerServices
dr--   SingleSignOnServicesRuntime
dr--   ThreadPoolRuntime
dr--   TimerRuntime
dr--   WANReplicationRuntime
dr--   WLDFRuntime
dr--   WTCRuntime
dr--   WebServerRuntimes
dr--   WorkManagerRuntimes
dr--   WseeClusterFrontEndRuntime
dr--   WseeWsrmRuntime

-r--   ActivationTime                               
-r--   AdminServer                                  
-r--   AdminServerHost                              
-r--   AdminServerListenPort                        
-r--   AdminServerListenPortSecure                  
-r--   AdministrationPort                           
-r--   AdministrationPortEnabled                    
-r--   AdministrationURL                            
-r--   AsyncReplicationRuntime                      
-r--   ClusterRuntime                               
-r--   CurrentDirectory                             
-rw-   CurrentMachine
-r--   DefaultExecuteQueueRuntime                   
-r--   DefaultURL                                   
-r--   EntityCacheCumulativeRuntime                 
-r--   EntityCacheCurrentStateRuntime               
-r--   EntityCacheHistoricalRuntime                 
-r--   HealthState                                  
-r--   HealthStateJMX                               
-r--   JoltRuntime                                  
-r--   ListenAddress                                
-r--   ListenPort                                   
-r--   ListenPortEnabled                            
-r--   MANAsyncReplicationRuntime                   
-r--   MANReplicationRuntime                        
-r--   MessagingBridgeRuntime                       
-r--   MiddlewareHome                               
-r--   Name                                         
-r--   OpenSocketsCurrentCount                      
-r--   OracleHome                                   
-r--   OverallHealthState                           
-r--   OverallHealthStateJMX                        
-rw-   Parent                                       
-r--   PathServiceRuntime                           
-r--   RestartRequired                              
-r--   RestartsTotalCount                           
-r--   SSLListenAddress                             
-r--   SSLListenPort                                
-r--   SSLListenPortEnabled                         
-r--   ServerClasspath                              
-r--   SocketsOpenedTotalCount                      
-r--   State                                        
-r--   StateVal                                     
-r--   Type                                         
-r--   WANReplicationRuntime                        
-r--   WeblogicHome                                 
-r--   WeblogicVersion                              
-r--   WseeClusterFrontEndRuntime