Ad Widget

Collapse

perf_counter[\ASP.NET Applications\*]

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • bhatfield
    Junior Member
    • Apr 2009
    • 11

    #1

    perf_counter[\ASP.NET Applications\*]

    Hi,

    I am trying to figure this one out. I've got perf_counter[] doing some wonderful things for me right now. I have been configuring it as an item within the web interface, and I have been able to pull in really awesome stats.

    However, I cannot seem to get a few specifc ASP.NET counters to work. I have many other counters reporting in from this machine.

    The specific error message I get is:
    Code:
    Active parameter [perf_counter[\ASP.NET Applications(__Total__)\Anonymous Requests/Sec]] is not supported by agent on host [www.example.com]
    
    Active parameter [perf_counter[\ASP.NET Applications(__Total__)\Sessions Active]] is not supported by agent on host [www.example.com]
    
    Active parameter [perf_counter[\ASP.NET v2.0.50727\Requests Current]] is not supported by agent on host [www.example.com]
    This also happens if I make a typo - I got the same error message. A typeperf -qx confirms that these counters exist, and I am able to add them and monitor them in perfmon.

    I've read all of the 'official documentation' and I've searched this forum over, but the closest I have found to an answer is that you can configure certain perf counters in the agent config. But I don't like that answer, as it doesn't seem right. I don't need to configure any of the OTHER counters in the agent (I have been doing them solely through the web interface).

    Help? Do I need to escape characters? Are the agents only compiled to support a certain subset of perfmon counters? What on earth is happening here?
  • tchjts1
    Senior Member
    • May 2008
    • 1605

    #2
    Try doing a copy and paste from your typeperf output directly into your key through the Zabbix GUI... If I get one that doesn't work, it is usually because I manually typed it and ended up missing or adding a space somewhere.

    Edit:

    Looking at your perf counter as compared to one similar from one of my machines... you have too many brackets in the syntax. Here is mine:

    \ASP.NET Applications(__Total__)\Anonymous Requests

    Unless your example is really the output of your typeperf, try removing those two inner brackets and make it:
    Code:
    perf_counter[\ASP.NET Applications(__Total__)\Anonymous Requests]
    Last edited by tchjts1; 30-04-2009, 19:31.

    Comment

    • bhatfield
      Junior Member
      • Apr 2009
      • 11

      #3
      Originally posted by tchjts1
      Try doing a copy and paste from your typeperf output directly into your key through the Zabbix GUI... If I get one that doesn't work, it is usually because I manually typed it and ended up missing or adding a space somewhere.

      Edit:

      Looking at your perf counter as compared to one similar from one of my machines... you have too many brackets in the syntax. Here is mine:

      \ASP.NET Applications(__Total__)\Anonymous Requests

      Unless your example is really the output of your typeperf, try removing those two inner brackets and make it:
      Code:
      perf_counter[\ASP.NET Applications(__Total__)\Anonymous Requests]
      Thanks for the response. Unfortunately, I did indeed copy/paste from typeperf. I was afraid that a typo was screwing me up. Additionally, the extra bracket is just the way the error message is formatted - with [] outlining the whole parameter. In other words, it's only in the error message here, and not part of the perf_counter statement.

      Comment

      • tchjts1
        Senior Member
        • May 2008
        • 1605

        #4
        Originally posted by bhatfield
        Thanks for the response. Unfortunately, I did indeed copy/paste from typeperf. I was afraid that a typo was screwing me up. Additionally, the extra bracket is just the way the error message is formatted - with [] outlining the whole parameter. In other words, it's only in the error message here, and not part of the perf_counter statement.
        Understood.

        My only other callout would be an obvious one... You are doing this from a typeperf that was done on that specific machine, right? Each set of performance counters is unique to any given machine.

        If that's not it... sorry I couldn't help and good luck.

        One other thing you might want to check though, is to see if you can actually load that counter through the Windows OS into perfmon. If it works there, check the properties of that counter and see if there is any variance in what typeperf gives you.

        Comment

        • bhatfield
          Junior Member
          • Apr 2009
          • 11

          #5
          Originally posted by tchjts1
          Understood.

          My only other callout would be an obvious one... You are doing this from a typeperf that was done on that specific machine, right? Each set of performance counters is unique to any given machine.

          If that's not it... sorry I couldn't help and good luck.

          One other thing you might want to check though, is to see if you can actually load that counter through the Windows OS into perfmon. If it works there, check the properties of that counter and see if there is any variance in what typeperf gives you.
          That's actually a good question, but I did indeed do the typeperf on the machine that I am calling the data from. I've triple checked every user-interface thing I can think of, so my question essentially has now become:

          Do the agents support arbitrary keys on the machine? For example, if I created a counter on a given machine (\bhatfields counter\monkies per second), would I be able to enter perf_counter[\bhatfields counter\monkies per second] within the zabbix interface and have it pick up that data?

          Or, if the agent doesn't support arbitrary keys, can I force it to with the agent configuration file?

          Comment

          • tchjts1
            Senior Member
            • May 2008
            • 1605

            #6
            Another idea just struck me.

            When you did the original typeperf output, that gave you the list of what was running at that given point in time, and those metrics were supported - at that time.

            If a process stops running, or a service unloaded, or some other similar "stop", then that item will simply become unsupported. If it starts back up or becomes active again, then Zabbix will pick it back up as supported.

            To test this, simply do your typeperf command again and see if the items in question are still in the output. If they aren't, then those are items that do not run constantly.

            You could also create a graph for this item and see if it is populating data with blank spots in between data periods.
            Last edited by tchjts1; 01-05-2009, 00:34.

            Comment

            • jroberson
              Senior Member
              • May 2008
              • 124

              #7
              Can you launch "perfmon" from the Start->Run command and see if you can find it in add->counters menu. You can use perfmon to create counters and use that to watch it for you so you'll know if it is messing up or not. If perfmon can read it, Zabbix should be able to read it.

              Comment

              • bhatfield
                Junior Member
                • Apr 2009
                • 11

                #8
                Originally posted by tchjts1
                Another idea just struck me.

                When you did the original typeperf output, that gave you the list of what was running at that given point in time, and those metrics were supported - at that time.

                If a process stops running, or a service unloaded, or some other similar "stop", then that item will simply become unsupported. If it starts back up or becomes active again, then Zabbix will pick it back up as supported.

                To test this, simply do your typeperf command again and see if the items in question are still in the output. If they aren't, then those are items that do not run constantly.

                You could also create a graph for this item and see if it is populating data with blank spots in between data periods.
                Good point. I have triple checked that these counters show in typeperf consistently, as well as being fully accessible through perfmon. I even had remote desktop open with perfmon running on the target system while adding the specific couters to Zabbix.

                As a reminder, many other counters from this machine DO work, just not the ASP.NET related ones.


                Originally posted by jroberson
                Can you launch "perfmon" from the Start->Run command and see if you can find it in add->counters menu. You can use perfmon to create counters and use that to watch it for you so you'll know if it is messing up or not. If perfmon can read it, Zabbix should be able to read it.
                I have been able to successfully monitor these counters through perfmon, but Zabbix is reporting them as "Not supported by Zabbix Agent". I have done my best to try and make sure that they are entered 100% correctly, and that all the obvious configuration pieces are done properly.

                Comment

                • jroberson
                  Senior Member
                  • May 2008
                  • 124

                  #9
                  I'm stumped now, too! Might be a longshot, but try setting it up in the host's Zabbix_Agentd.conf file as an "alias."
                  Code:
                  PerfCounter = ASPNETApps,"\ASP.NET Applications(__Total__)\Anonymous Requests",60
                  (For example.)

                  Restart the agent service and then use "ASPNETApps" in the key field. Maybe it has something to do with something frontend side...somehow.

                  Comment

                  • MarkusL
                    Member
                    • Nov 2008
                    • 41

                    #10
                    Hi!

                    My advice is to test the following:

                    1.)
                    try to put the hole string in ""
                    (f.e. perf_counter["\ASP.NET Applications(__Total__)\Anonymous Requests/Sec"]

                    2.)
                    every object and indicator has a corresponding number. You´ll find them in regedit [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\007 for german or \009 for english on a Win2003-machine.
                    Search your string and get the perf_counter to use this numbers instead of string
                    (f.e. perf_counter[\238(_Total)\6] is Processor-Time Total)


                    Kind regards,

                    Markus.

                    Comment

                    • bhatfield
                      Junior Member
                      • Apr 2009
                      • 11

                      #11
                      Originally posted by jroberson
                      I'm stumped now, too! Might be a longshot, but try setting it up in the host's Zabbix_Agentd.conf file as an "alias."
                      Code:
                      PerfCounter = ASPNETApps,"\ASP.NET Applications(__Total__)\Anonymous Requests",60
                      (For example.)

                      Restart the agent service and then use "ASPNETApps" in the key field. Maybe it has something to do with something frontend side...somehow.
                      Thanks! I didn't end up adding the alias, but this DID inspire me to restart the agent, just in case. Restarting the agent caused these counters to start working. Unsure why, but cest la vie. I could have SWORN that I had restarted the agent prior, but I must be mistaken.

                      Originally posted by MarkusL
                      Hi!

                      My advice is to test the following:

                      1.)
                      try to put the hole string in ""
                      (f.e. perf_counter["\ASP.NET Applications(__Total__)\Anonymous Requests/Sec"]

                      2.)
                      every object and indicator has a corresponding number. You´ll find them in regedit [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\007 for german or \009 for english on a Win2003-machine.
                      Search your string and get the perf_counter to use this numbers instead of string
                      (f.e. perf_counter[\238(_Total)\6] is Processor-Time Total)


                      Kind regards,

                      Markus.
                      Thank you for your response - I had run across the perflib\009 bit before but somehow didn't think to apply it to this situation. I did not end up needing it this time around, but I hope that it helps someone in the future.


                      Thank you everyone for your help, and I apologize that it ended up being something that should have been a basic troubleshooting step. Again, thank you.

                      Comment

                      • MarkusL
                        Member
                        • Nov 2008
                        • 41

                        #12
                        Hi!

                        OK, fine.
                        Final notice from my side: the perf_counter with numbers (translated from registry) CAN be put directly in the key-value in zabbix. No need to go the long way over conf-file. They DO work absolutely stable. I have more than 100 items configured with this, all with nodata-triggers. No problem up to now.

                        The only problem you need to go over conf is network, because of the "fantastic" naming-convention of network-cards. And, for sure, because you can use the same template for all hosts, even with different networkcards,...


                        Kind regards,

                        Markus.

                        Comment

                        • RobertS
                          Member
                          • Aug 2006
                          • 57

                          #13
                          Windows 2000

                          Markus solution using numbers for performance counters is the one i've been looking for for a long time. Thank you.

                          Has anybody experience if this is working for Windows 2000 also?

                          Comment

                          • MarkusL
                            Member
                            • Nov 2008
                            • 41

                            #14
                            Hi all!

                            Final notice from my side: as we have more and more different servers (Win2000, 2003, 2008; german, english) we have completely switched:

                            In Zabbix I create items with free names for Performance-Counters.
                            Than I use conf-file to get the real name for perf_counter.
                            The same as with network-cards.

                            With this system I can use the same Zabbix-templates for all my systems.
                            Now I started building conf-file-templates for that.


                            This is great to get Windows-perf-counters done in an easy and STANDARDIZED way. No need to generated hundreds of templates for all kind of servers,...


                            Kind regards,

                            Markus.

                            Comment

                            Working...