Instance discovery для Windows Performance counters, помогите

Started by Akira, September 18, 2024, 10:01:31 AM

Previous topic - Next topic

Akira

Люблю я NetXMS, но найти как что-то сделать иногда невозможно.

Есть сервер, на нем SQL. Надо снимать размер баз.

Виндовый счетчик
\SQLServer:Databases(*)\Data File(s) Size (KB)
* - это список баз по которым надо создать DCI для каждой свой

Как должна выглядеть закладка "Instance discovery"?
method
Object name
script

uldis

Это должно выглядеть примерно так

Akira

Огромное спасибо
А как сделать, чтобы _Total не попал

Сам сообразил

if ($1 != "_Total") {
  return %(true, $1, descr);
}
return false;

А вот как сделать, чтобы не показывал базы меньше 1ГБ...

uldis

Нам нужно будет использовать метод readAgentParameter, чтобы получить значение, например, так:

v = readAgentParameter( 'PDH.CounterValue("\SQLServer:Databases(' .. $1 .. )'\Data File(s) Size (KB)",0)' );
if (v > 1000000000) return true; else return false;


UPD: на самом деле так:

v = readAgentParameter( 'PDH.CounterValue("\SQLServer:Databases(' .. $1 .. ')\Data File(s) Size (KB)",0)' );
if (v > 1000000000) return true; else return false;

Akira

Quote from: uldis on September 20, 2024, 04:23:07 PMНам нужно будет использовать метод readAgentParameter, чтобы получить значение, например, так:

v = readAgentParameter( 'PDH.CounterValue("\SQLServer:Databases(' .. $1 .. )'\Data File(s) Size (KB)",0)' );
if (v > 1000000000) return true; else return false;
Тут явно что-то не так, как минимум с кавычками. Парсер в таком виде дает сразу ошибку

Akira

Разобрался с кавычками, пришлось через промежуточную переменную

Полностью так (показывать только базы больше 10GB и без базы _Total):

t = "\SQLServer:Databases(".. $1 ..")\Data File(s) Size (KB)";

v = $node->readAgentParameter('PDH.CounterValue('..'"'.. t .. '")');

if ($1 != "_Total" and v > 10000000) {
  return %(true, $1, descr);
}

return false;

Filipp Sudanov

Quote from: Akira on September 23, 2024, 08:42:35 AMТут явно что-то не так, как минимум с кавычками. Парсер в таком виде дает сразу ошибку
да, апостроф со скобочкой не в том порядке были :)