Others

check_dcm

Description:

check_dcm is a DICOM plug in that monitors SCP Providers in a PACS environmnet. It sends out ECHO requests to PACS devices and lights up Nagios on exception.

Current Version

Last Release Date

June 8, 2009

Compatible With


Nagios CSP

Meet The New Nagios Core Services Platform

Built on over 25 years of monitoring experience, the Nagios Core Services Platform provides insightful monitoring dashboards, time-saving monitoring wizards, and unmatched ease of use. Use it for free indefinitely.

Monitoring Made Magically Better

  • Nagios Core on Overdrive
  • Powerful Monitoring Dashboards
  • Time-Saving Configuration Wizards
  • Open Source Powered Monitoring On Steroids
  • And So Much More!
Project Files
Project Notes
This is a nagios plugin for DICOM services. The script is a wrapper for dcmtk's (http://dicom.offis.de/dcmtk.php.en) echoscu to monitor STORE SCP. It will have to be installed (or the binary built) on the nagios system. Make sure the DCMDICTPATH environment variable is set. Compliments the white paper for monitor PACS with Nagios: http://www.clubpacswestmi.net/EnterprisePACSMonitoringwithNagiosSmokepingandCacti.pdf
Reviews (2) Add a Review
Working version - tested w 3.5.1
by ohrstka, April 30, 2015
#!/usr/bin/perl -w
# check_dcm.pl

#define command{
# command_name check_dcm
# command_line /usr/lib/nagios/plugins/check_dcm -a $HOSTADDRESS$ -n $ARG1$ -p $ARG2$
# }

use Getopt::Std;
use strict;
use lib "/usr/lib/nagios/plugins"; ## directory where I can find "utils.pm"
use utils qw{%ERRORS};

my $echoscu = "/usr/bin/echoscu";

my ($USAGE) = ult =~ /Association Rejected/) {
print "CRITICAL: $resultn";
exit($ERRORS{'CRITICAL'});
}

}

print "CRITICAL: Indeterminate Error.n";
exit($ERRORS{'CRITICAL'});
Helpful? Yes  No 
Does not work
by retsil42, March 31, 2013
This script doesn't follow Nagios guidelines
http://nagiosplug.sourceforge.net/developer-guidelines.html#AEN76

Here is a patch to repair it

1c1
#! /usr/bin/perl -w
26,27c26,27
use lib "/usr/lib/nagios/plugins"; ## directory where I can find "utils.pm"
35c35,36
my ($echoscu);
> $echoscu = "/usr/local/dcmtk/bin/echoscu";
69c70,86
if (! $options{p}) {
> print "No port specifiedn";
> exit($ERRORS{'CRITICAL'});
> }
>
> if (! $options{n}) {
> print "No IP address specifiedn";
> exit($ERRORS{'CRITICAL'});
> }
>
> if (! $options{a}) {
> print "No AE title specifiedn";
> exit($ERRORS{'CRITICAL'});
> }
>
> my($thing);
> $thing = `$echoscu -v -aet $options{a} $options{n} $options{p} 2>&1`;
70a88
> my(@response);
72a91,92
> my ($result);
>
74,75c94,95
print "$resultn";
79,87c99,102
exit($ERRORS{'CRITICAL'});
Helpful? Yes  No 
Add a Review

You must be logged in to submit a review.

Thank you for your review!

Your review has been submitted and is pending approval.

Recommend

To:


From:


Thank you for your recommendation!

Your recommendation has been sent.

Project Stats
Rating
2.5 (2)
Favorites
0
Views
99,995