3.8.166 Windows oddities / Cannot upload NPI to package manager

Started by 2b2bff, February 24, 2021, 11:44:39 AM

Previous topic - Next topic

2b2bff

Hi,

first of all - NetXMS is an amazing system. I'm still pulling together all the bits and pieces of information that is scattered around. I think there is room for improvement in the documentation / guides... ;)

I updated to version 3.8.166, running on Windows Server.

The first thing I noticed is that the nxagent-3.8.166-x64.npi can be uploaded, but then just vanishes on reload.

Then I thought, lets use WebUI to find out whether its a server or a client problem, but the 3.8.166 installer for Windows fails to install a working version. It is noticable smaller than the 3.8.120 that does work.

Is it a bug, or just me?

Cheers

Victor Kirhenshtein

Hi,

you mean web UI installer for Windows? I just tested it, and it works as expected. Did you choose to install bundled JRE? If no, what Java version you have installed?

Best regards,
Victor

2b2bff

Hi Victor,

yeah the Web UI installer for Windows. Using the bundled JRE. As I said, 3.8.120 does work, but the 3.8.166 installs, but the UI is not accessable. I wonder what happened to the packet, as it is only about 70 MB instead of about 90 MB of the installer packages before...

But the thing that bothers me more is that the Agent package (.npi) does not remain in package manager, so that I can distribute the update...

Cheers,
Frank

Victor Kirhenshtein

We have switched bundled JRE to OpenJDK (AdoptOpenJDK build), that could be the reason. Try to uninstall old version first, then install 3.8.166 from scratch.

Regarding agent packages, you mean that it disappears from package list after server restart?

Best regards,
Victor

2b2bff

Not after restart. I upload the npi, then it is listed in the grid. After pressing the "reload" button, the entry is gone...

2b2bff

I found the WebUI error - the NetXMS WebUI Service has been installed with the "Local Service" account. After switching to "Local System" the WebUI is accessable again... :)

2b2bff

I investigated on the package upload problem a bit more. This is the log at debug level 8. Seems like the client is cancelling the transfer. But it must be a server problem as I also tried it with the client 3.8.120 that has worked before updating the server.


2021.03.17 09:12:48.009 *D* [client.session.0   ] Sending message CMD_REQUEST_COMPLETED (32 bytes)
2021.03.17 09:12:48.009 *D* [client.session.0   ] Message dump:
  ** 000000 | 00 1D 50 00 00 00 00 20 00 00 00 3A 00 00 00 01 | ..P.... ...:....
  ** 000010 | 00 00 00 1C 00 00 00 00 00 00 00 00 00 00 00 00 | ................
  ** code=0x001D (CMD_REQUEST_COMPLETED) version=5 flags=0x0000 id=58 size=32 numFields=1
  ** 000000: [    28] INT32       0

2021.03.17 09:13:03.634 *D* [client.session.0   ] Message dump:
  ** 000000 | 00 6F 00 40 00 00 00 80 00 00 00 3B 00 00 00 06 | .o.@.......;....
  ** 000010 | 00 00 00 C0 78 DA 63 60 60 68 60 67 00 03 EE F2 | ....x.c``h`g....
  ** 000020 | CC BC 94 FC F2 62 DD 0A 33 13 10 BF 11 2A CE 9E | .....b..3....*..
  ** 000030 | 57 91 98 9E 9A 57 C2 00 05 D2 50 71 79 BF D4 92 | W....W....Pqy...
  ** 000040 | 08 DF 60 05 47 90 A4 42 5A 7E 91 82 99 89 6E 52 | ..`.G..BZ~....nR
  ** 000050 | 66 89 42 38 C4 1C 98 FA 5A A8 7A 71 A8 39 BA C6 | f.B8....Z.zq.9..
  ** 000060 | 7A 16 7A 46 46 66 20 7B F4 52 2B 52 61 EA EA 18 | z.zFFf {.R+Ra...
  ** 000070 | 50 41 3D CC 7E A8 7A 30 07 00 0C AB 1D 11 00 00 | PA=.~.z0........
  ** code=0x006F (CMD_INSTALL_PACKAGE) version=0 flags=0x0040 id=59 size=128 numFields=6
  ** 000000: [   128] UTF8-STRING "windows-x64"
  ** 000018: [   129] UTF8-STRING "nxagent"
  ** 000030: [    27] UTF8-STRING "NetXMS Agent for 64-bit Windows"
  ** 000060: [   125] UTF8-STRING "nxagent-3.8.226-x64.exe"
  ** 000088: [   126] INT32       0
  ** 000098: [   127] UTF8-STRING "3.8.226"

2021.03.17 09:13:03.634 *D* [client.session.0   ] Received message CMD_INSTALL_PACKAGE
2021.03.17 09:13:03.634 *D* [client.session.0   ] Sending message CMD_REQUEST_COMPLETED (48 bytes)
2021.03.17 09:13:03.634 *D* [client.session.0   ] Message dump:
  ** 000000 | 00 1D 50 00 00 00 00 30 00 00 00 3B 00 00 00 02 | ..P....0...;....
  ** 000010 | 00 00 00 1C 00 00 00 00 00 00 00 00 00 00 00 00 | ................
  ** 000020 | 00 00 00 7E 00 00 00 00 00 00 00 04 00 00 00 00 | ...~............
  ** code=0x001D (CMD_REQUEST_COMPLETED) version=5 flags=0x0000 id=59 size=48 numFields=2
  ** 000000: [    28] INT32       0
  ** 000010: [   126] INT32       4

2021.03.17 09:13:03.649 *D* [client.session.0   ] Message dump:
  ** 000000 | 00 72 00 01 00 00 00 10 00 00 00 3B 00 00 00 00 | .r.........;....
  ** code=0x0072 (CMD_ABORT_FILE_TRANSFER) version=0 flags=0x0001 id=59 size=16 numFields=0
  ** binary message

2021.03.17 09:13:03.649 *D* [client.session.0   ] Received raw message CMD_ABORT_FILE_TRANSFER
2021.03.17 09:13:04.368 *D* [client.session.0   ] Sending message CMD_KEEPALIVE (32 bytes)


What can I do about this?

2b2bff

I wonder if I'm the only one with the Package Manager problem...  ???

Victor Kirhenshtein

Hi,

are you running server on Windows?

Best regards,
Victor

Filipp Sudanov

This could be, if there's no nxagent-3.8.166-x64.exe file in the folder where nxagent-3.8.166-x64.npi resides.

The principle of operation is that console opens the .npi file and it had .exe file specified inside (.npi is simple test file, you can open it with any editor.

Only desktop console can upload packages using .npi file - in web we can not open arbitrary files from the computer where console is open - console would need this to open the .exe that is specified inside .npi.
There are plans for the future to change package format so that everything is packed into one file - in this case web console will also work.

2b2bff

Hi,

OMG, yes. I didn't know that I need both, the npi and the .exe. Now I have both files in the same folder and it just works...

Thanks a lot...

Cheers
Frank

Dbil1099

I had a similar problem - nxmc - console (Windows) produced an error after select of an .npi file.

My NetXMS Core service was being run by a service account to be able to minimize access granted.
I found that if my service account was added to the Administrators group, I could add an .npi as long as the corresponding nxagent*.exe was present. I noticed during the .npi selection, the .exe gets copied to the packages folder.  I used ProcessMonitor to look into the error and discover path of the failing file copy.

By granting "ReadAndExecute,Modify"  to my service account on folder \NetXMS\var\packages, it no longer needed to be part of the Administrators group.

Now package manager adds/removed seems to work.


Victor Kirhenshtein

It's probably good idea to grant write access to whole \NetXMS\var - service may write other files there as well (most likely \NetXMS\var\images if you will add custom object images).

Best regards,
Victor