Skip to main content

NI VLM

Follow these steps to monitor NI Volume License Manager (NI VLM) with OpenLM, including the licenses that NI VLM disconnects for computers that are isolated from your network. NI VLM runs a FlexNet license server, so OpenLM Broker queries it with lmutil, as it does a FLEXlm license server. With the NIVLM license manager type, Broker also runs nivlmcmd.exe, the command-line tool of NI VLM, to export the disconnected licenses, and reports each one to OpenLM SLM as a borrowed license. In EasyAdmin, you then see which computer holds each disconnected license and when it expires.

Requirements​

Before starting, make sure you have:

  • OpenLM SLM, with access to EasyAdmin.
  • OpenLM Broker v26.7.8.1247 or higher, installed on the NI VLM server machine and reporting to OpenLM SLM. Earlier Broker releases do not list NIVLM as a license manager type. Broker must run on that machine, because it runs nivlmcmd.exe locally.
  • NI Volume License Manager 2025 Q4 or higher. NI added the disconnected-usage export to nivlmcmd.exe in that version.
  • nivlmcmd.exe in the NI VLM installation folder, by default C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe.
  • A Broker service that runs with administrator rights on the NI VLM server. nivlmcmd.exe does not run without them.
  • The Main Licensing Port of NI VLM. The default is 27000. To check it, open NI VLM and go to Tools → Preferences → General.

Monitoring capabilities​

With the NIVLM type, Broker sends OpenLM SLM the same lmstat report of the license server as the FLEXlm type, with 2 changes:

  • Disconnected licenses: Broker adds each license from the nivlmcmd.exe export to its feature, as a borrowed license. It raises both the issued total and the in-use count of the feature by the number of disconnected licenses that it adds.
  • Reservations: Broker removes every reservation line from the report, and subtracts the reserved licenses from the licenses in use. In the lmstat report of NI VLM, disconnected licenses appear among the reservations for host groups, and the report does not show which reservations are disconnected.

For each disconnected license, Broker reports:

  • Feature name: the PackageName value of the export, for example LabVIEW_Pro_PKG.
  • Username and Workstation: the computer name in ClientName. From NI VLM 2026 Q3, NI disconnects only computer-based licenses.
  • Start time: the CreationDateTimeUTC value, when NI VLM created the disconnected license.
  • Linger time: the time from CreationDateTimeUTC to ExpirationDateTimeUTC, the expiration of the disconnected license.

How OpenLM interfaces with NI VLM​

Diagram: OpenLM Broker on the license server runs a command-line tool and reads log files, and sends the data to OpenLM Server, which you manage in the EasyAdmin web application. How OpenLM collects NI VLM license usage

Broker runs on the NI VLM server machine and sends the license data to OpenLM SLM. For NI VLM, it runs 2 command-line tools and reads no log file.

  • Commands: The Data Inquiry command holds 2 commands, separated by a semicolon, and runs every 55 seconds by default:

    "<Executable path>lmutil" lmstat -a -c <port>@<Host> -i;"<Executable path>nivlmcmd.exe" disconnected-usage {$destination_path}

    Broker runs lmutil first and nivlmcmd.exe second, on every run. A failure of one does not stop the other.

  • Export: nivlmcmd.exe writes the licenses that are disconnected at that moment to a CSV file named after the date and time, such as nivlm-disconnected-usage-2026-10-23_09-15-42.csv. Broker replaces {$destination_path} with the nivlm folder of the Broker installation, reads the newest file there, and deletes all but the 2 newest files. A file has 1 row per disconnected license:

    LicenseName,PackageName,ClientName,IsUser,HostIdLockedTo,CreationDateTimeUTC,ExpirationDateTimeUTC,ReconnectDateTimeUTC,ReconnectReason
    LabVIEW Professional Development System,LabVIEW_Pro_PKG,WS-1001,False,0A1B2C3D4E5F,2026-10-01 08:30:00,2027-01-31 22:59:59,,

    Broker reads PackageName, ClientName, CreationDateTimeUTC, and ExpirationDateTimeUTC, and ignores the other columns.

  • Report: Broker adds each row to the Users of <PackageName>: block of the lmstat output, in the form of a borrowed license, with the linger time in seconds:

    WS-1001 WS-1001 WS-1001 (nivlm01.example.com/27000 1), start Thu 10/1 08:30 (linger: 10592999)

    Broker adds a row only when the lmstat output has a block for its PackageName, and drops the other rows.

  • Sessions: Each data inquiry reports the licenses that are disconnected now. When the NI VLM administrator reconnects a computer, its licenses leave the export, so the next report no longer holds them.

  • Log files: None. The NIVLM type defines no log file type of its own, and the Log Files tab offers only Other.

Check NI VLM​

Broker reports only what nivlmcmd.exe exports, so run the export by hand on the NI VLM server first.

  1. Close NI Volume License Manager in every session on the server, including disconnected Remote Desktop sessions of other users.

    nivlmcmd.exe does not run while the NI VLM user interface is open.

  2. Open Command Prompt as administrator, and run the export to a folder that exists, for example C:\Temp:

    "C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe" disconnected-usage C:\Temp

    The tool answers Report exported successfully to, followed by the path of the new CSV file.

  3. Open the CSV file, and confirm that it lists the disconnected licenses that you expect, with 1 row per license.

OpenLM Broker configuration​

Note

Install OpenLM Broker on the NI VLM server machine and confirm that it reports to OpenLM SLM before starting these steps.

  1. Open a browser on the NI VLM server machine and go to the Broker web UI at http://localhost:5090/.

  2. On the License Managers page, set Host to the host name of the NI VLM server machine, and select the save icon next to the field.

    Set Host before you add the license manager, because Broker writes the host name into the lmutil command when you add it.

  3. If Broker already monitors this NI VLM server as FLEXlm, note the settings of that license manager, such as the license file path, and delete it from the License Managers list.

    Broker refuses a port that another license manager on this Broker already uses, even a disabled one, and the NIVLM type queries the same port.

  4. Go to License Managers → Add License Manager.

  5. From LM Type, select NIVLM, not FLEXlm.

  6. In Port, enter the Main Licensing Port of NI VLM, for example 27000, and select Add.

    The Add License Manager dialog with LM Type set to NIVLM and port 27000 Add NI VLM as a license manager

  7. On the Commands tab, select Data Inquiry, and change the path of nivlmcmd.exe in the command.

    Broker fills in both commands with the Executable path, the tools64 folder of the Broker installation. lmutil runs from that folder, but nivlmcmd.exe is in the NI VLM installation folder. Replace the path in front of nivlmcmd.exe with that folder, and leave the rest of the command as it is:

    "C:\Program Files\OpenLM\OpenLM Broker\tools64\lmutil" lmstat -a -c 27000@nivlm01.example.com -i;"C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe" disconnected-usage {$destination_path}

    Keep {$destination_path}. Broker reads the export only from the nivlm folder of the Broker installation, and replaces {$destination_path} with that folder when the command runs. Broker runs the command every 55 seconds (Watch interval (sec)).

    The Commands tab with Data Inquiry selected and the Data Inquiry command for port 27000, with the full path of nivlmcmd.exe in the NI VLM installation folder Point the Data Inquiry command at nivlmcmd.exe

    When you change Executable path later, or select Restore Default, Broker puts back the default command. Change the path of nivlmcmd.exe again afterwards.

  8. Leave the Vendors and Log Files tabs as they are, and select Save.

    The Vendors tab lists a vendor named NIVLM, which Broker adds for this type.

OpenLM SLM configuration​

Approve the license server with the FLEXlm type. The report of the NIVLM type is lmstat output with the disconnected licenses added, and OpenLM SLM reads it as FLEXlm output.

  1. Open EasyAdmin (http://<Server IP>:5015) and go to Start → Widgets → License Manager - Servers.

  2. Select the There are N servers pending approval link at the top of the widget.

    The Administration - License Manager Servers window opens, with the pending entries at the top of the list.

  3. Find the pending entry with the host name and the port of the NI VLM server, as you configured them in Broker, and select the edit icon at the end of its row.

  4. Set the Type to FLEXlm, optionally rename the connection in Display name, confirm the Host Name and Port, and select APPROVE.

Verify your configuration​

  1. Open EasyAdmin in your browser.
  2. Go to Start → Widgets → License Manager - Servers.
  3. Confirm that the NI VLM license server appears with the type FLEXlm and the status Up to date, and that Borrowed includes the disconnected licenses.
  4. Go to Start → Operational → Currently Consumed Licenses, and confirm that each disconnected license appears with a check mark in Borrowed, the computer name in Username and Workstation, and its expiration in Linger Due.

Troubleshooting​

Broker writes the messages of this license manager to port-<port>-NIVLM.log, for example port-27000-NIVLM.log, in the logs folder of the Broker installation. The messages in this section are ERROR messages, so they appear at the default log level. Compare the log with these cases:

  • NiVLM nivlmcmd sub-command failed, followed by the reason. Broker cannot run nivlmcmd.exe. Check the path of nivlmcmd.exe in the Data Inquiry command, as described in OpenLM Broker configuration.
  • NiVLM nivlmcmd produced no CSV content in, followed by the folder. The nivlm folder holds no export. Run the export by hand, as described in Check NI VLM. If the tool answers Error 17001: NI Volume License Manager is already running., the NI VLM user interface is open in a session on the server. Close it in every session. If the export works by hand but not from Broker, check that the Broker service runs with administrator rights. Without them, nivlmcmd.exe answers Please run the application as an administrator.
  • NiVLM lmutil sub-command produced no output. Broker cannot query the license server. Check the port and Host of the license manager.

If a disconnected license is in the export but not in OpenLM, compare its PackageName with the features of the license server. Broker adds a row only to a feature that the lmstat output lists with the same name, and drops the other rows without an ERROR message.

Known limitations​

These limits apply to NI VLM monitoring with the NIVLM type:

  • Broker exports only the licenses that are disconnected at the time of the data inquiry. OpenLM gets no history of the licenses that NI VLM disconnected before you configured the license manager.
  • Broker removes every reservation line from the lmstat report, including reservations that are not disconnected licenses. OpenLM shows no reservations for this license server.
  • Each disconnected license arrives with the computer name as both the username and the workstation.
  • A disconnected license that never expires, Permanent in the export, has no linger time. Broker adds it without one, so it is not marked as borrowed.
  • When nivlmcmd.exe fails, Broker reads the newest export that is already in the nivlm folder. OpenLM then keeps showing the disconnected licenses of that export until an export succeeds.
  • The NIVLM type has no FlexLM Debug Log File log type, the log from which the FLEXlm type reads denials.
  • The default Data Inquiry command looks for nivlmcmd.exe in the Broker tools folder. Change its path by hand, as described in OpenLM Broker configuration.
  • Detect on the License Managers page does not add NIVLM license managers. Add the license manager by hand.

The documentation team might draft this page using a large language model. A technical writer reviews every page and verifies it against the product before publishing it. A human makes the final decision.