Performance Monitoring for Atlassian Applications (JIRA, Confluence on Windows)

Who doesn’t want to know how their applications are performing? Here’s a quick way to start collecting data and analyzing it.

  1. Sign-up for a free New Relic account
  2. Download your New Relic java agent zip file to your server and extract. I placed mine in the “D:\Program Files” folder.
  3. Edit “D:\Program Files\newrelic\newrelic.yml”
    1. update the “license_key” and “app_name” variables
      1. note: the license_key is surrounded in ticks ” and app_name is not.
  4. Configure the java agent to start when the service starts
    1. start > run > regedit.exe
    2. HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\[App ID]\Parameters\Java
    3. edit “Options” by adding “-javaagent:D:\Program Files\newrelic\newrelic.jar” to the bottom
  5. Restart your application service

If your app doesn’t show up in the console check your logs! (D:\Program Files\newrelic\logs\newrelic_agent.log)

Configure sFlow for HP switches


Execute the following commands on the desired interface

sflow flow collector 1
sflow sampling-rate 1000
sflow counter collector 1
sflow counter interval 60


sflow 1 destination ${collector}
sflow 1 polling ${interface} 60
sflow 1 sampling ${interface} 1000

Enter the BIOS on Lenovo ThinkPad Yoga S1 (Windows 8/8.1)

Enter the BIOS for ThinkPad running Windows 8/8.1

Note to self: When shutting down Windows 8.1 hold down the shift key when selecting “Shutdown.” Once this is performed, you can press F1 when the Lenovo logo is shown to enter the BIOS setup or F12 for boot order.



Packet captures on Windows 2008 R2 ( & 2012, 2016)

Need to run a packet capture but your services for some unknown reason are running on a Windows Server? If yes, then your in luck. As of Windows Server 2008 R2 the tools you need are already installed on the server for you!

Quick capture

Note: Needs to be run from an elevated command prompt

Start the capture

netsh trace start scenario=NetConnection capture=yes tracefile=tracefile.etl

Stop the capture

netsh trace stop


The results will be a nice cab file you can easily transfer to your client workstation for review.
You may want to use a tool like Microsoft’s Message Analyzer to review the capture.
Micosoft Message Analyzer



Replace failed HP-3800 E-Series stack member

Recently we had to replace a few failed HP-3800 stack members. Luckily this is pretty easy. Execute the following command on the switch stack once the  failed switch has been removed and before the replacement switch has been connected to the stack.


  1. Power down and remove the failed switch
  2. Update the switch stack for the new switch
    1. Locate the system mac address from the back of the switch
    2. switch-stack-01(config)#Stacking member <member ID> type <type ID> mac-address <mac address ID>
  3. Power on the new switch
  4. A message indicating incompatible OS may be displayed when the switch is first powered on. This will go away after a couple reboots. The new member will receive it’s OS from the commander


Verify and configure Windows servers for NTP

It’s a known fact computers like to interact with other machines only when they can at least agree they exist in the same time. Once we learn more about time travel and parallel universes maybe this will change, but for now let’s keep all our clocks in sync!

Verify current status

Note the “Source” field. In the example below this indicates that the server is using the local system clock and not an NTP server.

PS C:\Users\Administrator> w32tm /query /status
Leap Indicator: 3(last minute has 61 seconds)
Stratum: 0 (unspecified)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0625000s
Root Dispersion: 7.8418233s
ReferenceId: 0x00000000 (unspecified)
Last Successful Sync Time: 2/25/1983 7:53:20 AM
Source: Free-running System Clock
Poll Interval: 10 (1024s)

Configure the NTP server to use

PS C:\Users\Administrator> net time \\ /set /yes

Restart the time service

net stop w32time

net start w32time

 Sill having troubles?

Enable logging:



PowerShell script to compare the contents of two folders

Need to find out if two folders have the same files in them? Here is a quick PowerShell script to make it happen!

PS C:\Windows\system32> $server1 = get-childitem -Recurse -path E:\folder1
PS C:\Windows\system32> $server2 = get-childitem -Recurse -path \\server2\folder1
PS C:\Windows\system32> Compare-Object -ReferenceObject $server1 -DifferenceObject $server2

InputObject SideIndicator
———– ————-
Sample.file.txt <=



Obtain users DN via PowerShell

Note to self…  This is how you can get the correct DN, and other information, for a user in AD.

From PowerShell

import-module activedirectory

get-aduser -filter {EmailAddress -like “rick@virtualrick.*”}


get-aduser -filter {samAccountName -like “rick*”}

HP iMC custom monitors for APC UPS

APC SymettraUPS16kVA

  1. Download the latest MIB from APC:
  2. In iMC goto Resource > Performance Management > Global Index Settings
  3. Add Custom Index
  4. Name: APC Temperature
  5. Type: [Index1[0]:iemStatusProbeCurrentTemp:1:0]
  6. Instance Label:
  7. Formula:
  8. Create a performance view


  • Type: [Index1[0]:upsPhaseOutputPercentLoad:1:1]
  • OID:


  • Type: [Index1[0]:upsPhaseOutputPercentPower:1:1]
  • OID:

Smart-UPS 3000 XL

Tested on 6000, 3000 & 450


“The current internal UPS temperature expressed in Celsius.”

  • OID:
  • Type: [Index1[0]:upsAdvBatteryTemperature:1:0]


“The current UPS load expressed in percent of rated capacity.”

  • OID:
  • Type: [Index1[0]:upsAdvOutputLoad:1:0]


Readings from external probes can be gathered from this table

Name: iemStatusProbesEntry

Module: PowerNet-MIB
Parent: iemStatusProbesTable
Max Access: not-accessible
ComposedSyntax: IemStatusProbesEntry
Status: mandatory
Description: The status of the probe.