News:

We really need your input in this questionnaire

Main Menu
Menu

Show posts

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 Menu

Messages - Filipp Sudanov

#691
Can you share the actual images you use in this rack?
#692
По умолчанию при добавлении новых устройств у интерфейса ставится такое ожидаемое состояние, как оно было в тот момент. Т.е. если порт был UP то мы будет ожидать, что он должен быть UP и будет генерить алармы, если это не так.

В Configuration -> Server Configuration можно поменять этот дефолт для новых устройств - параметр Objects.Interfaces.DefaultExpectedState

Если зайти в Properties любого интерфейса, то там на закладке Polling будет выбран Expected State - там это можно поменять для уже существующих устройств.

Ну и еще можно скриптом поменять для существующих устройств, например добавив в Hook::ConfigurationPoll такое:

for (i : GetNodeInterfaces($node)) {
  i->setExpectedState("IGNORE");
}
#693
General Support / Re: Server performance
January 12, 2023, 05:49:06 PM
Usage% is showing how many threads have been created in relation to the maximum number of threads. Maximum number of threads is configured in Configuration -> Server configuration, e.g. ThreadPool.Main.MaxSize.

So e.g. if you have 100 as ThreadPool.Main.MaxSize and at some point the system decided to launch all 100 threads, it does not necessarily mean that you have problems - may be these threads, while being at maximum number are still handling the job. Check statistics for "current load" and "average wait time" - this should give more information.

You can merely increase the MaxSize server configuration parameters in increase thread count.

#694
There are two parts:

1) On a node you have a DCI with Origin="Script". The script itself is in script library, DCI has name of that script in "Parameter" (renamed to "Metric" in most recent version) field. It's also possible to pass some parameters to the script by putting:
script_name("parameter_1", "parameter_2")
or
script_name(123,456)

Script does it's job, reads some values from nodes, etc. Finally script returns some value with the help or return operator. The value returned by the script is stored as the value of the DCI - it's visible in last values, can be seen on graph, etc.

2) On the map, "DCI image" object has this DCI as data source. In properties of the DCI image you can configure the default image and what images should be used if DCI value goes to  some specific value.
#695
Hi!

By "Client folder" you mean a container in object tree with all the nodes related to that specific client?

What about history of DCIs on these nodes, do you also want to migrate it?
#696
Returning a bit back - there was another approach - to have script DCIs which are pulling several OIDs and doing calculation right within the script. Code of such script DCI might look like this:

transport = $node->createSNMPTransport();
if (transport == null) return null;

value1 = transport->getValue(".1.2.3.4.5.6.7.8");
if (value1 == null) return null;
   
value2 = transport->getValue(".1.2.3.4.5.6.7.8");
if (value2 == null) return null;
   
return value1/value2;   

Then on the map you can add "DCI Image" objects. In properties of these "DCI Images" you can configure what image to display depending on the value of the DCI. 

If you go with this approach, is there anything that is missing?
#697
Да, это как раз таки NetworkDiscovery.ActiveDiscovery.EnableTCPProbing

В Configuration -> Network Credential можно задавать списки Agent Ports (для NetXMS агента) и SSH ports. Задавать можно или глобально, или по зонам. Если эти списки пустые, берутся порты по умолчанию - соответственно 22 для SSH и 4700 для агента.

https://github.com/netxms/netxms/blob/master/src/server/core/network_cred.cpp#L359
#698
Происходит ли этот опрос раз в час (это дефолтовый интервал для configuration poll) или с другим интервалом?

На Configuration Poll да, было такое, что даже если в свойствах ноды не был прописаны ssh логин/пароль, сервер пытался подключаться с пустым паролем. Это достаточно давно исправлено.
Ну и стоит проверить в Configuration -> Network Credentials - нет ли там ssh логинов в списке, если есть, то сервер будет пытаться их перебирать.
Ну и можно автоматом расставить галочку "Disable SSH usage for all polls" на все ноды, добавив в Hook::ConfigurationPoll строчку $node->enableSsh(false);

Вторая возможность - что он пытается подключатсья по ssh в процессе Network Discovery - тогда период этого опроса должен совпадать с интервалом Network Discovery.

#699
Node status depends on three things
- Status of interfaces
- Severity of alarms present on the node
- Value of DCIs that have "Use this DCI for node status calculation" checkbox set.

By default most severe status is taken as status of the node.

So first of all you need to figure out, is it coming from an alarm or an interface
#700
General Support / Re: Dashboard gauge configuration
December 29, 2022, 08:04:59 PM
Can you show screenshot of your gauge configuration and also the value of the DCI from last values?
#701
I'd suggest investigating business service approach. If it does not fit for some reason we can look at the other options again.

A business service has concept of "checks". These are visible in "Object details" as a tab. There can be one or several checks - these could be DCIs (status of the check depends whether a threshold on the DCI is triggered or not) - and there are object status checks and script checks.
Also, business services can be nested - a business service can contain a number of child business services. Status of child business services will be propagated to the parent business service, so it could also be built that way.
#702
Hi!

This should have been already fixed in 4.2.461, pls upgrade your system.
#703
Hmmm, I could not replicate this. What version are you using? Can you show screenshot with custom attribute tab from node's properties?

If you do this again for a new node and new template, does it repeat?
#704
Let me list what are the options:

- On the nodes you can have script DCI that polls needed OIDs (or takes their values from another DCIs) and takes some numeric value. Then
  - on map you can use "DCI image" element, which will show specific image for specific value
  - or on that scipt DCI you can check "Use this DCI for node status calculation" (it's in properties on Other Options tab) - and value of that DCI will affect the status of the node (value should be between 0 and 4 for normal ... critical)
You can have this DCI in a template, it will be applied automatically.



- You can use business service functionality - it was reworked in 4.0. The idea is that business service object checks status of other things (nodes, DCIs or script) and changes it's status (and also calculates time that it was "up" or "down").
Creation of business services can be automated - there are "business service prototypes" and auto-bind scripts that will pick up DCIs or nodes that you need.



- Third option is to create nodes with IP address 0.0.0.0 - such node will not be polled. You can have a DCI on that node with "Use this DCI for node status calculation" enabled and status of that node will depend on value of that DCI.


Pls update which option looks good for you and if you need any additional information on it.

#705
General Support / Re: Generic HTTP Notification Channel
December 15, 2022, 05:07:59 PM
There is "Shell" notification channel which just calls a shell command on the NetXMS server. You can use it to call curl with appropriate parameters.


https://www.netxms.org/documentation/adminguide/event-processing.html#drivers