NSClient++ Help (#1) - What protcol is NSClient using? How do I create a third party protocol? [ANSWERED] (#569) - Message List

What protcol is NSClient using? How do I create a third party protocol? [ANSWERED]

I need a monitoring service for a project I'm working on. NSClient seams perfect for this.

But I'm writing my application in .net and I'm wondering what protocols and format the data is sent in so I can access it in .net.

How hard is it to create your own protocol? Like rest?

  • Message #1750

    Enter your message here...Enter your message here...Not sure I understand what you want to do.

    But NSclient++ had built-in support of 3 protocols (all from nagios):

    • NSCA (passive) means NSClient++ push information to a server
    • NRPE (active) means a server requests information from NSClient++
    • "NSClient" (limited query interface similar to NRPE.

    There are people who have created other protocols in Lua though so it is possible to do other things as well.

    NRPE and NSCA are structurally similar in that they have a struct with:

    But if you want to use "NSClient++" inside a .net application you could use the "Plugin API" (in reverse) and have NSClient++ modules run inside you (in the current version this protocol would be similar to NRPE).

    In the next version I am reworking the internals of NSClient++ to make it more flexible. The main change is that internally the program will use "Google protocol buffers" to send data around which means the internal data will be more usable.

    In addition to this it will have more internal plugins and there will definitely be some REST based ones.

    Timing on all that is a bit hazy though as it have been in developemtn for a long time. At the moment the internals are reworked and uses GPB but there is more things needed for a "relase". I will get 0.3.8 out in the next week or so. And afer that I will focus again on 0.4.x and a "workable version" I would expect after summer, and after that extended protocols. WHich might end up in a "0.4.1 or some such".

    The main goal of 0.4.x is to have an improved internal platform which facilitates (better) a broader focus and that is at 80-90% then I need to "port" all the existing features up (which is at 50%) and then add extensions (which is at 0%).

    But if you re interested in helping out (especially with .net bindings) things could be quicker :P

    So to summarize

    It is not to hard, but I would wait and do it in 0.4.x since you will need changes if you do it now... But it depends on your schedule.

    Michael Medin

Subscriptions