# Using the ping check

**URL:** <https://discourse.sensu.io/t/using-the-ping-check/199>\
**Category:** Sensu Classic (EOL)\
**Created:** [May 30, 2014, 1:51am UTC](https://discourse.sensu.io/t/using-the-ping-check/199 "2014-05-30T01:51:05Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![John\_Arends](https://avatars.discourse-cdn.com/v4/letter/j/7ba0ec/32.png) [@John\_Arends](https://discourse.sensu.io/u/John_Arends)\
**Post date:** [May 30, 2014, 1:51am UTC](https://discourse.sensu.io/t/using-the-ping-check/199/1 "2014-05-30T01:51:05Z")

</div>

Please forgive me if I completely miss the point with this question. I really like what sensu does, but I’m trying to understand the architecture and how it works in my particular case.

We have a number of devices that we can’t install the sensu-client on. How do people typically monitor this? Would you write a custom check for each appliance/device that you want to monitor and run it with the sensu-client on the sensu server?

I’ve also read that some people use the ping check a great deal, but how do they handle it? If I run the sensu-client on a server, pinging localhost doesn’t seem like it would give me much information. Where do you send the pings from?

I understand using the other checks and running them locally on each machine with sensu-client, but wouldn’t we want a ping to come from sensu-server like other monitoring solutions along the lines of nagios?

I’ve done a lot of reading over the past few days and haven’t seen any mention of this at all so I’m not sure what people are doing or if I’m missing the point entirely.

---

<div class="post-metadata">

**Author:** ![Kyle\_Anderson](https://avatars.discourse-cdn.com/v4/letter/k/e5b9ba/32.png) [@Kyle\_Anderson](https://discourse.sensu.io/u/Kyle_Anderson)\
**Post date:** [May 30, 2014, 3:27am UTC](https://discourse.sensu.io/t/using-the-ping-check/199/2 "2014-05-30T03:27:21Z")

</div>

For those things that cannot install the sensu-client, you must use  
the sensu-client on some host to perform the checks, as you guessed.

In my situation, I select a single host per environment (one of the  
sensu-servers) to do the checking for me.  
I use a yaml file (hiera) plus a custom puppet type that defines the  
actual check. The destination of the ping check is what is declared in  
the yaml. The ping check runs on a sensu master.

I'm holding out for a resolution to:

> <https://github.com/sensu/sensu/issues/541>
>
> 531

or

> <https://github.com/sensu/sensu/pull/531>
>
> This change adds a new feature where you can push check results via the socket a…s another client. A use case would be to monitor network devices or have another monitoring tool (ie Riemann) to send events to sensu.

Which would (potentially) allow me to masquerade the clientname to  
match the thing I'm checking. This would also allow me to run this  
check from any of the sensu-masters, as the client name would be  
consistent then. (and, the client name would == the thing I'm pinging,  
not the thing that \*is\* initiating the ping)

A different approach is to have a single check definition that spawns  
results into the localhost:3030 socket:

> <https://gist.github.com/joemiller/5806570>

Still, this check must be run on \*some\* server with the sensu client.

I agree, I don't \*want\* the ping to come from the sensu-server, like  
nagios, but it does have to come from \*somewhere\*. 🙂

> **···**
>
> On Thu, May 29, 2014 at 6:51 PM, John Arends \<jarends@gmail.com\> wrote:
> 
> > Please forgive me if I completely miss the point with this question. I  
> > really like what sensu does, but I'm trying to understand the architecture  
> > and how it works in my particular case.
> > 
> > We have a number of devices that we can't install the sensu-client on. How  
> > do people typically monitor this? Would you write a custom check for each  
> > appliance/device that you want to monitor and run it with the sensu-client  
> > on the sensu server?
> > 
> > I've also read that some people use the ping check a great deal, but how do  
> > they handle it? If I run the sensu-client on a server, pinging localhost  
> > doesn't seem like it would give me much information. Where do you send the  
> > pings from?
> > 
> > I understand using the other checks and running them locally on each machine  
> > with sensu-client, but wouldn't we want a ping to come from sensu-server  
> > like other monitoring solutions along the lines of nagios?
> > 
> > I've done a lot of reading over the past few days and haven't seen any  
> > mention of this at all so I'm not sure what people are doing or if I'm  
> > missing the point entirely.

---

<div class="post-metadata">

**Author:** ![jspaleta](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.sensu.io/jspaleta/32/141_2.png) [@jspaleta](https://discourse.sensu.io/u/jspaleta)\
**Post date:** [November 22, 2018, 2:05am UTC](https://discourse.sensu.io/t/using-the-ping-check/199/3 "2018-11-22T02:05:19Z")

</div>


