WebLogic application server discovery

  • Release version: Yokohama
  • Updated January 30, 2025
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of WebLogic application server discovery

    The WebLogic application server discovery feature in ServiceNow automatically detects and updates CMDB records for Oracle or BEA WebLogic application servers running on Windows or Linux systems. This enables accurate tracking and management of WebLogic servers and their web applications within your CMDB.

    Show full answer Show less

    Requirements

    • Windows: PowerShell must be enabled on the MID Server. WebLogic Administration Server instances started via NodeManager require the -Dweblogic.RootDirectory=<path> parameter defined at startup. The Windows credential used must have read access to the config.xml file.
    • Linux: Discovery relies on Bourne shell commands (find, cat, dirname). WebLogic AdminServer instances started via NodeManager must include the -Dweblogic.RootDirectory=<path> parameter visible through the ps command. The SSH user must have passwordless sudo access configured in sudoers to run the /bin/sh /tmp/snc--findcat.sh script, which is essential for gathering WebLogic configuration data.

    Credentials and Configuration

    • Applicable credentials include Windows credentials, SSH credentials, and applicative credentials.
    • Discovery uses classifiers, patterns, and probes to identify WebLogic servers. Key probes include:
      • Windows - WebLogic - Get web.xml
      • Windows - WebLogic - Find config.xml
      • Linux - WebLogic - Find config.xml
    • For new WebLogic instances, probes start inactive on the classifier; discovery uses patterns, so ensure the correct horizontal pattern probe is added to the classifier for effective detection.

    Data Collected

    • On Windows, discovery collects WebLogic server name, version, domain, TCP ports from config.xml and running processes, and web application details such as name, document base, description, servlet class/name, and TCP ports.
    • On Linux, similar data is collected, including server name, version, domain, TCP ports, application name, context path, and app server details primarily from config.xml and running processes.

    Relationships

    Discovery establishes relationships between WebLogic servers and their host systems, as well as between AdminServers and Managed Servers. Key relationships include:

    • Runs on::Runs between WebLogic servers and Windows or Linux servers.
    • Contains::Contained by between WebLogic servers and web applications.
    • Depends on::Used by between AdminServers and their Managed Servers.

    Additional Notes

    • If not using the WebLogic pattern, you may need to manually grant sudo privileges to the Linux WebLogic - Find config.xml probe for it to execute properly.
    • When patterns are not used, discovery relies on active process probes on Windows or Linux to identify WebLogic application servers.

    Discovery creates or updates a CMDB record when it detects an instance of an Oracle or BEA Weblogic application server running on a Windows or Linux system.

    Requirements

    For Windows
    • PowerShell must be enabled on the MID Server.
    • The WebLogic Administration Server instances that start via WebLogic NodeManager must have the -Dweblogic.RootDirectory=<path> parameter defined upon server startup. The Windows credential must also have read permissions on the config.xml file.
    For Linux
    • Discovery requires the use of these Bourne shell commands:
      • find
      • cat
      • dirname
    • WebLogic administration server instances started via NodeManager must have the -Dweblogic.RootDirectory=<path> parameter defined and visible through the Linux ps process stat command (for each AdminServer) for the rest of the Linux WebLogic application server and web application information to be populated in the CMDB.
    • The following configuration must be set on the sudorers file:

      User ALL=(root) NOPASSWD: /bin/sh *

      User is the user name on the SSH credential that you create for this discovery.

    • This command must be able to be run:

      /bin/sh /tmp/snc-*-findcat.sh * *"

      Do not make any changes to findcat.sh.

    • If you are using probes, not patterns, for Weblogic discovery, the Linux - Weblogic - Find config.xml probe must specify this parameter and value: must_sudo = true
    Note:
    For information on Probe to Pattern migration see the knowledge article KB0694477.

    Credentials

    Classifier, pattern, and probes

    Classifier Trigger probes Pattern
    Weblogic Server
    • Horizontal Pattern: launches patterns
    • Windows - Weblogic - Get web.xml*
    • Windows - Weblogic - Find config.xml*
    • Linux - Weblogic - Find config.xml*
    WebLogic
    *For new instances, these probes are inactive on the classifier. Discovery uses patterns for discovery.

    To use patterns, verify that the correct pattern is specified in the horizontal pattern probe on the classifier. See Add the Horizontal Pattern probe to a classifier for instructions.

    Data collected on Windows

    Label Table Name Field Name Source
    Name cmdb_ci_app_server_weblogic name running process
    Version cmdb_ci_app_server_weblogic version config.xml
    Weblogic domain cmdb_ci_app_server_weblogic weblogic_domain config.xml
    TCP port(s) cmdb_ci_app_server_weblogic tcp_port web.xml and running process
    Name cmdb_ci_web_application name config.xml
    Document base cmdb_ci_web_application document_base config.xml
    Description cmdb_ci_web_application description web.xml
    Servlet class cmdb_ci_web_application servlet_class web.xml
    Servlet name cmdb_ci_web_application servlet_name web.xml
    App server cmdb_ci_web_application app_server config.xml
    TCP port(s) cmdb_ci_web_application tcp_port web.xml

    Data collected on Linux

    Table Field Source
    cmdb_ci_app_server_weblogic Name (name) running process
    cmdb_ci_app_server_weblogic TCP port (tcp_port) running process
    cmdb_ci_app_server_weblogic Version (version) config.xml
    cmdb_ci_app_server_weblogic Weblogic domain (weblogic_domain) config.xml
    cmdb_ci_web_application Name (name) config.xml
    cmdb_ci_web_application Context path (context_path) config.xml
    cmdb_ci_web_application App server (app_server) config.xml

    Relationship

    Parent class Relationship type Child class
    cmdb_ci_app_server_weblogic Runs on::Runs cmdb_ci_windows_server or cmdb_ci_linux_server
    cmdb_ci_app_server_weblogic Contains::Contained by cmdb_ci_web_application
    cmdb_ci_app_server_weblogic Depends on::Used by cmdb_ci_app_server_weblogic

    This relationship is made between an AdminServer and any managed servers it encapsulates.

    Figure 1. Example Weblogic relationships
    Example weblogic relationships