OneClick

Document created by SirLagz on Jan 31, 2012Last modified by SamCreek on Dec 17, 2016
Version 7Show Document
  • View in full screen mode

Back to:

CA Spectrum

IM Community WIKI Front Page

 

 

Change Update Interval of Collections

If you've ever wondered how to change the update interval of the GlobalCollections to a number lower than 1 hour, go into Attribute Editor, search for the GlobalCollection and change the '''dynamicUpdateInterval''' to the number of MINUTES you'd like.

 

Please be aware that OneClick will show 0 hours!!

 

As an alternative you could force the update by cli:

$VNMDIR/update action=0x100f6 mh=$COLLECTIONMH

                   

 

UPS Power Net Application

You will find all the needed files for your OneClick here: OneClick Power Net UPS customization files. Download it and copy it to the $SPECTRUM/custom/topo/config/ directory and restart your Tomcat.

 

Many thanks to Markus Gatty from Linz Strom in Austria!

 

Change the filter to get devices only as result

To get only devices as result when doing searches within Spectrum, you just have to add and "AutoName" eq "TRUE" to your search criteria.


Reference: OneClick Customization Guide (5160.pdf)

 

When I first started working with Spectrum, one thing I found very frustrating was keeping the Probable Cause files up to date with current procedures for dealing with a particular alarm. I also didn't want to maintain the procedures for the various support groups or allow the support groups admin access to Spectrum.

 

The solution to this problem was to use the Alarm Cause ID to act as a bookmark/anchor on a external web page. A simple right click on the alarm in OneClick, select Alarm Procedures and a browser is launched displaying the appropriate procedure.

 

I use JSPWiki to store my procedures, so the urls in this example are specific to JSPWiki but the urls will be easy enough to convert other wiki's or standard html.

 

The url below will jump to the AlarmProcedures page on the wiki. The parameter passed to the url will act as a bookmark/anchor in the AlarmProcedures page. If the bookmark/anchor does not exist, the top of the page is displayed with a default procedure to follow.

http://yourhost/wiki/Wiki.jsp?page=AlarmProcedures#section-AlarmProcedures-{0}

                 

The parameter (parameter 0) supplied to the url from the param statement below converts the decimal number supplied by OneClick as the Alarm Cause ID and converts it to hexadecimal string (e.g. 0xffff509) as the bookmark/anchor in the webpage it references.

<param>
  <expression>
        ("0x" + Integer.toHexString(attrInt(AlarmAttrID.CAUSE_CODE)))
  </expression>
</param>

                 

To configure this feature in OneClick you need to copy custom-menu-config.xml from

<$SPECROOT>/tomcat/webapps/spectrum/WEB-INF/console/config/custom-menu-config.xml

                 

to

<$SPECROOT>/custom/console/config/

                 

 

Edit the new custom-menu-config.xml and add the code below. Don't forget to modify the url to suit your site.

Images used on the Toolbar should be 24 x 24 pixels. Custom images are stored in the <$SPECROOT>/custom/images directory.

OneClick clients will need to be restarted to use this link.

 

<menu name="Procedures">
<hot-key modifiers="8">VK_P</hot-key>
<item name="Alarm Procedures">
  <toolbar-image>images/logo_mono.png</toolbar-image>
  <toolbar-image-rollover>images/logo_colour.png</toolbar-image-rollover>
  <accelerator modifiers="2">VK_L</accelerator>
  <action>
    <filter>
      <has-attribute>AlarmAttrID.CAUSE_CODE</has-attribute>
    </filter>
    <launch-browser>
    <url> http://yourhost/wiki/Wiki.jsp?page=AlarmProcedures#section-AlarmProcedures-{0} </url>
      <param>
        <expression>
          ("0x" + Integer.toHexString(attrInt(AlarmAttrID.CAUSE_CODE)))
        </expression>
      </param>
    </launch-browser>
  </action>
</item>
</menu>

                 

 

Thanks to Barrie Hill

 

Customizations, which files?

All the default xml files for OneClick are found under $SPECROOT/tomcat/WebApps/tomcat/webapps/spectrum/WEB-INF/

 

Depending on what you would like to change you will need to copy the default-files to your custom directory which will be under $SPECROOT/custom/

 

../alarm/configchanges to your alarm window
../console/configchanges to your menu
../common/configchanges to your component details
../topo/configchanges to your topological window (Tool Tips, Icon Textfield, Icon for model type)

 

Here are some examples:

 

This change will show you the Notes on the Tooltipp (Mouse Over) device-tooltip-config.xml

<param>
  <localize>Notes:</localize>
</param>
<param>
  <attribute>0x00011564</attribute>
  <renderer>com.aprisma.spectrum.app.util.render.NullRenderer</renderer>
</param>

     

You will have to add or replace to the existing device-tooltip-config.xml which you've copied to your $SPECROOT/custom/topo/config/

 

The alarm-table-config.xml will give you the possibility to change the Columns in your Alarm window where the view-alarmdetails-config.xml will allow you to change the content of the alams table like the following:

<expression>( ((String)attr(AttributeID.MODEL_NAME)).equals( "VeryImportantDevice" ) && attrInt(0x11f56) == 3 ) </expression>

     

This will change the Color of the line to Pink if the Device has a name of VeryImportantDevice

 

How to replace a string?

<expression>((String)attr(0x129e7)).replaceAll( "Universe:","")</expression>

     

 

How to avoid typing username and password with each client restart

Before you start, keep in mind this is a big security hole!!!

  1. change to $SPECROOT/tomcat/WebApps/tomcat/webapps/spectrum/
  2. open oneclick.jnlp with your favorite editor
  3. add to the second last line
    <argument>-user username </argument>
    <argument>-password password </argument>
  4. save this file and restart your OneClick

 

The OneClick menu will appear with the User defined in the file above..

 

How to create a custom sub-menu in OneClick?

 

  1. Copy your custom-menu-config.xml to your custom directory
  2. Add the following to your copied custom-menu-config.xml file:

 

<menu name="Reporting">
  <hot-key modifiers="8">VK_R</hot-key>

 

  <item name="Asset &amp; Availability Reports">
    <action>
      <launch-browser>
        <url>http://yourserver/spectrum/repmgr/index.jsp</url>
      </launch-browser>
    </action>
  </item>
 

  <separator/>

 

  <item name="Statistical Reports Home">
    <action>
      <launch-browser>
        <url>http://yourserver:8080/cgi-bin/main.cgi</url>
      </launch-browser>
    </action>
  </item>
</menu>

    

 

Launching OneClick without local JRE installation

 

Tested on Windows workstations and Spectrum 8.1. H1x
To get the needed sources you should have one workstation with OneClick running.

 

Benefits:

  • No need to have admin rights
  • No need to have a JRE installed an registered on your workstation
  • Only one authentication, not two times like launching OneClick via Webbrowser
  • No trouble with using other java software that need other JRE's

 

  1. Copy JRE 1.5.0_12 to a new directory
    JRE 1.5.0_12 directory from C:\Program Files\Java to a new directory e.g. C:\Program Files\Spectrum
  2. Copy OneClick JNLP file from local cache
    File "AMoneclick.jnlp" to C:\Program Files\Spectrum\oneclick.jnlp
  3. Create shortcut or batch file
    C:\Program Files\Spectrum\jre1.5.0_12\bin\javaws.exe "C:\Program Files\Spectrum\oneclick.jnlp"
  4. Provide the files to your users
    Alternatively you could save the files to a fileserver and launch from there

 

Change width of the object name textbox

It’s possible to change the minimal and maximal width of the box under the object icon, which contains the object name / ip / … All preferences could be found in the file <$SPECROOT>/SPECTRUM/tomcat/webapp/spectrum/WEB-INF/topo/config/default-iconlabel-config.xml. To resize the minimal and maximal width of the box, change the entries:

<max-background-width>95</max-background-width>
<min-background-width>95</min-background-width>

   

With the default settings OneClick creates a static box with the width of 95px. If the min and max variables have different values, the box width results from the text width. To change the transparency of the box background, change following parameters:

<default-transparency>140</default-transparency>
<selected-transparency>220</selected-transparency>

   

Other parameters are described in the OneClick Customization Guide (5160) on page 80ff.


Results:

File:Resizing spectrum box.jpg

 

Monitoring Diskspace over several systems

If you would like to monitor the drive C: on several systems, you don't have to do it manually on each system.

 

Please make sure you have normalize_disk_name=true in your $SPECROOT/SS/.vnmrc


In OneClick choose the Locater Tab, and look for System & Application Monitoring and expand it by clicking on the plus sign. Now double click on All Monitoring Rules and confirm the pop-up menu.

 

Now you will see the following image:

NewRule.jpg

All you have to do now is to create a Global Collection where you put all your Models into, which should be monitored.. Quite easy

If you name your GlobalCollection something with C_95 and have a search combined with it, makes it again more easy for your staff to operate with it.

 

NOTE: This technique only works for one filesystem. If you want to monitor two filesystems you will need two rules applied to the global collection. What happens when you have 100's of servers in the global collection with 100's of different filesystems? What happens when someone mounts a new filesystem and does not tell you about it? It will not be monitored.

 

There is currently no way to define a global default for all filesystems. Wildcards (regular expressions) are not accepted as a Filesystem name.

 

Regular expressions need to be applied to a filesystem name and applied to a Global Collection. Individual servers in the global collection then need to be able to apply exceptions to selected filesystems.

 

Monitoring Processes over several systems

This is an easy way to permit users without write privileges to monitor a set of processes.

 

  1. Create Global Collection
    1. Create a global collection “default_unix_process”
    2. Edit the search options Attribute “Notes” contains ;default_unix_process
  2. Create Rule Set
    1. Goto: Locator, System & Application Monitoring; All Monitoring Rules
    2. In the Contents click at the pad and create a rule set “default_unix_process”
    3. In the component detail create the process monitoring rules by “add”
    4. Be aware: you need the full path name and if you only want to monitor, if any process is there don’t click alarm on stop, use less than 1 and GT 1
      P1.jpg

  3. Assign ruleset to global collection: in the Contents panel right click the ruleset and apply the global collection
  4. Bring models to global collection
    1. Write ;default_unix_process; to the notes of a host
    2. If you don’t want to wait 24 hours update the collection
  5. Confirm
    1. Goto Component Detail, system resources, Monitored Process
    2. There you should find the monitored processes

P2.jpg

 

Change Port for OC Server on UNIX

 

  • In the server.xml file ($SPECROOT/tomcat/conf/) change the line

"<Connector port="8080" ..."

   

to

"<Connector port="80" ..."
  • In the TOMCAT.idb ($SPECROOT/lib/SDPM/partslist/) change the line "TICKETUSER;spectrum;" to "TICKETUSER;root;"
  • Change the owner of the files startTomcat.sh and stopTomcat.sh from spectrum to root.

 

Then restart the tomcat web server using the startTomcat.sh and stopTomcat.sh. Now the OneClick website can be accessed on port 80. The change to use port 80 instead of port 8080 is not supported by CA.

 

Change the Spectroserver, on which the OC server shold connect


Spectrum 8.1: $SPECROOT/tomcat/conf/server.xml:

<parameter>
  <name>locServerName</name>
  <value>LOCSERVER</value>
</parameter>
<parameter>
  <name>backupLocServerName</name>
  <value>BACKUPLOCSERV</value>
</parameter>

  


Spectrum 9.0:''' $SPECROOT/tomcat/webapps/spectrum/META-INF/context.xml:

<Resource name="bean/SecuritySp" auth="Container" type="com.aprisma.spectrum.app.web.servlet.container.SpectrumJNDIRealm"
factory="org.apache.naming.factory.BeanFactory" domainPollingInterval="10" domainRequestTimeout="60" domainConnectionTimeout="15"
==>>locServerName="LOCSERVER" backupLocServerName="BACKUPLOCSERV" <<== orbThreadPolicy="TSession" useSSL="false" orbArgs="vbroker.se.iiop_tp.host=null
vbroker.se.iiop_tp.proxyHost=Spectrum-OC vbroker.se.default.local.manager.enabled=false vbroker.agent.enableLocator=false
vbroker.orb.enableBiDir=client vbroker.orb.gcTimeout=300 vbroker.ce.iiop.ccm.connectionMaxIdle=0 borland.enterprise.licenseDir=E:/SPECTRUM/bin/VBNS
/license" adminUserName="spectrum" smtpHostName="mailhost" smtpPort="25" smtpDomain="" useSecondarySS="true" connectionURL="" alternateURL=""
timeoutPeriod="" connectionName="" AESEncryptedPassword="" storePasswords="" protocol="" userSearch="" userBase="" userSubtree="" userPattern=""
referrals="follow" />

  

 

How to show the user who has acknowledged an alarm in OneClick

 

The following is a CA solution

 

Cause:
When a user acknowledges an alarm in OneClick, an event is created. This event is filtered from the event list by default, however, so the filter must be changed to view this event.

 

Fix:

  • In the event list, click the Filter icon (funnel shape) to open the Event Filter window.
  • In the Event Filter window, select the Event Type tab, and select event number 0x10707.
  • Click Remove, then OK.

 

The list of events will refresh, and acknowledge events will be displayed.

 

How to run OneClick on a Mac

 

  • Install the App (zipped) on your mac.
  • After you have done that, you need to open a terminal
  • Change to the directory you have installed it (/Applications/Spectrum.app/Contents/Resources)
  • In there open with an editor (I use vi) and edit the IP Adress so it matches your OneClickServer
  • Save and you are done
  • Start the newly installed application.

 

After mapping traps in OC, all of the events are mapped to 0xffffffff

 

The following is a CA solution

 

Fix:
This will be fixed in SPECTRUM version 9.2 and above.


There are two workarounds:

  1. Move anything higher than 0xfff0c53 from custom/Events/EventDisp to another EventDisp file under CsVendor.
  2. Then navigate to the VNM model, select SpectroSERVER Control from the Information window, and click on the Update Event Configuration button.

Or:

  1. Remove all of the same entries in the $SPECROOT/custom/Events/EventDisp file
  2. After the last entry in the file, create the following line:
    0x10000000 E 20
  3. Then navigate to the VNM model, select SpectroSERVER Control from the Information window, and click on the Update Event Configuration button.

 

The next time you map a trap OneClick will use event 0x100000001.

 

Execute Windows vbs Scripts on OneClick Client systems

If you want to run vbs scripts on the users systems, you have to use the windows command "wscript" to execute the vbs file. The custom-menu-config.xml must have an entry like:

<launch-application>

  <platform>
    <os-name>Windows</os-name>
    <command>wscript script.vbs {0}</command>
  </platform>
  <param>
    <attribute>...</attribute>
  </param>
</launch-application>

 

Attachments

    Outcomes