JBoss Community Archive (Read Only)

RHQ 4.9

New Resource Names By Plugin

This is a list of all plugins with notes on how the resource names should be changed if at all.
The plugins proposed for change (the struck-through ones have been implemented): apache, grub, iis, jboss-as, jboss-as-5, jira, jmx, oracle, platforms, postfix, postgres, rhq-agent, rhq-server, samba, script2, snmptrapd, tomcat, virt

Aliases plugin

No change needed.

AntBundlePlugin

Ant Bundle Handler Server (singleton)

No changes needed.
Current format:

"Ant Bundle Handler"

Apache plugin

Apache HTTP Server

Currently, the resource name looks like this:

hostname + " Apache " + version + " (" + httpdConfPath + ")"

Proposal:
This is a strange one. The hostname is not an ideal candidate for the name of the whole server, because the "Main Server" virtual host underneath it represents the default "binding" of the server.
Calling it "Apache" isn't ideal as well. We're duplicating the type name and would generate duplicate names if there were more instances running on the agent box.
Calling it httpdConfPath is unique but I'm not sure about the user friendliness of this.

In the end the hostname:port was chosen because it a) resembles the way the resource used to be called and b) is probably quite common.

Apache Virtual Host

Current format:

"Virtual Host " + address.host + ":" + address.port

Proposed:

address.host + ":" + address.port

Directory

Current format:

directoryPath

No change needed.

Augeas plugin

This is an abstract plugin, no changes needed.

Byteman plugin

No change needed, details below.

Byteman Agent

Current format:

"Byteman"

Byteman Script

Current format:

shortScriptName

Byteman Rule

Current format:

ruleName

Cobbler plugin

No change needed.

Cobbler

Current format:

resourceType.getName()

Cron plugin

No change needed.

Cron (singleton)

Current format:

resourceType.getName()
Proposed new name:

Cron Tab

Current format:

crontabFile.getAbsolutePath()

Database plugin

Abstract plugin, no change needed.

FileTemplateBundlePlugin

File Template Bundle Handler Server (singleton)

No changes needed.
Current format:

"File Template Bundle Handler"

GRUB plugin

GRUB (singleton)

Current format:

"GRUB Boot Loader"

Proposed new name:
Proposed:

"GRUB"

Hardware plugin

No change needed.

Hardware Monitor

Current format:

"IBM Hardware"

Smart Disk

Current format:

deviceName

Hibernate plugin

I can't see a way of changing this. Ideally I'd think we'd want the stats and entities under an "application" they belong to, not beside it, but that is non-trivial and would have to be thought through.

Hibernate Statistics

Current format:

queryUtility.formatMessage("{application} Hibernate Statistics")

Hibernate Entity

Current format:

entityName

Hosts plugin

No changes needed.

Hosts File

Current format:

resourceType.getName()

Hudson plugin

No changes needed.

Hudson Server

Supports only manual discovery.

Hudson Project

Uses project name as the resource name.

IIS plugin

IIS

Current format:

discoveryContext.getSystemInformation().getHostname() + " IIS Server"

Proposed:

"IIS"

VHost

Current format:

siteName + " VHost"

Proposed:

siteName

IRC plugin

This plugin is outdated. Doesn't use ManualAddFacet even though it should. The resource types defined in this plugin only use manual discovery, so no changes with regards to resource renaming are needed.

JBoss AS plugin

JBossAS Server

Current format:

hostname + " RHQ Server "? + productType.NAME + " " + version + " " + configName + ("(" + bindingAddressAndPort + ")")?

Proposed:
The name of the only/biggest ear/war deployed or just the bindingAddressAndPort

The "bindingAddressAndPort" was implemented because of the technical difficulties with the deployment name detection.

Embedded Tomcat Server (singleton)

Current format:

hostname + " Embedded " + serverName + " Server " + version + " " + bindAddress

Proposed:

bindAddress

Connector

Current format:

Tomcat Connector ({port})

Proposed:

Port {port}

(this is defined as a name template in the plugin configuration)

VHost

No changes needed.

Current format:

name
taken from JMX object name

JBoss AS JVM (singleton)

No changes needed.
Current format:

resourceType.getName()

Datasource

Current format:

{name} DataSource

Proposed:

{name}

ConnectionFactory

Current format:

{name} Connection Factory

Proposed:

{name}

JBossMQ (singleton)

Singleton called "JBossMQ". No changes needed.

JMQ JMS Queue

Current format:

{name} JMS Queue

Proposed:

{name}

JMQ JMS Topic

Current format:

{name} JMS Topic

Proposed:

{name}

JBossMessaging (singleton)

Singleton called "JBoss Messaging". No changes needed.

JBM JMS Queue

Current format:

{name} JMS Queue

Proposed:

{name}

JBM JMS Topic

Current format:

{name} JMS Topic

Proposed:

{name}

EJB3 Session Bean

No changes needed.

Current format:

{name}

Stateless Session EJB

No changes needed.
Current format:

{name}

Stateful Session EJB

No changes needed.
Current format:

{name}

Entity EJB

No changes needed.
Current format:

{name}

Message Driven EJB

No changes needed.
Current format:

{name}

Enterprise Application (EAR)

No changes needed.
Current format:

{name}

Embedded Web Application (WAR)

No changes needed.
Current format:

{name}

Web Application (WAR)

No changes needed.
Current format:

{name}

EJB3 Entity Tree Cache

No change needed.
Current format:

"EJB3 Entity Tree Cache"

EJB3 Entity Tree Cache Interceptor

No change needed.
Current format:

"EJB3 Entity Tree Cache Interceptor"

Script

No change needed.
Current format:

file.getName()

JBoss AS 5 Plugin

JBossAS Server

Current format:

hostname + " RHQ Server "? + productType.NAME + " " + version + " " + configName + ("(" + bindingAddressAndPort + ")")?

Proposed:
The name of the only/biggest ear/war deployed or just the bindingAddressAndPort

The "bindingAddressAndPort" was implemented because of the technical difficulties with the deployment name detection.

JBoss AS JVM (singleton)

No changes needed.
Current format:

resourceType.getName()

JBoss Web (singleton)

No changes needed.
Current format:

resourceType.getName()

Connector

No changes needed.
Current format:

protocol + "://" + address + ":" + port

Virtual Host

No changes needed.
Current format:
hostname part of the full name of the managed component

No Tx Datasource

No changes needed.
Current format:

managedComponent.getProperty("jndi-name").getValue()

Local Tx Datasource

No changes needed.
Current format:

managedComponent.getProperty("jndi-name").getValue()

XA Tx Datasource

No changes needed.
Current format:

managedComponent.getProperty("jndi-name").getValue()

No Tx ConnectionFactory

No changes needed.
Current format:

managedComponent.getProperty("jndi-name").getValue()

Tx ConnectionFactory

No changes needed.
Current format:

managedComponent.getProperty("jndi-name").getValue()

Queue

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

Topic

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

Enterprise Application (EAR)

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

Web Application (WAR)

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

Web Application Context

No changes needed.
Current format:

"//" + virtualHost + contextPath

Embedded Web Application (WAR)

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

Embedded Web Application Context

No changes needed.
Current format:

"//" + virtualHost + contextPath

EJB2 JAR

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

EJB2 Stateless Session Bean

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Stateful Session Bean

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Message-Driven Bean

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Entity Bean

No changes needed.
Current format:
Simplified EJB Bean name

Embedded EJB2 JAR

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

EJB2 Stateless Session Bean (Embedded)

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Stateful Session Bean (Embedded)

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Message-Driven Bean (Embedded)

No changes needed.
Current format:
Simplified EJB Bean name

EJB2 Entity Bean

No changes needed.
Current format:
Simplified EJB Bean name

EJB3 JAR

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

EJB3 Stateless Session Bean

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

EJB3 Stateful Session Bean

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

EJB3 Message-Driven Bean

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

Embedded EJB3 JAR

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

EJB3 Stateless Session Bean (Embedded)

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

EJB3 Stateful Session Bean (Embedded)

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

EJB3 Message-Driven Bean (Embedded)

No changes needed.
Current format:

managedComponent.getProperty("name").getValue()

Resource Adapter Archive (RAR)

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

Embedded Resource Adapter Archive (RAR)

No changes needed.
Current format:

managedComponent.getSimpleName()

or (pseudo-code)

managedComponent.getDeploymentName().getSubstringAfterLastSlash()

Script

No change needed.
Current format:

file.getName()

Service Binding Manager (singleton)

No change needed.
Current format:

"Service Binding Manager"

Service Binding Set

No change needed.
Current format:

managedComponent.getProperty("name").getValue()

JBossCache

JBossCacheSubsystem (singleton)

No change needed.
Current format:

"JBoss Cache subsystem"

JBossCache

No change needed.
Current format:
Normalized JMX object name of the cache

JGroupsRepo

No change needed.
Current format:

"JGroups repo"

JBossCache3

JBoss Cache

No changes needed.
Current format:
Name extracted from the JMX object name of the cache mbean

Cache (singleton)

No change needed.
Current format:

resourceType.getName()

Interceptor (singleton)

No change needed.
Current format:

resourceType.getName()

Data Container (singleton)

No change needed.
Current format:

resourceType.getName()

RPC Manager (singleton)

No change needed.
Current format:

resourceType.getName()

RegionManager (singleton)

No change needed.
Current format:

resourceType.getName()

Transaction Table (singleton)

No change needed.
Current format:

resourceType.getName()

Tx Interceptor (singleton)

No change needed.
Current format:

resourceType.getName()

Lock Manager (singleton)

No change needed.
Current format:

resourceType.getName()

JBossOSGi

JBossOSGi

No change needed.
Current format:
host and port used for the RMI connection to the JMX connector

OSGiBundle

No change needed.
Current format:
The name of the bundle parsed from the Object Name of the bundle's MBean.

JDBCTrace

JDBC Tracer

No change needed.
Current format:

"JDBC Tracer"

Jira

Jira Server

Current format:

"Jira " + url

Proposed:

url

Jira Project

No change needed.
Current format:

project.getName()

JMX

This plugin provides generic support for JMX for other plugins perusal but it also provides its own autodiscovery mechanism for discovering JVMs with the platform MBean server enabled for remote connections.

JMX Server

No changes needed.
Current format:

("JMX Server" | jvmMainClassIfShorterThan200Chars) + "(" + port + ")"

Operating System (singleton)

No changes needed.
Current format:

"Operating system information"

Threading (singleton)

No changes needed.
Current format:

"Threading"

VM Memory System (singleton)

No changes needed.
Current format:

"Memory Subsystem"

Memory Pool

Current format:

"{name} Memory Pool"

Proposed:

"{name}"

Garbage Collector

Current format:

"{name} Garbage Collection"

Proposed:

"{name}"

VM Compilation System (singleton)

No changes needed.
Current format:

"Compilation"

VM Class Loading System (singleton)

No changes needed.
Current format:

"Class Loading"

java.util.logging (singleton)

No changes needed.
Current format:

"Logging"

Kickstart

Kickstart Client

No changes needed.

Current format:

"Kickstart"

lsof

Network Resource Detector

No changes needed.
Only manual add used.

MySql

This plugin doesn't seem to be finished. Only supports a manual add and some of the configurations don't make much sense (like why does one need to specify a database to use when discovering the whole MySQL server?).

NetworkServices

No changes needed, all resource types only support manual add.

Name Service Switch

(why does this plugin have an empty name?)

Name Server Switch

No change needed.
Current format:

"NSSwitch"

onewire

OneWireAdapter

No change needed.
Current format:

adapter.getAdapterName() + " on " + adapter.getPortName()

DS1820

No change needed.
Current format:

cont.getName()

Oracle

Oracle Server

Current format:

"Oracle (" + sid + ")"

Proposed:

sid

Or maybe we could use something more elaborate like the name of the schema, if there was just one on that server. But from my humble knowledge of Oracle, SIDs are very commonly used identificators for servers, so maybe that's the best approach to take here?

Oracle Detailed Statistics

No changes needed.
Current format:

"Oracle 10g Advanced Statistics"

Oracle User

Current format:

"Oracle User - {key}"

where {key} gets replaced by the user name

Proposed:

"{key}"

Platforms

All the platforms get the same name as the agent/plugin container that discovered them or, if that is null, the hostname of the machine. This doesn't need to change.

Network Adapter

No changes needed.
Current format:

info.getDisplayName()

File System

Current format:

((hostname == null) ? "" : (hostname + " ")) + " File System (" + fs.getFileSystem().getTypeName() + ") " + fs.getMountPoint()

Proposed:

fs.getMountPoint()

CPU

No changes needed.
Current format:

"CPU " + i

Process

Manual add only, no change needed.
Current format:

processInfo.getBaseName()
(i.e. the file name of the executable without the path)

Postfix

Postfix Server

Current format:

resourceType.getName()

We could read the "myhostname" variable from the postfix configuration (defaulting to gethostname() if not defined) but running more than one postfix server on a box is quite unlikely so it might not be worth the trouble implementing that.

Access

Current format:

"Access"

There is only at most one resource of this type.

Postgres

Postgres Server

Current format:

"Postgres [" + db + "]"

Proposed:
We have a couple of options here:

  • use the hostname + port the server is accessible from - there can be more than one (but so it can be with Apache for example)

  • if there is only 1 database (other than the system "postgres" one), use the name of the database as the name of the whole server.

Implemented:
If there are 1 or 2 databases present in the postgres server, choose the non-default one (i.e. the one not called postgres), otherwise call it "postgres".

Database

Current format:

databaseName + " Database"

Proposed:

databaseName

User

Current format:

userName + " User"

Proposed:

userName

RHQAgent

RHQ Agent (singleton)

Current format:

agentName + " RHQ Agent"

Proposed:

agentName

or just

"RHQ Agent"

There is just one agent per platform so maybe the latter variant makes more sense.

RHQ Agent JVM (singleton)

No change needed.
Current format:

resourceType().getName()

Measurement Subsystem (singleton)

No change needed.
Current format:

"Agent Measurement Subsystem"

Plugin Container (singleton)

No change needed.
Current format:

"Agent Plugin Container"

Environment Setup Script (singleton)

No change needed.
Current format:

discoveredScriptFile.getName()

Launcher Script (singleton)

No change needed.
Current format:

"RHQ Agent Launcher Script"

Java Service Wrapper Launcher (singleton)

No change needed.
Current format:

"RHQ Agent Java Service Wrapper"

RHQServer

RHQ Server Alerts Engine Subsystem

Current format:

"RHQ Server Alerts Engine Subsystem"

Proposed:
Try something shorter? Something like

"Alert Subsystem"

RHQ Server Measurement Subsystem

Current format:

"RHQ Server Measurement Subsystem"

Proposed:

"Measurement Subsystem"

RHQ Server Group Definition / DynaGroups Subsystem

Current format:

"RHQ Server Group Definition / DynaGroups Subsystem"

Proposed:

"Group Definition Subsystem"

RHQ Server Communications Subsystem

Current format:

"RHQ Server Communications Subsystem"

Proposed:

"Communications Subsystem"

RHQ Server Remote API Subsystem

Current format:

"RHQ Server Remote API Subsystem"

Proposed:

"Remote API Subsystem"

RHQ Server Plugin Subsystem

Current format:

"RHQ Server Plugin Subsystem"

Proposed:

"Plugin Subsystem"

Samba

Samba Server

Current format:

resourceType.getName()

Proposed:
If we wanted to use something else than a type name for samba (which would only make sense if there was a possibility of more than one samba server running on a machine), we could base the name on some other data. Here's a transcript of conversation with Shannon, the author of the samba plugin:

<shughes> other then hostname, i think i would either tie it off of netbios name or the workgroup name
<shughes> this would be similar to postfix....not sure why anyone would have more then 1 samba server on same box
<shughes> server string might also be a possibility
<shughes> i believe testparm is the script you could use or just parse the /etc/samba/smb.conf ifle
<shughes> file
<shughes> its in INI format
<shughes> think i would go with netbios name
<shughes> this is the name that shows up in windows explorer

Implemented:

The netbios name from samba config

Samba Share

No changes needed.
Current format:

sectionName

Script

Script Server

No changes needed. The resource is meant as a base for more concrete implementations or supports manual add.
Current format:

executableFile.getName()

script2

Script2

Current format:

"Script " + lang + "::" + script

Proposed:
Not sure, may just:

script

i.e. calling the resource the name of the script would be enough. The language can be found in the configuration and doesn't have much informational meaning to the user.

Services

Services Manager

No change needed.
Current format:

resourceType.getName()

snmptrapd

SnmpTrapd

Current format:

"Trapd (" + pluginContainerName + ")"

Proposed:
Maybe just:

"Trapd " + port

or just "Trapd" if there is to be only one per machine.

Implemented "Trapd " + port.

OpenSSH

SSHD

No change needed.
Current format:

"OpenSSH sshd"

Sudoers

Sudoers

No change needed.
Current format:

resourceType.getName()

Tomcat

Tomcat Server

Current format:

"Tomcat (" + ((tomcatConfig.getAddress() == null) ? "" : (tomcatConfig.getAddress() + ":")) + tomcatConfig.getPort() + ")"

Proposed:

((tomcatConfig.getAddress() == null) ? InetAddress.getLocalHost().getHostName() : tomcatConfig.getAddress()) + ":" + tomcatConfig.getPort()

or if there is only a single WAR deployed (apart from ROOT.war), the name of that WAR.

Implemented as hostname:port with https://bugzilla.redhat.com/show_bug.cgi?id=583123

Tomcat Server JVM (singleton)

No change needed.
Current format:

resourceType().getName()

Tomcat Virtual Host

Current format:

"Tomcat VHost ({name})"

Proposed:

"{name}"

Tomcat Web Application (WAR)

Current format:

"Tomcat WAR ({contextRoot})"

Proposed:

"{contextRoot}"

Tomcat Cache

Current format:

"Tomcat Cache ({host}{path})"

Proposed:

"Cache"

Tomcat Connector

Current format:

"Tomcat Connector ({handler}-{port})"

Proposed:

"{handler}-{port}"

Tomcat User Database

Current format:

"Tomcat User Database"

Proposed:

"User Database"

Tomcat Group

Current format:

"Tomcat Group ({name})"

Proposed:

"{name}"

Tomcat Role

Current format:

"Tomcat Role ({name})"

Proposed:

"{name}"

Tomcat User

Current format:

"Tomcat User ({name})"

Proposed:

"{name}"

Twitter

Twitter

No changes needed, supports only manual add.
Current format:

url + " feed for " +user

TwitterFeed

No changes needed, supports only manual add.
Current format:

"Feed: " + kind + " : " + keyword

Virtualization

Virtual Host

No changes needed.
Current format:

hardwareInfo.hvType + " Hypervisor"

Virtual Guest

No changes needed.
Current format:

domainInfo.name

Virtual Network Interface

Current format:

path + " virtual interface"

Proposed:

path

Virtual Block Device

Current format:

device + " virtual device"

Proposed:

device

Virtual Network

No changes needed.
Current format:

net.name
JBoss.org Content Archive (Read Only), exported from JBoss Community Documentation Editor at 2020-03-13 08:15:53 UTC, last content change 2013-09-18 19:41:12 UTC.