check_mssql_health
Posted on July 15th, 2009 by lausser
Beschreibung
check_mssql_health ist ein Plugin, mit dem unterschiedliche Parameter eines MS SQL-Servers überprüft werden können.
Dokumentation
Kommandozeilenparameter
- –hostname <hostname> Der Datenbankserver
- –username <username> Der Datenbankuser
- –password <password> Dessen Passwort
- –port <port> Der Port, auf dem der Server lauscht (Default: 1433)
- –server <server> Alternative zu Hostname+Port. <server> wird in der Datei freetds.conf gesucht.
- –mode <modus> Mit dem mode-Parameter teilt man dem Plugin mit, was es tun soll. Siehe Liste der möglichen Werte weiter unten.
- –name <objektname> Hier kann die Prüfung auf ein einziges Objekt begrenzt werden. (Momentan wird dieser Parameter nur für mode=sql verwendet)
- –name2 <string> Verwendet man –mode=sql, dann erscheint das SQL-Statement in der Ausgabe und den Performancedaten. Mit dem Parameter name2 kann man dafür einen eigenen String vergeben.
- –warning <range> Ermittelte Werte außerhalb dieses Bereichs lösen ein WARNING aus.
- –critical <range> Ermittelte Werte außerhalb dieses Bereichs lösen ein CRITICAL aus.
- –environment <variable>=<wert> Damit kann man dem Script Environmentvariablen mitgeben. Mehrfachnennungen sind möglich.
- –method <connectmethode> Mit diesem Parameter teilt man dem Plugin mit, wie es sich zur Datenbank verbinden soll. (dbi für Verbindung per DBD::Sybase (default), derzeit keine Alternativen).
- –units <%|KB|MB|GB> Die Angabe von Einheiten dient der “Verschönerung” von Ausgaben des mode=sql
Um dem Plugin mitzuteilen, welche Werte es ermitteln und prüfen soll, benutzt man die Option –mode mit verschiedenen Schlüsselwörtern.
Modi
| Schlüsselwort | Bedeutung | Wertebereich |
| connection-time | Misst, wie lange Verbindungsaufbau und Login dauern | 0..n Sekunden (1, 5) |
| connected-users | Anzahl der verbundenen Benutzer | 0..n (50, 80) |
| cpu-busy | CPU Busy Time | 0%..100% (80, 90) |
| io-busy | IO Busy Time | 0%..100% (80, 90) |
| full-scans | Anzahl von Full Table Scans pro Sekunde | 0..n (100, 500) |
| transactions | Anzahl der Transactionen pro Sekunde | 0..n (10000, 50000) |
| batch-requests | Anzahl der Batch Requests pro Sekunde | 0..n (100, 200) |
| latches-waits | Anzahl der Latch-Anforderungen pro Sekunde, die nicht befriedigt werden konnten | 0..n (10, 50) |
| latches-wait-time | Durchschnittliche Zeit, die nach einer abgewiesenen Latch-Anforderung gewartet werden muss | 0..n ms (1, 5) |
| locks-waits | Anzahl der Lock-Anforderungen pro Sekunde, die nicht befriedigt werden konnten | 0..n (100, 500) |
| locks-timeouts | Anzahl der Lock-Anforderungen pro Sekunde, die auf Timeout gelaufen sind | 0..n (1, 5) |
| locks-deadlocks | Anzahl der Deadlocks pro Sekunde | 0..n (1, 5) |
| sql-recompilations | Anzahl der Re-Compilations pro Sekunde | 0..n (1, 10) |
| sql-initcompilations | Anzahl der Initial Compilations pro Sekunde | 0..n (100, 200) |
| total-server-memory | Der Hauptspeicher, den der SQL Server für sich reserviert hat | 0..n (nearly1G, 1G) |
| mem-pool-data-buffer-hit-ratio | Data Buffer Cache Hit Ratio | 0%..100% (90, 80:) |
| lazy-writes | Anzahl der Lazy Writes pro Sekunde | 0..n (20, 40) |
| page-life-expectancy | Durchschnittliche Verweildauer einer Page im Hauptspeicher | 0..n (300:, 180:) |
| free-list-stalls | Free List Stalls pro Sekunde | 0..n (4, 10) |
| checkpoint-pages | Anzahl der dirty Pages, die pro Sekunde geflushed werden | 0..n () |
| database-free | Freier Speicherplatz in einer Datenbank | 0%..100% (5%, 2%) |
| database-backup-age | Verstrichene Zeit seit dem letzten Backup einer Datenbank (in Stunden). Die Performancedaten beinhalten auch die Dauer des Backups (in Minuten). | 0..n |
| sql | Ergebnis eines beliebigen SQL-Befehls, der eine Zahl zurückliefert. Der Befehl selbst wird mit dem Parameter –name übergeben. Ein Label für Performncedaten kann mit dem Parameter –name2 übergeben werden. Mit dem Parameter –units kann die Ausgabe um Einheiten ergänzt werden (%, c, s, MB, GB,.. Wenn der SQL-Befehl Sonder- und Leerzeichen enthält, kann er mit dem mode encode zuerst encodiert werden. | 0..n |
| list-databases | Gibt eine Liste aller Datenbanken aus | |
| list-locks | Gibt eine Liste aller Locks aus |
Es ist zu beachten, daß Schwellwerte entsprechend den Nagios Developer Guidelines anzugeben sind.
“10″ bedeutet demzufolge “Alarm, wenn > 10″ und
“90:” bedeutet “Alarm, wenn < 90″
Vorbereitung der Datenbank
Damit sich das Plugin die benötigten Informationen aus der Datenbank holen kann, muss ein Benutzer angelegt werden, der über gewisse Privilegien verfügt.
Am einfachsten ist es, dem Nagios-Benutzer die Rolle “serveradmin” zuzuweisen. Alternativ kann man sich auch gleich als Benutzer “sa” an der Datenbank anmelden. Allerdings stellt diese Methode ein grosses Sicherheitsrisiko dar, da in den Konfigurationsdateien von Nagios das Administratorpasswort des SQL Servers im Klartext vorliegt.
Von Birk Bohne stammt das folgende Script, mit dem die Einrichtung eines minimal, aber ausreichend privilegierten Monitoring-Users automatisiert werden kann.
declare @dbname varchar(255) declare @check_mssql_health_USER varchar(255) declare @check_mssql_health_PASS varchar(255) declare @check_mssql_health_ROLE varchar(255) declare @source varchar(255) declare @options varchar(255) declare @backslash int /*******************************************************************/ SET @check_mssql_health_USER = '"[Servername|Domainname]\Username"' SET @check_mssql_health_PASS = 'Password' SET @check_mssql_health_ROLE = 'Rolename' /******************************************************************* PLEASE CHANGE THE ABOVE VALUES ACCORDING TO YOUR REQUIREMENTS - Example for Windows authentication: SET @check_mssql_health_USER = '"[Servername|Domainname]\Username"' SET @check_mssql_health_ROLE = 'Rolename' - Example for SQL Server authentication: SET @check_mssql_health_USER = 'Username' SET @check_mssql_health_PASS = 'Password' SET @check_mssql_health_ROLE = 'Rolename' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! It is strongly recommended to use Windows authentication. Otherwise you will get no reliable results for database usage. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *********** NO NEED TO CHANGE ANYTHING BELOW THIS LINE *************/ SET @options = 'DEFAULT_DATABASE=MASTER, DEFAULT_LANGUAGE=English' SET @backslash = (SELECT CHARINDEX('\', @check_mssql_health_USER)) IF @backslash > 0 BEGIN SET @source = ' FROM WINDOWS' SET @options = ' WITH ' + @options END ELSE BEGIN SET @source = '' SET @options = ' WITH PASSWORD=''' + @check_mssql_health_PASS + ''',' + @options END PRINT 'CREATE Nagios plugin user ' + @check_mssql_health_USER EXEC ('CREATE LOGIN ' + @check_mssql_health_USER + @source + @options) EXEC ('USE MASTER GRANT VIEW SERVER STATE TO ' + @check_mssql_health_USER) PRINT 'User ' + @check_mssql_health_USER + ' created.' PRINT '' declare dblist cursor for select name from sysdatabases WHERE name NOT IN ('master', 'tempdb', 'msdb') open dblist fetch next from dblist into @dbname while @@fetch_status = 0 begin EXEC ('USE ' + @dbname + ' print ''GRANT permissions IN the db '' + ''"'' + DB_NAME() + ''"''') EXEC ('USE ' + @dbname + ' CREATE ROLE ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' GRANT EXECUTE TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' GRANT VIEW DATABASE STATE TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' GRANT VIEW DEFINITION TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' CREATE USER ' + @check_mssql_health_USER + ' FOR LOGIN ' + @check_mssql_health_USER) EXEC ('USE ' + @dbname + ' EXEC sp_addrolemember ' + @check_mssql_health_ROLE + ' , ' + @check_mssql_health_USER) EXEC ('USE ' + @dbname + ' print ''Permissions IN the db '' + ''"'' + DB_NAME() + ''" granted.''') fetch next from dblist into @dbname end close dblist deallocate dblist
Es ist zu beachten, dass bei Verwendung von “SQL Server authentication” check_mssql_health nur noch eingeschränkt verwendet werden kann. Von dieser Authentifizierungsmethode wird daher dringend abgeraten. Üblicherweise gibt es auf dem Datenbankserver sowieso einen Nagios-(Windows-)Benutzer (z.B. für die Installation von NSClient++ o.ä.), so dass man diesen für die “Windows authentication” verwenden kann. Ein weiteres Script vom selben Autor entfernt den Monitoring-User wieder aus der Datenbank.
declare @dbname varchar(255) declare @check_mssql_health_USER varchar(255) declare @check_mssql_health_ROLE varchar(255) SET @check_mssql_health_USER = '"[Servername|Domainname]\Username"' SET @check_mssql_health_ROLE = 'Rolename' declare dblist cursor FOR SELECT name FROM sysdatabases WHERE name NOT IN ('master', 'tempdb', 'msdb') open dblist fetch next FROM dblist INTO @dbname while @@fetch_status = 0 begin EXEC ('USE ' + @dbname + ' print ''Revoke permissions in the db '' + ''"'' + DB_NAME() + ''"''') EXEC ('USE ' + @dbname + ' EXEC sp_droprolemember ' + @check_mssql_health_ROLE + ' , ' + @check_mssql_health_USER) EXEC ('USE ' + @dbname + ' DROP USER ' + @check_mssql_health_USER) EXEC ('USE ' + @dbname + ' REVOKE VIEW DEFINITION TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' REVOKE VIEW DATABASE STATE TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' REVOKE EXECUTE TO ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' DROP ROLE ' + @check_mssql_health_ROLE) EXEC ('USE ' + @dbname + ' print ''Permissions in the db '' + ''"'' + DB_NAME() + ''" revoked.''') fetch next FROM dblist INTO @dbname end close dblist deallocate dblist PRINT '' PRINT 'drop Nagios plugin user ' + @check_mssql_health_USER EXEC ('USE MASTER REVOKE VIEW SERVER STATE TO ' + @check_mssql_health_USER) EXEC ('DROP LOGIN ' + @check_mssql_health_USER) PRINT 'User ' + @check_mssql_health_USER + ' dropped.'
An dieser Stelle nochmals herzlichen Dank an Birk Bohne für diese praktischen Scripts.
Beispiele
nagsrv$ check_mssql_health --mode mem-pool-data-buffer-hit-ratio CRITICAL - buffer cache hit ratio is 71.21% | buffer_cache_hit_ratio=71.21%;90:;80: nagsrv$ check_mssql_health --mode batch-requests OK - 9.00 batch requests / sec | batch_requests_per_sec=9.00;100;200 nagsrv$ check_mssql_health --mode full-scans OK - 6.14 full table scans / sec | full_scans_per_sec=6.14;100;500 nagsrv$ check_mssql_health --mode cpu-busy OK - CPU busy 55.00% | cpu_busy=55.00;80;90 nagsrv$ check_mssql_health --mode database-free --name AdventureWorks OK - database AdventureWorks has 21.59% free space left | 'db_adventureworks_free_pct'=21.59%;5:;2: 'db_adventureworks_free'=703MB;4768371582.03:;1907348632.81:;0;95367431640.62 nagsrv$ check_mssql_health --mode database-free --name AdventureWorks \ --warning 700: --critical 200: --units MB WARNING - database AdventureWorks has 694.12MB free space left | 'db_adventureworks_free_pct'=21.31%;0.00:;0.00: 'db_adventureworks_free'=694.12MB;700.00:;200.00:;0;95367431640.62 nagsrv$ check_mssql_health --mode page-life-expectancy OK - page life expectancy is 8950 seconds | page_life_expectancy=8950;300:;180: nagsrv$ check_mssql_health --mode database-backup-age --name AHLE_WORSCHT \ --warning 72 --critical 120 WARNING - AHLE_WORSCHT backupped 102h ago | 'AHLE_WORSCHT_bck_age'=102;72;120 'AHLE_WORSCHT_bck_time'=12
Verwendung von Environmentvariablen
Man kann die Parameter –hostname, –port (oder die Alternative –server), –username und –password ganz weglassen, wenn man die entsprechenden Daten in Environmentvariablen bereitstellt. Seit der Version 3.x kann man Servicedefinitionen in Nagios um eigene Attribute (custom object variables) erweitern. Diese tauchen dann bei der Ausführung des Checkcommands im Environment auf.
Die Environmentvariablen heissen:
- NAGIOS__SERVICEMSSQL_HOST (_mssql_host in der Servicedefinition)
- NAGIOS__SERVICEMSSQL_USER (_mssql_user in der Servicedefinition)
- NAGIOS__SERVICEMSSQL_PASS (_mssql_pass in der Servicedefinition)
- NAGIOS__SERVICEMSSQL_PORT (_mssql_port in der Servicedefinition)
- NAGIOS__SERVICEMSSQL_SERVER (_mssql_server in der Servicedefinition)
Installation
Dieses Plugin setzt die Installation des Perl-Moduls DBD::Sybase voraus.
Nach dem Auspacken des Archivs wird ./configure aufgerufen. Mit ./configure –help können Optionen angezeigt werden, die für den Bau des Plugins einige Defaulteinstellungen liefern.
- –prefix=BASEDIRECTORY Geben Sie hier das Verzeichnis an, in dem check_mysql_health liegen soll. (default: /usr/local/nagios)
- –with-nagios-user=SOMEUSER Dieser User wird der Eigentümer der Datei check_mysql_health sein. (default: nagios)
- –with-nagios-group=SOMEGROUP Die Gruppe des check_mysql_health Binaries. (default: nagios)
- –with-perl=PATHTOPERL Geben sie hier den Pfad zum Perl-Interpreter an, den sie benutzen möchten. (default: perl im PATH)
Sicherheitshinweis
Das Perl-Modul DBD::Sybase setzt auf einer Installation von FreeTDS auf. Dieses Paket wickelt die Kommunikation mit dem Datenbankserver ab. In der Defaulteinstellung wird dabei leider eine Protokolversion 4.x benutzt, bei der Passwörter im Klartext über das Netzwerk geschickt werden. Bitte ändern sie daher unbedingt folgenden Parameter in der Datei /etc/freetds.conf
[global] # TDS protocol version # tds version = 4.2 tds version = 8.0
Instanzen
Befinden sich mehrere “named instances” auf demselben Port eines Datenbankservers, so muss man diese in der /etc/freetds.conf einzeln registrieren.
[dbsrv1instance01]
host = 192.168.1.19
port = 1433
instance = instance01
[dbsrv1instance02]
host = 192.168.1.19
port = 1433
instance = instance02Danach adressiert man die Instanzen z.B. mit –server dbsrv1instance02. Ansonsten würde man mit –host 192.168.1.19 –port 1433 die Defaultinstanz erreichen.
Download
check_mssql_health-1.5.3.tar.gz
Changelog
- 2009-11-02 1.5.3 Bugfix in database-free (Danke robbyck). Neues Feature mode=database-backup-age
- 2009-09-20 1.5.2 Datenbanknamen dürfen Sonderzeichen enthalten (Danke Hugh Ranalli)
- 2009-05-26 1.5.1 Neuer Parameter –server (Danke Mark Monahan), Kompatibilität zu SQL Server 2000 (Danke Mereghretti Stefano)
- 2009-04-29 1.5.0.1 Bugfix in database-free (Danke Michael Lübben), Syntaxfehler beseitigt (Danke Bernd Staudacher), Sicherheitshinweis ergänzt (Danke Mathieu Barret)
- 2009-03-21 1.5 Unterstützung von –method sqlrelay. database-free berücksichtigt bei unrestricted growth den freien Plattenplatz.
- 2009-03-19 1.2 Unterstützung von Installationen mit object_name <> SQLServer (beseitigt etliche “unable to aquire…”-Fehlermeldungen)
- 2009-03-11 1.1 erste öffentliche Version
Copyright
2009 Gerhard Laußer
Check_mssql_health wird unter der GNU General Public License zur Verfügung gestellt. GPL
Autor
Gerhard Laußer (gerhard.lausser@consol.de) beantwortet gerne Fragen zu diesem Plugin.
76 Responses to “check_mssql_health”
-
axel Says:
October 13th, 2009 at 9:54cool
[Reply]
-
david Says:
October 25th, 2009 at 22:57thank you. Could you translate instructions ?
[Reply]
-
Ron Says:
October 27th, 2009 at 20:14Nice tool, got it setup completely and it’s monitoring SQL servers, however I can’t seem to monitor instances, always got an error, any idea how to work around this?
Cheers, Ron
[Reply]
lausser Reply:
October 29th, 2009 at 20:42You are surely using −−hostname … −−port. This is ok, as long as you only have the default instance. If you want to address particular instances, −−server is the way to go. You need to add a section to the /etc/freetds.conf file.
[myinst1] host = 192.168.1.100 port = 1433 instance = myinstance1
…
Now you can call check_mssql_health −−server myinst1 (this is the title of the section describing the instance).
Gerhard
[Reply]
-
Jason Says:
November 4th, 2009 at 18:08Thanks for this tool
[Reply]
-
Ron Says:
November 5th, 2009 at 10:48Thanks Gerhard! That did the trick :)
[Reply]
-
Diego Fernández Says:
November 5th, 2009 at 18:36Hi, I’m testing your plugin and it works fine except lock options that return:
unable to aquire lock info
Sorry for my very bad english.
Thanks. Diego
[Reply]
-
Birk Bohne Says:
November 6th, 2009 at 17:13I have tested the needed permissions for a non sa user to run the checks. The external Windows user is needed because of an internal non sa user gets an empty return from “exec master.dbo.xp_fixeddrives” and that produces wrong results for the “database-free” check. So first you must create a Windows user (domain or local) without admin rights on the sql server and then you can create the needed permissions with the following script.
CREATE LOGIN “SERVERNAME or DOMAIN\nagios_mssql_health” FROM WINDOWS WITH DEFAULT_DATABASE=MASTER, DEFAULT_LANGUAGE=English;
USE MASTER GRANT VIEW SERVER STATE to “SERVERNAME or DOMAIN\nagios_mssql_health”
USE MODEL CREATE ROLE db_nagios_mssql_health GRANT EXECUTE TO db_nagios_mssql_health GRANT VIEW DATABASE STATE TO db_nagios_mssql_health GRANT VIEW DEFINITION TO db_nagios_mssql_health CREATE USER “SERVERNAME or DOMAIN\nagios_mssql_health” FOR LOGIN “SERVERNAME or DOMAIN\nagios_mssql_health”; EXEC sp_addrolemember ‘db_nagios_mssql_health’, “SERVERNAME or DOMAIN\nagios_mssql_health”
USE DB1 CREATE ROLE db_nagios_mssql_health GRANT EXECUTE TO db_nagios_mssql_health GRANT VIEW DATABASE STATE TO db_nagios_mssql_health GRANT VIEW DEFINITION TO db_nagios_mssql_health CREATE USER “SERVERNAME or DOMAIN\nagios_mssql_health” FOR LOGIN “SERVERNAME or DOMAIN\nagios_mssql_health”; EXEC sp_addrolemember ‘db_nagios_mssql_health’, “SERVERNAME or DOMAIN\nagios_mssql_health”
USE DB2 CREATE ROLE db_nagios_mssql_health GRANT EXECUTE TO db_nagios_mssql_health GRANT VIEW DATABASE STATE TO db_nagios_mssql_health GRANT VIEW DEFINITION TO db_nagios_mssql_health CREATE USER “SERVERNAME or DOMAIN\nagios_mssql_health” FOR LOGIN “SERVERNAME or DOMAIN\nagios_mssql_health”; EXEC sp_addrolemember ‘db_nagios_mssql_health’, “SERVERNAME or DOMAIN\nagios_mssql_health”
Then the nagios checks are like “check_mssql_health -server sql1 -username sql1\nagios_mssql_health -password PW -name DB1 -mode database-free”. Enumerating all non system databases and set the needed permission would be nice for the db script. I have tested it will all checks in version 1.5.3 on Windows 2003 R2 SP2 and SQL2005 SP2.
greetings Birk
[Reply]
-
Andrey Says:
November 19th, 2009 at 15:51Thanks for this detailed description in English!
[Reply]
-
Jens Says:
November 30th, 2009 at 11:35Hi,
Also nachdem ich alle Probleme mit DBD:Sybase irgendwie in den Griff bekommen habe, erhalte ich bei egal welcher Abfrage nur die Ausgabe Speicherzugriffsfehler. Gibt es eine Art von Debug-Modus, um den Fehler einzugrenzen?
[Reply]
-
BorisPlus Says:
December 3rd, 2009 at 20:24Hello. I wrote message to your mail. I have some strange problem with this plugin. help me, please.
[Reply]
-
CTAC Says:
December 4th, 2009 at 5:38version 1.5.3
./configure –with-mymodules-dyn-dir=/usr/lib/nagios/plugins –with-mymodules-dir=/usr/lib/nagios/plugins –with-statefiles-dir=/var/lib/nagios
but
make install
makes:
test -z “/usr/local/nagios/libexec” || /bin/mkdir -p “/usr/local/nagios/libexec” /usr/bin/install -c ‘check_mssql_health’ ‘/usr/local/nagios/libexec/check_mssql_health’
please fix it and may be you find time to create an SPEC-file for rpmbuild, please!
[Reply]
-
Dietmar Says:
December 8th, 2009 at 12:29Hallo Herr Laußer,
ich teste gerade Ihr Plugin check_mssql_health in der Version 1.5.3.
Leider ohne Erfolg :-(
Ich erhalte für folgenden Befehl: root@dumon01:/usr/local/nagios/libexec# ./check_mssql_health –hostname duna1 –username sa –password PassworD –mode connected-users
folgende Ausgabe: CRITICAL – cannot connect to duna1. DBI connect(‘;host=duna1;port=1433′,’sa’,…) failed: (no error string) at ./check_mssql_health line 1977
Ein Test mit tsql und den Anmeldedaten funktioniert einwandfrei.
Viele Grüsse aus Duisburg Dietmar
[Reply]
lausser Reply:
December 8th, 2009 at 14:59Versuchen sie es bitte mit folgendem Miniscript:
use strict; use warnings; use DBI; my $dsn = "DBI:Sybase:"; my $hostname = 'duna1'; my $port = '1433'; my $server = undef; if ($hostname) { $dsn .= sprintf ";host=%s", $hostname; $dsn .= sprintf ";port=%s", $port; } else { $dsn .= sprintf ";server=%s", $server; } if (my $dbh = DBI->connect( $dsn, "sa", "PassworD", { RaiseError => 1, AutoCommit => 0, PrintError => 1 })) { printf 'connected\\n'; $dbh->disconnect(); } else { printf 'could not connect: %s\\n', DBI::errstr(); }
Aus den doppelten Backslashes muss man jeweils einen einfachen Backslash machen. (Mein Editor spinnt…)
[Reply]
-
Dietmar Says:
December 16th, 2009 at 17:06Hallo Herr Laußer, habe das Miniscript getestet. Leider ohner Erfolg :-( Hier die Ausgabe: root@dumon01:~# perl ./test.pl DBI connect(‘;host=duna1;port=1433′,’sa’,…) failed: (no error string) at ./test.pl line 14 root@dumon01:~#
Ich habe keine Idee was es sein könnte.
[Reply]
Dietmar Reply:
December 16th, 2009 at 17:55Hallo Herr Laußer, das Script von TheCry (http://www.icinga-portal.org/wbb/index.php?page=Thread&threadID=14547) funktioniert bei mir ohne Probleme.Ich habe in der /etc/freetds/freetds.conf keinen Server konfiguriert, nur unter [global] die tds version = 8.0 gesetzt. Viele Grüsse, Dietmar
[Reply]
-
Ross Says:
December 22nd, 2009 at 17:39In Nagios, the output of ‘list-databases’ mode shows just the first database name (ReportServer) instead of showing the entire list of DBs. In the command-line, however, check_mssql_health shows the complete list (a \n separated list). Perhaps the ‘\n’ character is interpreted by nagios as special char, so it shows just the first line and not the others. How can I modify the output so that the db list is done by a ‘;’ separated list (for example) ?
[Reply]
lausser Reply:
December 23rd, 2009 at 11:00Since version 3 Nagios can read multiple lines of plugin output. Maybe you still have a 2.x version?
[Reply]
Ross Reply:
December 23rd, 2009 at 11:17@lausser, no, I have the latest 3.2.0.
This is the line in Nagios:
SQL Server DB Lists OK 12-23-2009 10:01:13 0d 7h 9m 3s 1/3 ReportServer
Instead, the execution via shell of the same command yields:
ReportServer ReportServerTempDB master model msdb prova tempdb OK – have fun
My system is CentOS 5.4, Apache 2.2.3, Nagios 3.2.0, check_mssql_health 1.5.3…
[Reply]
lausser Reply:
December 23rd, 2009 at 20:59Strange…maybe when run in the Nagios environment it does not find databases at all. Please create the file /tmp/check_mssql_health.trace and watch it with tail -f. You should see the command “SELECT name, database_id FROM master.sys.databases” and then a list of database names as the result. Maybe for an unknown reason this list is empty.
[Reply]
Ross Reply:
December 24th, 2009 at 12:29It’s not empty. At least, the first one is there! Ok, I look at that, better. In the “Services” page in Nagios (the page that lists all the defined services in the network), just the first DB is shown (ReportServer). Nevertheless, clicking on the link of that service, a detailed view of the service is presented, and here all databases are listed! So, it seems like a visualization problem in the Services page in Nagios, not in your plugin. So, if you want to see all databases, you have to click on the related link of the service, the one that shows a detailed view of the service… Yes, it’s a bit uncomfortable, but it works.
[Reply]
-
augustinus Says:
January 10th, 2010 at 16:50Hallo Gerhard,
ich habe eine Frage zu den Environment-Variablen. Kann ich diese auch in den eigenen Modulen (CheckMssqlHealthX.pm) abfragen und verwenden? %ENV habe ich schon ausprobiert, das hilft offenbar nix.
Viele Grüße
[Reply]
lausser Reply:
January 10th, 2010 at 19:26Welche meinst du damit speziell? Es sollte kein Problem sein, z.B. $ENV{HOME} zu verwenden, da der Code eigener Module im gleichen Prozess ausgeführt wird wie das Plugin selbst.
[Reply]
augustinus Reply:
January 11th, 2010 at 12:40Hallo Gerhard,
sorry aber ich habe ich habe gestern wohl versucht die Variable innerhalb des q{}-Blocks anzusprechen. Das kann natürlich nicht gehen.
Ich habe jetzt das SQL-Statement in einen spearaten String ausgelagert, damit klappt das dann auch.
Viele Grüße und vielen lieben Dank.
Andi
[Reply]
-
Bernd Says:
February 2nd, 2010 at 14:24Hallo,
ich hab leider ein Problem bei der Erstellung des Benutzers mit dem obigen Script (SQL-Server 2008):
Ich bekomme folgende Fehlermeldungen: Msg 102, Level 15, State 1, Line 35 Incorrect syntax near ‘;’. Msg 156, Level 15, State 1, Line 40 Incorrect syntax near the keyword ‘ELSE’.
-> Im Script betrifft dies folgende Zeilen: Msg 102, Level 15, State 1, Line 35 Incorrect syntax near ‘;’. Msg 156, Level 15, State 1, Line 40 Incorrect syntax near the keyword ‘ELSE’.
Kenne mich leider mit dem Scripting nicht so aus & hoffe auf eure Unterstützung.
LG, Bernd
[Reply]
Bernd Reply:
February 2nd, 2010 at 14:26@Bernd, es sind folgende Zeilen betroffen: SET @backslash = (SELECT CHARINDEX(‘\’, @check_mssql_health_USER)) IF @backslash > 0 BEGIN SET @source = ‘ FROM WINDOWS’ SET @options = ‘ WITH ‘ + @options END ELSE
[Reply]
lausser Reply:
February 2nd, 2010 at 15:16Tut mir leid, da hat WordPress wieder mal im Sourcecode des Scripts rumgepfuscht. Kopiers dir in einen Editor und ersetze die Zeichenfolge " durch ein Anführungszeichen (doppeltes Hochkomma) sowie die Zeichenfolge > durch ein “grösser”-Zeichen (spitze Klammer rechts). Du findest die Scripts auch zum Download unter http://www.nagios-das-praxisbuch.de/?page_id=10
[Reply]
-
tio Says:
February 18th, 2010 at 11:53hi lausser i got the problem like this : CRITICAL – cannot connect to 172.17.80.88. DBI connect(‘;host=172.17.80.88;port=1433′,’domain\\username’,…) failed: (no error string) at /usr/lib/nagios/plugins/check_mssql_health line 1977
can you give me the solution please … thanks lausser
[Reply]
lausser Reply:
February 20th, 2010 at 0:06Are you 100% sure you can reach the database server? Try this first:
tsql -H 172.17.80.88 -p 1433 -U <username> -P <password>
[Reply]
-
Rob Says:
February 20th, 2010 at 1:56sql -H server -p port -U -P locale is “en_US.UTF-8″ locale charset is “UTF-8″ 1> quit but when I run ./check_mssql_health -d -hostname edc-syspulsedb -username edit -password edit –mode connection-time -database QDB -warning 5 -critical 10 CRITICAL – cannot connect to server. DBI connect(‘;host=edc-syspulsedb;port=1433′,’edit’,…) failed: (no error string) at ./check_mssql_health line 1907. Any help would be greatly appreciated.
Rob
[Reply]
-
robbyck Says:
February 20th, 2010 at 2:08The above post is with 1.5.2 where it states line 1907. With version 1.5.3 it is line 1977.
Thanks, Rob
[Reply]
-
Phil Yardley Says:
February 20th, 2010 at 12:00Hi, I’m getting the following error through Nagios when running the plug in… I’m not sure if it’s to do with the login or something else? any assistance would be appreciated..
the error is: CRITICAL – cannot connect to 192.168.0.20. DBI connect(‘:host=192.168.0.20:port=1433′,’DRLNagiosmonitor’,…) failed: (no error string) at /usr/local/nagios/libexec/check_mssql_health line 1977
No matter how I put the DOAMIN\username in to the command file, it doesn’t seem to output as I expect !
my command line in nagios is:
‘check_mssql’ command definition
define command{ command_name check_mssql command_line $USER1$/check_mssql_health -hostname $HOSTADDRESS$ -username DRL\\Nagiosmonitor -password xXxXxX -port 1433 -mode $ARG1$ -warning $ARG2$ -critical $ARG3$ }
thanks.
Phil
[Reply]
lausser Reply:
February 22nd, 2010 at 11:55Please download this mini-testscript. mssql_mini_test Maybe it’s the domain\\username you’re using.
[Reply]
Phil Yardley Reply:
February 23rd, 2010 at 0:42@lausser, Thanks Lausser, the output is as follows:
connecting as user drl\nagiosmonitor DBI connect(‘;host=drlXXxxXXxx;port=1433′,’drl\nagiosmonitor’,…) failed: (no error string) at test.pl line 41
Does this help?
thanks
[Reply]
Phil Yardley Reply:
February 24th, 2010 at 1:12Hi Lausser,
Getting somewhere :)
By using the –server option and defining the servers in the freetds.conf – I can get one of the servers a little further (I think)
I am now getting the error: ct_result(ct_dynamic(CS_PREPARE)) returned 15 at /usr/lib/perl5/DBD/Sybase.pm line 124. DBD::Sybase::db prepare failed: Server message number=8009 severity=16 state=1 line=1 server=DRLSQL3text=The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 4 (“”): Data type 0×38 is unknown. at check_mssql_health line 2007. UNKNOWN – unable to aquire counter data
Any pointers?
thanks
[Reply]
lausser Reply:
February 24th, 2010 at 1:42So you’re using the plugin, not the mini_test? Please use the latter, as the problem must be somewhere in the DBD::Sybase module or the freetds lib. If you follow this thread http://www.icinga-portal.org/wbb/index.php?page=Thread&threadID=15173 you’ll see, some guy had the same error messages “Server message number=8009….” and found a solution. Maybe this works for you too.
[Reply]
-
robbyck Says:
February 22nd, 2010 at 23:11Here is what I get when I run the test script. DBI connect(‘;host=;port=1433′,”,…) failed: (no error string) at mssql_mini_test line 41
[Reply]
lausser Reply:
February 23rd, 2010 at 15:53So there is no “connecting as user ….” in your output. Very strange. Maybe you should ask here http://search.cpan.org/~mewp/DBD-Sybase-1.09/Sybase.pm for help. If the mini-script does not work, there’s not much i can do.
[Reply]
-
angry_admin Says:
February 24th, 2010 at 13:49http://ideas.nagios.org/a/dtd/22035-3955
[Reply]
-
robbyck Says:
February 25th, 2010 at 0:30After recompiling DBD::Sybase I got it to work on Ubuntu. robbyck
[Reply]
lausser Reply:
February 25th, 2010 at 2:49Did you recompile DBD::Sybase out of the box or did you have to add these #undefs in dbdimp.c as described in the http://www.icinga-portal.de link above?
[Reply]
-
vincenzo Says:
March 4th, 2010 at 16:01Do you have more detailed installation instructions for a linux newbie?
[Reply]
-
Michael Says:
March 19th, 2010 at 15:34Guten Tag zusammen,
ich habe ein Problem beim Einbinden des check_mssql_health. Starte ich den check auf der Kommandozeilenebene ./check_mssql_health -hostname xxx.xxx.xxx.xxx-username SDSINT\\nagios -password geheim -port 1433 -mode connected-users -warning 100 -critical 300
klappt alles wunderbar :
OK – 73 connected users | connected_users=73;100;300
Versuch ich das ganze aus Nagios mit dem eintrag in der hosts.cfg
define service{ host_name sds11-sv000mv2 service_description MS-SQL Connected User test check_command check_mysql!xxx.xxx.xxx.xxx!SDSINT\\nagios!geheim!1433!connected-users!100!300 contact_groups nagiosadmin use template-service } und dem entspechenden Eintrag in der checkcammads.cfg
Überwachung MS-SQL
define command { command_name check_mysql command_line $USER1$/check_mssql_health -hostname $HOSTADDRESS$ -username $ARG1$ -password $ARG2$ -port $ARG3$ -mode $ARG4$ -warning $ARG5$ -critical $ARG6$ # Argumente : # $ARG1$ = Datenbankuser # $ARG2$ = Userpassword # $ARG3$ = Datenbankport # $ARG4$ = Abfragemodi # $ARG5$ = Warnschwelle # $ARG6$ = Alarmschwelle } klappt nichts :
CRITICAL – cannot connect to 10.55.112.14. DBI connect(‘:host=10.55.112.14:port=1433′,’SDSINTnagios’,…) failed: Server message number=18456 severity=14 state=1 line=1 server=SV000MV2SV000MV2_INST text=Login failed for user ‘SDSINTnagios’.OpenClient message: LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (34)
Google hat mir da auch nicht wirklich weitergeholfen.
HILFE
[Reply]
lausser Reply:
March 22nd, 2010 at 2:57http://www.mail-archive.com/nagios-users@lists.sourceforge.net/msg25694.html Ist wohl ein Problem mit den Backslashes in der Servicedefinition.
[Reply]
-
Michael Says:
March 24th, 2010 at 16:21Danke für den Hinweis gelöst habe ich es über die ressource.cfg
Da klappt es dann auch
[Reply]
-
Benoit P. Says:
March 30th, 2010 at 16:19Hello,
I have a little problem with the script, i’m unable to specify a TCP port, the script exist with no error and he doesn’t even try to connect to the server (no trace with tcpdump) :
/usr/local/nagios/libexec/check_mssql_health –hostname=10.66.149.10 –port=1235 –mode=connected-users –username=nagios –password=ziplepingouin CRITICAL – cannot connect to 10.66.149.10. DBI connect(‘;host=10.66.149.10;port=1235′,’nagios’,…) failed: (no error string) at /usr/local/nagios/libexec/check_mssql_health line 1977
Any idea ? Regards.
[Reply]
lausser Reply:
March 30th, 2010 at 17:13Please scroll up and you’ll find a small Perl-script for testing purposes (hostname duna1). Change $hostname and $port and try it with your own ip and port. (and watch out for the double backslashes in the printf statements. these must be single backslashes). Do you get a “connected” message?
[Reply]
-
Benoit P. Says:
April 1st, 2010 at 9:30Hello,
Same problem with the little test script.
monitor:~# perl test.pl
DBI connect(‘;host=10.66.149.10;port=1235′,’nagios’,…) failed: (no error string) at test.pl line 14
But i think i have found the root problem My perl package of DBD-Sybase is version 1.00 witch do not implement connexion with host/port. (i’m under Debian).
[Reply]
-
Alex Says:
April 2nd, 2010 at 23:26Hello Guys,
Question about the SQL script section: /*******************************************************************/ SET @check_mssql_health_USER = ‘"[Servername|Domainname]\Username"’ SET @check_mssql_health_PASS = ‘Password’ SET @check_mssql_health_ROLE = ‘Rolename’ /******************************************************************* which is supposed to give “minimal, yet sufficient privileged monitoring-user.” What should I replace ‘Rolename’ with to get minimal/sufficient access?
Thank you,
AK
[Reply]
lausser Reply:
April 3rd, 2010 at 1:36You can replace ‘Rolename’ with whatever string you want (whatever fits your company’s naming conventions best) because this role will be created later in the script.
[Reply]
-
Birk Bohne Says:
April 21st, 2010 at 18:27Today i had run into a Windows login problem on a sql Server. I have done the same configuration steps as on a other server that has no login problems.
./check_mssql_health -server sqlserver001 -username sqlserver001\\nagios_mssql_health -password PASS -warning 5 -critical 5 -mode connection-time CRITICAL – cannot connect to sqlserver001. DBI connect(‘;server=sqlserver001′,’sqlserver001\nagios_mssql_health’,…) failed: Server message number=18452 severity=14 state=1 line=1 server=sqlserver001 text=Fehler bei der Anmeldung für den Benutzer ”. Der Benutzer ist keiner vertrauenswürdigen SQL Server-Verbindung zugeordnet.OpenClient message: LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (46) Server sqlserver001, database Message String: Login incorrect.
The problem is that the username string is longer the 32 chars (sqlserver001\\nagios_mssql_health). The machine without the login problems has the same username but a shorter hostname. So i have shortend the username and then the plugin works without problems.
./check_mssql_health -server sqlserver001 -username sqlserver001\\nagios_mssql -password PASS -warning 5 -critical 5 -mode connection-time OK – 0.04 seconds to connect as sqlserver001\nagios_mssql | connection_time=0.04;5;5
You can see the cutoff logon string if you enable the debug mode within the freetds.conf.
dump file = /tmp/freetds.log dump file append = yes debug level = 99
greetings Birk
[Reply]
-
Stefan Senftleben Says:
April 23rd, 2010 at 10:41Hallo! Funktioniert das Skript von Birk Bohne auch mit SQL2000-Servern? Grüße Stefan
[Reply]
lausser Reply:
April 26th, 2010 at 17:27Ich will meine Hand nicht dafür ins Feuer legen, aber ich würde sagen, es ist auch für SQL2000 geeignet.
[Reply]
Birk Bohne Reply:
April 27th, 2010 at 16:12Ich habe es nur mit SQL2005 getestet. Demnächst werde ich es für SQL2008 brauchen, aber SQL2000 DB’s habe ich leider keine mehr.
Gruß Birk
[Reply]
-
Rick Says:
May 5th, 2010 at 18:00I have had this working for several months monitoring many sql servers but all of the sudden the status reports as mumms. What does that mean?
[Reply]
lausser Reply:
May 10th, 2010 at 0:11I have no idea. “It worked and now it doesn’t work” means, something was changed.
[Reply]
-
cosmefulanito Says:
May 17th, 2010 at 22:25hi, i have this error
CRITICAL – cannot connect to nt03. Can’t locate DBI.pm in @INC (@INC contains: . /usr/lib/perl5/site_perl/5.10.1
any idea how to work around this?
[Reply]
lausser Reply:
May 18th, 2010 at 0:19You need the perl modules DBI (as the error message says) and DBD::Sybase as well as the freetds software.
[Reply]
-
DNESH Says:
May 18th, 2010 at 4:54How do you pronounce NAGIOS, is it using a soft G or a hard one?
Thanks
[Reply]
lausser Reply:
May 18th, 2010 at 13:01It’s a hard G: http://community.nagios.org/2007/02/20/nagios-pronunciation/
[Reply]
-
Tapan Says:
May 20th, 2010 at 19:44Hi,
I am trying to monitor MSSQL IO Busy and CPU busy check but i am getting below mentioned error under nagios however if i fire the same command in nagios server then output is just fine. Fyi i am able to monitor connected users and connection time with nagios perfectly.
**ePN /usr/lib/nagios/plugins/libexec/check_mssql_health: “printf() on closed filehandle STATE at (eval 10) line 1647,”.
Please suggest.
Regards Tapan Thapa
[Reply]
-
Tapan Says:
May 21st, 2010 at 17:37For those who are facing the same type of ssue, i am replying to my own post. I am able to monitor mssql stats, if i put command like this in nagios:
/usr/bin/perl check_mssql_health -server xx.xx.xx.xx -username xxxxxx -password xxxxxx -mode transactions
define command{ command_name check_iis command_line $USER2$ /usr/lib/nagios/plugins/check_iis $HOSTADDRESS$ }
Where in $USER2$ point to /usr/bin/perl in resource.cfg
Regards Tapan Thapa
[Reply]
-
bigpeti Says:
June 18th, 2010 at 9:30Hi, With check_mssql_health_1.5.3 I have this error too:
root@nagiossrv:/usr/local/nagios/libexec# perl check_mssql_health –host xxx.xxx.xxx.xxx –port 1433 –username sa –password Password –mode connection-time
CRITICAL – cannot connect to xxx.xxx.xxx.xxx. DBI connect(‘;host=xxx.xxx.xxx.xxx;port=1433′,’sa’,…) failed: (no error string) at check_mssql_health line 1977
But I tried check_mssql_health_1.5.1. The error disappeared, but I have two other.:
root@nagiossrv:/usr/local/nagios/libexec# perl check_mssql_health –host xxx.xxx.xxx.xxx –port 1433 –username sa –password Password –mode connection-time
Use of uninitialized value in concatenation (.) or string at check_mssql_health line 968. Use of uninitialized value in sprintf at check_mssql_health line 1212. OK – 0.03 seconds to connect as | connection_time=0.03;1;5
I copy this two lines here. Can you help me?
965 if (lc $self->{servicename} ne ‘mssqlserver’) { 966 # braucht man fuer abfragen von dm_os_performance_counters 967 # object_name ist entweder “SQLServer:Buffer Node” oder z.b. “MSSQL$OASH: Buffer Node” 968 $self->{servicename} = ‘MSSQL$’.$self->{servicename}; 969 } else { 970 $self->{servicename} = ‘SQLServer’; 971 }
1210 $self->merge_nagios($self->{memorypool}); 1211 } elsif ($params{mode} =~ /^server::connectiontime/) { 1212 $self->add_nagios( 1213 $self->check_thresholds($self->{connection_time}, 1, 5), 1214 sprintf “%.2f seconds to connect as %s”, 1215 $self->{connection_time}, $self->{dbuser}); 1216 $self->add_perfdata(sprintf “connection_time=%.2f;%d;%d”,
thank you
Peter
[Reply]
-
bigpeti Says:
June 18th, 2010 at 9:37Probably readable: . . Hi, With check_mssql_health_1.5.3 I have this error too: . root@nagiossrv:/usr/local/nagios/libexec# perl check_mssql_health –host xxx.xxx.xxx.xxx –port 1433 –username sa –password Password –mode connection-time . CRITICAL – cannot connect to xxx.xxx.xxx.xxx. DBI connect(‘;host=xxx.xxx.xxx.xxx;port=1433′,’sa’,…) failed: (no error string) at check_mssql_health line 1977 . But I tried check_mssql_health_1.5.1. The error disappeared, but I have two other: . root@nagiossrv:/usr/local/nagios/libexec# perl check_mssql_health –host xxx.xxx.xxx.xxx –port 1433 –username sa –password Password –mode connection-time . Use of uninitialized value in concatenation (.) or string at check_mssql_health line 968. Use of uninitialized value in sprintf at check_mssql_health line 1212. OK – 0.03 seconds to connect as | connection_time=0.03;1;5 . I copy this two lines here. Can you help me? . 965 if (lc $self->{servicename} ne ‘mssqlserver’) { 966 # braucht man fuer abfragen von dm_os_performance_counters 967 # object_name ist entweder “SQLServer:Buffer Node” oder z.b. “MSSQL$OASH: Buffer Node” 968 $self->{servicename} = ‘MSSQL$’.$self->{servicename}; 969 } else { 970 $self->{servicename} = ‘SQLServer’; 971 } . . . 1210 $self->merge_nagios($self->{memorypool}); 1211 } elsif ($params{mode} =~ /^server::connectiontime/) { 1212 $self->add_nagios( 1213 $self->check_thresholds($self->{connection_time}, 1, 5), 1214 sprintf “%.2f seconds to connect as %s”, 1215 $self->{connection_time}, $self->{dbuser}); 1216 $self->add_perfdata(sprintf “connection_time=%.2f;%d;%d”, . . . thank you . Peter
[Reply]
lausser Reply:
June 22nd, 2010 at 18:44I interpret the 1.5.1-errors as: connection was established, but neither “SELECT SYSTEM_USER” nor “SELECT @@SERVICENAME” returned a result. Can you please login as “sa” with a db command line client and try the two statements? What do you get as results? I have no explanation, why it fails earlier with 1.5.3, because the db-establish-connection-code did not change between the two releases. What you could try is to create an entry in the /etc/freetds.conf
and then use server instead of hostname and port. check_mssql_health –server TEST –username sa –password ….. If that doesn’t help, go to line 1977 (of the 1.5.3 version) and add the following line just before the one with “DBI->connect”[TEST] port = 1433 tds version = 8.0 host = xxx.xxx.xxx.xxxDBI->trace(2);
[Reply]
-
bigpeti Says:
June 18th, 2010 at 9:38OMG What an editor!
[Reply]
-
theman Says:
July 14th, 2010 at 12:17All works for me but it seems the result is wrong. I have all the parameters right. The database-free seems to be working the wrong way
[Reply]
lausser Reply:
July 14th, 2010 at 16:35Any more details? If you use your own thresholds, did you add a ‘:’ to them?
meaning “warn if less than 10″….... --warning 10: --critical 5:
[Reply]
-
Hector Roman Says:
July 26th, 2010 at 3:09I have problems using the ubuntu check_mssql_healt 10.4 command.cfg my file is:
‘Check_nmssql_health’ command definition
define command ( command_name check_mssql_health command_line $ USER1 $ / check_mssql_health-server $ HOSTNAME $-username-password nagios nagiosadmin – mode-s $ ARG1 $ 1,234,567 )
service_nagios2.cfg file
define service ( use generic-service host_name salvades-virt-winxp SQL Connection service_description time check_command check_mssql_health! connection-time )
define service ( use generic-service host_name salvades-virt-winxp IO service_description Busy check_command check_mssql_health! io-busy )
Nagios Error says:
SQL Connection time UNKNOWN 7/25/2010 21:03:53 0d 3h 50m 20s 4 / 4 ** EPN / usr / lib / nagios / plugins / check_mssql_health: “Option s is ambiguous (scream, server, shell).”
Busy IO UNKNOWN 7/25/2010 21:04:00 0d 3h 20m 9s 4 / 4 ** EPN / usr / lib / nagios / plugins / check_mssql_health: “Option s is ambiguous (scream, server, shell).”
I have properly configured my DTS, I can connect from the console without any problem, if someone could indicate some solution would be ideal, greetings from Santiago de Chile
[Reply]
lausser Reply:
July 28th, 2010 at 9:32Either you have blanks in your command line arguments or you need to switch off the embedded perl interpreter
[Reply]
-
Hector Roman Says:
July 28th, 2010 at 18:34yea!!!!! succefull!!!!!! thanks men
[Reply]


lausser Reply:
October 26th, 2009 at 22:11
It’s on my list. (To be honest, it’s on my list since half a year). I’ll try to get some spare time to do the translation.
[Reply]