We really need your input in this questionnaire
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts MenuQuote/bin/echo "Текст Аларма: %t [%S] %n (%a): %m" > $(mktemp /path/to/file-XXXXXXX)Без кириллицы создается нормально.
Quote from: Victor Kirhenshtein on March 30, 2016, 06:43:10 PMHi Viktor!
- Text2reach SMS driver improved
mbytes = $1;
inst = $dci->instance;
previous_mbytes = GetDCIValueByDescription($node,"MSSQL database mbytes size (".inst.")");
if(previous_mbytes == null)
return 0;
diffpercent = ((mbytes*100)/previous_mbytes)-100;
if(diffpercent <=-10)
return -1;
return 0;
Quote from: kozlov_ao on February 08, 2016, 10:14:06 AMтак и сделал - 2 DCi с одинаковыми запросами вытягивающие размер БД. В одном из них скрипт пересчитывает в процентный diff вытягивая из другого предыдущий размер. Очередность пулинга DCI задал жестко через шедулер. Вот такой получился костыль.
.. если надо % вычисять, то создавай еще один DCI, который будет получать общий размер БД и потом работай с ним через GetDCIValueByName и ему подобных (https://wiki.netxms.org/wiki/NXSL_Function_Reference).
Quote from: Alex Kirhenshtein on February 08, 2016, 10:40:25 AMТочно, что-то я про него и забыл. Спасибо!
Самый простой способ – использовать Encrypted password (на самом деле он obfuscated, конечно):
SubAgent = dbquery.nsm
*DBQUERY
Database = id=mystat;driver=mysql.ddr;server=10.10.0.1;dbname=mystat;login=mylogin;password=mypassword
[25-Jan-2016 14:44:39.922] [ERROR] DB Library: Unable to load database driver module "mysql.ddr": The specified module could not be found.
SubAgent = dbquery.nsm
*DBQUERY
Database = id=master;driver=mssql.ddr;server=10.10.0.2;dbname=master;login=newlogin;password=newpass
[25-Jan-2016 14:40:47.505] [WARN ] DBQUERY: cannot connect to database master ([Microsoft][SQL Server Native Client 10.0][SQL Server]Login failed for user 'newlogin'.)
rawdatetime = string($1);
if(length(rawdatetime) >= 14)
{
starttime_year = format(substr(rawdatetime,1,4),1,0);
starttime_mon = format(substr(rawdatetime,5,2),1,0);
starttime_mday = format(substr(rawdatetime,7,2),1,0);
starttime_hour = format(substr(rawdatetime,9,2),1,0);
starttime_min = format(substr(rawdatetime,11,2),1,0);
trace(0,"PHP start time is " . starttime_year . "-" . string(starttime_mon) . "-" . starttime_mday . " " . starttime_hour . ":" . starttime_min);
starttime_ts = starttime_min+(starttime_hour*60)+(starttime_mday*starttime_hour*60)+(starttime_mon*starttime_mday*starttime_hour*60)+(starttime_year*starttime_mon*starttime_mday*starttime_hour*60);
trace(0,"starttime_ts is " . starttime_ts);
now = localtime();
now_year = now->year;
now_mon = now->mon+1;
now_mday = now->mday;
now_hour = now->hour;
now_min = now->min;
trace(0,"Now time is " . now_year . "-" . now_mon . "-" . now_mday . " " . now_hour . ":" . now_min);
now_ts = now_min+(now_hour*60)+(now_mday*now_hour*60)+(now_mon*now_mday*now_hour*60)+(now_year*now_mon*now_mday*now_hour*60);
trace(0,"now_ts is " . now_ts);
delta_min = now_ts - starttime_ts;
trace(0,"delta_min is " . delta_min);
return delta_min;
}
return false;
[03-Jan-2016 12:52:39.587] [INFO ] PHP start time is 2016-1-3 10:30
[03-Jan-2016 12:52:39.587] [INFO ] starttime_ts is 3633030
[03-Jan-2016 12:52:39.587] [INFO ] Now time is 2016-1-3 12:52
[03-Jan-2016 12:52:39.587] [INFO ] now_ts is 4359652
[03-Jan-2016 12:52:39.587] [INFO ] delta_min is 726622
Quote from: Alex Kirhenshtein on January 01, 2016, 01:23:56 PMТак тоже ругался
Одна из проблем в синтаксисе:
tm_datetime<-year = int32(substr(rawdatetime,1,4));
должно быть
tm_datetime->year = int32(substr(rawdatetime,1,4));
Error 15 in line 3: Unknown object's attribute
Quote from: Alex Kirhenshtein on January 01, 2016, 01:23:56 PMточно, получается тогда пока никак.
Но основная проблема – в nxsl сейчас нет поддержки функции mktime.
WMI.Query(root\CIMV2,\"select * FROM Win32_Process WHERE Name = 'php.exe'\", CreationDate)
rawdatetime = string($1);
tm_datetime = localtime();
tm_datetime<-year = int32(substr(rawdatetime,1,4));
tm_datetime<-mon = int32(substr(rawdatetime,5,2));
tm_datetime<-mday = int32(substr(rawdatetime,7,2));
tm_datetime<-hour = int32(substr(rawdatetime,9,2));
tm_datetime<-min = int32(substr(rawdatetime,11,2));
tm_datetime<-sec = int32(substr(rawdatetime,13,2));
Error 4 in line 3: Bad arithmetic conversion