This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

What are some of the more creative ways you use Custom Properties?

I hope to start an interesting exchange on various ways that SolarWinds users employ custom properties.

What "workarounds" have you done that used a custom property as an integral part of the solution?

Those of us that have been working with SolarWinds for even a short time know all to well how useful the custom property can be. So, what are your stories and use cases?

Let's hear them?

  • Oh man, these are core foundation for the entire framework. I have not many of them, but I do believe that 99% of stuff can be automated just be using custom properties AND ... it is easy to do from the user perspective, which leads to much fewer mistakes and more robust, reliable and consistent monitoring environment

    For example:

    • SiteID. Once picked, we will then display full information about particular site on the node page + we will automatically adjust latency + we will automatically place node on the world map + we will automatically calculate dependencies
    • Environment and Impact are two custom properties that we use to filter out any alerting noise. We only send alerts in for production machines and/or high impact server.
    • Almost any possible threshold has been implemented with custom properties being an overrides, such as overrides for Disk Queue Length, Disk Latency, Interface Discards, Interface Errors, CPU and many more. Many overrides are already there as part of standard Orion platform, but I found that we always in need for more granularity and flexibility and Custom Properties is a Magic
    • I also use them for reminders, for muting mechanisms, for notification purpose, and on and on
    • Many of them we use just for information - notes, contacts, phone numbers, warranty, PO, etc
    • And obviously this one tells it all

    If I were to unswer what is the gratest invention on the XXI century - I would give my vote to Custom Properties within SolarWinds emoticons_wink.png

  • Interface Custom Properties:



    CarrierContact (put carrier's contact number

    CarrierPortal (use <a href="">Portal</a> to create a link to the carriers portal)

    SpecialInterface (for designating important interfaces)

    Node Custom Properties:


    Classification (prod, dr, uat, etc.)


    Grade (primary / secondary; a/b; etc.)



  • I'm using custom properties for just a few basic things like Sitename and WAN_interface.

    I'm trying to get a report going where I can just select WAN_interface to report on utilisation, and in my report I show the management friendly site name next to the WAN utilisation figures.



  • I've got them all over the place...

    Mute(Object) - allows me to not alert, while still monitoring (feature being worked on currently - natively - woohoo)

    BHOnly - bit - allows me to alert only during business hours (static 7a-8p currently)

    Dept on all objects - we email ticketing system and this allows me to assign to correct group...don't use AlertCentral b/c our Ops team monitors alerts in such a way...

    SSL expiration monitoring - appalias is used for common name of cert which backend SQL scripts work with ticket system and Orion reporting.

    AlertEmail, StakeholderEmail, TicketEmail - CPs for email addresses for alerts to get sent to.

    Realm - used to indicate production, staging, development, qa, etc...  Ops has custom view that shows only critical production alerts - they act on those regardless of time of day.  Others in staging or production generate ticket if "TicketEmail" is set for the ticket system email addr.

    Much of my CPs are designed to keep alerting manageable.  I try to keep the alerts as general as possible while still fulfilling the needs and giving the engineers useful information.

    tons more...  really, you have to figure out what your environment requires, the business needs are, and what will provide further useful automation; then figure out how best to do that with custom properties.

    1. Mute(Object) - allows me to not alert, while still monitoring (feature being worked on currently - natively - woohoo)
    2. BHOnly - bit - allows me to alert only during business hours (static 7a-8p currently)
    3. AlertEmail, StakeholderEmail, TicketEmail - CPs for email addresses for alerts to get sent to.
  • What do you mean by this specifically?  Do you have a custom view that displays metrics of each site?  I have wanted to do something similar to make 'Site Views', but wasn't sure on the correct approach. 

  • Yes, I do. I have reports designed in Report Writer which will lookup for Site ID in my Auxiliary table and will then output all address details on Node's page dynamically. This is shown in bonus section here

  • Sure.


    so for Node, I have a bit CP and text CP for Node,CPU,Memory (MuteCPU,MuteCPUComment, etc...)

    Pretty much all of my alerts have some "standard for our env." settings starting with:


         Nodes.MuteNode=0 AND


    In the Trigger Action, I have in the TO:

    ${N=General;M=DefaultEmailTo} and ${N=SwisEntity;M=CustomProperties.AlertEmail}

    etc.. for CC and BCC - if I want the alert to email ticket system, this goes in BCC section ${N=SwisEntity;M=CustomProperties.TicketEmail}.

    In the application custom properties of a given app, I fill out the emails desired separated by semicolon (I think comma works, but test).

    I have the TicketEmail as a drop down so no one inadvertently misspells/types.

    for the BHOnly (Business Hours Only), I added some logic to the alert trigger (custom SQL) for only our critical alerts (that is only thing our ops calls on).

    This is for an application b/c you see it checks for app and node CP.




      -- business hours addition

      (CASE WHEN (APM_ApplicationCustomProperties.BHOnly=1 OR Nodes.BHOnly=1) THEN CASE

                                WHEN DATEPART(hh,GETDATE()) BETWEEN 7 AND 19 --7am to 7:59:59pm

                                    AND DATEPART(dw,GETDATE()) BETWEEN 2 and 6 -- M-F

                                    THEN 1

                                ELSE 0


            ELSE 1 --trigger b/c not BHOnly



    it won't let me attach something here, but message me w/ your email if you want examples.

  • yea, realistically, i utilized most of these implementations from other users like adatole‌.  Always good to cruise Thwack....daily.
    Actually, I get the "all RSS Feed" so I don't miss great ideas and other useful tidbits.  Thwack is an excellent resource mostly because so many people are so active...Thanks all.