I am using nagios to monitor certain services. I want to trigger event when particular services goes in error state. Lets say disk space is full so send event(like RPC ) to particular service which will resolve this issue.How to configure nagios to send such event ?
In nagios, these are called event handlers. You define a command and tell the service to run that under the proper circumstances.
Related
Instead of generating a build every time I make a change, I want to use the service worker while developing. I've already managed to use the https protocol with a valid certificate, but the service worker doesn't install it. I imagine it is related to the following error "No matching service worker detected. You may need to reload the page, or check that the service worker for the current page also controls the start of the URL from the manifest."
what's the use case of global event handler in nagios and how can I configure it to send the information to my otherserver where I have to perform some action based on the information sent (like servicestate, service attempt etc.,)
Specifically, I just need a way to invoke a script, whenever any service goes off or any host dies irrespective of whatever it is
You define the event handler in the commands.cfg file in Nagios. Adding Nagios MACROS' as arguments to pass to the event handler. Then add the event handler to your default template (often generic-service), so that everything uses it. This is all explained in great detail in the Nagios Core documentation. Then the event handler script/program is ran AFTER each event.
I am developing an application and decided Nagios3 for performing monitoring stuff. But I am stuck at two points. I am using check_http plug-in for monitoring load on my service api. Now I want to perform below tasks.
I need to set a threshold in check_http for performing some task after crossing that threshold. I tried below command
'check_command check_nrpe_1arg!check_service_api'
but it only tells me the load, not any threshold is set. while below one doesn't work.
'check_command check_service_api!100!200'
I need to send simple text message on some port(my application).
I am new to Nagios, so please help me figuring out the solution except email notification stuff.
There is a check command that you can download called "notify_sms" that integrates with an API server hosted by a company called Esendex. They charge for their service but it works well.
In my SQL Server agent, I did not set any notifications, then why this error is coming?
I run pakg through dtsexec it executes successfully, and also I run a simple job for inserting record it runs successfully, but when in job step I select file system and give package path and run job it gives me that error:
The Messenger service has not been started - NetSend notifications
will not be sent
I check in services.msc but there is no service like window messenger, I also check in gpedit, there is a window messenger, I apply its all three options enable,disabled, not configure one by one but did not get rid to that error.
any help will be appreciated, Thanks in advance.
This is an informational message that appears and can be safely ignored if you are not using net send alerts.
If you wish to send net send alerts then you have to set the Messenger service to at least Manual startup, preferably Automatic. Then you have to start the service.
It does a check to see if the Messenger service is running, if it isn't then it produces this message as information to say "I cannot send net sends" but it doesn't necessarily mean there is a problem if you are not using net send alerting.
Windows server 2008 have no messenger service at all. msdn forum topic with additional info about your problem. Just ignore it.
the title is quite general but my doubt is specific.
I have doubt regarding where to write the service logic code (in service control handler or in ServiceMain),as in whatever the functionality the service would perform . Is it in ServiceMain ?
I have looked upon these topics on MSDN relate to service. But ,didn't help me
http://msdn.microsoft.com/en-us/library/ms687414%28VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms685984%28v=vs.85%29.aspx
Basically, I want to start a socket listening on windows using a service. This listening socket logic code will be in service file because of I am going to use winexe utility to send this service from linux box to windows box. currently, winexe sends the winexesvc service file on windows. So, ultimately I am going to replace the existing winexesvc service so that it will perform listening on a particular port function when sent on windows. (Service skeleton would remain same but its task performing logic will change,right?). please tell if I am missing anything.
Thanks in advance.
Service control handler should only, well, handle control messages that are sent to the service (the ones shown in the examples you linked are SERVICE_CONTROL_STOP and SERVICE_CONTROL_INTERROGATE). These control messages are sent to the service from the environment.
The logic of your service should be implemented in the ServiceMain function, when all required initialization is done. In the example at the URL in your post, the service logic code is put into the SvcInit function (which is probably not the most appropriate name for a function that implements logic of a service).