Un compañero te escribe un martes: “Oye, ¿tenemos NX Motion? ¿Puedes darme acceso?”
Gestionas treinta y pico servidores de licencias repartidos en tres sedes, un calendario de renovaciones que nunca se vacía del todo y un esquema de nombres de fabricante que llama a esa cosa nx_motion_ult en un servidor y algo ligeramente distinto en otro. Ni siquiera sabes con certeza si “NX Motion” es el nombre real de la feature.
La respuesta honesta es “dame un rato”. Después toca ejecutar lmstat una y otra vez, entrar por SSH en los servidores, abrir ficheros de licencias y buscar lo que crees que puede ser el nombre de la feature.
Esa tarde es el problema del que va este artículo. Casi cualquier pregunta sobre licencias que recibe tu equipo se reduce a una de tres formas:
- ¿Dónde está? Conoces el nombre a medias y necesitas localizarla en todo el parque.
- ¿Por qué a otra persona le funciona y a mí no? Dos personas usan la misma aplicación con distinta suerte. Una obtiene una licencia; la otra recibe un mensaje diciendo que la feature no existe.
- ¿Cuándo cambió esto? Bajó una cantidad, desapareció una feature o cambió una fecha de caducidad. Alguien quiere saber cuándo y, si es posible, por qué.
LiMon tiene una pantalla dedicada a cada pregunta. Ninguna te exige recordar un servidor, un puerto ni cómo llama exactamente el fabricante a la feature.
“¿Dónde está?” — Búsqueda de licencias en el parque
La primera pantalla es donde aterriza la pregunta de tu compañero. En la navegación de LiMon se llama Encuentra una licencia y hace una sola cosa: escribes parte de un nombre y te dice en qué sitios existe esa feature, en todos los servidores monitorizados.
Lo que hace útil la búsqueda en un parque real es contra qué compara. Los servidores de licencias usan códigos del fabricante como nx_motion_ult, CATIA_V5_HARDWARE o 86984ACD2025. Las personas usan nombres de producto como “NX Motion”, “CATIA Hardware Design” o “AutoCAD 2025”.
LiMon mantiene una correspondencia entre ambos (esa es otra historia). La búsqueda comprueba tanto el nombre original de la feature como su nombre amigable. Por eso “NX Motion”, “nx_motion” y simplemente “motion” encuentran lo mismo. Puedes empezar con dos caracteres; no necesitas conocer la respuesta antes de preguntar.
Los resultados vuelven agrupados por feature, y esa agrupación es justo el objetivo. Para cada coincidencia obtienes:
- El nombre crudo del fabricante y el nombre amigable, uno al lado del otro.
- Un total para todo el parque: cuántas licencias hay y cuántos servidores distintos las ofrecen.
- Un desglose por ubicación: cada servidor que tiene la feature, con su cantidad, fecha de caducidad (en blanco significa perpetua), sede y estado actual (
UP,DOWN,ERRORo en proceso de baja).
Esa última lista es lo que cierra el ticket. Tu compañero preguntó dónde está NX Motion; ahora puedes responder: “Tenemos siete puestos de NX Motion Ultimate en dos servidores: cinco en Múnich y dos en Turín, donde el servidor está caído. También hay cuatro puestos de NX Motion Simulation en el servidor RLM de Múnich.”
La búsqueda encontró tanto la feature nx_motion_ult de FlexLM como NXMOTIONSIM de RLM bajo sus nombres amigables. El nombre exacto del fabricante no importó. Si no hay coincidencias, la pantalla también lo dice sin rodeos. Un resultado vacío es un “no lo tenemos” rápido y válido, no un error ni un silencio ambiguo.
Esta es la pantalla que sustituye a una tarde de SSH y grep. Una búsqueda, todo el parque, tanto sobre el código de la feature como sobre su nombre amigable mapeado en LiMon.
“¿Por qué a otra persona le funciona y a mí no?” — Cobertura de funciones
La segunda pregunta es más difícil de diagnosticar porque parece un fallo. Dos ingenieros usan lo que la empresa llama “HyperWorks”. Uno obtiene una licencia y se pone a trabajar. El otro recibe una denegación, aunque quedan puestos libres y otros compañeros acceden a la misma feature en ese momento. Es lógico que piense que algo no funciona.
A menudo no hay nada roto. La aplicación se sirve desde varios servidores de licencias: quizá uno por sede o región, más un servidor independiente para un equipo concreto. Esos servidores no siempre ofrecen un conjunto idéntico de features.
El ingeniero que pudo trabajar apuntaba a un servidor con la feature que necesitaba. El otro apuntaba a uno que no la tenía. El nombre de la aplicación es el mismo; el inventario que hay detrás no.
LiMon lo expone en la página de detalle de la aplicación como Cobertura de funciones. Toma una aplicación, mira todos sus servidores de producción activos e informa de las funciones que no están presentes en todos ellos. La regla que aplica es deliberadamente simple:
- Compara solo despliegues de producción. Los servidores de pruebas y desarrollo, que suelen diferir, no distorsionan la imagen.
- Una feature cuenta como presente cuando el servidor la ofrece. La cantidad no interviene. Esta vista responde a “¿está ahí?”, no a “¿hay puestos suficientes?”. El análisis de uso y ahorro responde a la segunda pregunta.
- Necesita al menos dos servidores de producción para aportar información. Con uno solo no hay nada que comparar, por lo que LiMon oculta la vista en vez de mostrar un resultado trivialmente “completo”.
Cuando todos los servidores de producción ofrecen todas las features, la vista lo resume en una línea: todas las funciones están presentes en todos los servidores de producción. Puedes dejar de buscar aquí e investigar otras causas, como un límite de cantidad, una restricción de usuario o equipo, o un puesto prestado.
Cuando existe un hueco, la vista solo muestra las features que faltan en al menos un servidor. Las que están en todas partes desaparecen de la lista. Una marca verde o un guion gris indican qué servidores ofrecen cada feature restante:
Así puedes responder preguntas como: "¿Tenemos la feature X en la oficina de Múnich? Si no está allí, ¿dónde se ofrece?"
En este ejemplo, el ingeniero necesitaba MotionSolve y su equipo apuntaba al servidor de Múnich. Ese servidor no ofrece la feature, mientras que los compañeros conectados al servidor LM-X de Londres no tenían problemas. El supuesto fallo es un hueco de cobertura; ahora tiene nombre y ubicación.
Queda tomar una decisión: añadir la feature a los servidores que no la tienen, dirigir a ese equipo hacia un servidor que sí la ofrece o confirmar que el hueco es intencionado y explicar el límite de acceso. En cualquier caso, ya no estás adivinando.
Esta vista informa de la presencia a nivel de servidor, no de quién recibió una denegación. No enumera los usuarios afectados ni reproduce los eventos de denegación; esa información procede del análisis de denegaciones de los informes.
Cobertura de Funciones aporta la explicación estructural que hay detrás de la queja, que suele ser la parte más difícil de ver.
“¿Cuándo cambió esto?” — Historial de licencias
La tercera pregunta aparece después. El pool que tenía 50 puestos ahora muestra 45. Una feature que jurarías que estaba ya no aparece. Ha cambiado una fecha de caducidad con la que contabas y nadie recuerda por qué.
Alguien hizo un cambio, quizá hace tres meses, y ahora necesitas reconstruir el rastro.
LiMon mantiene ese rastro automáticamente. En cada ciclo de sondeo compara el inventario de licencias actual de cada servidor con lo que vio por última vez, y cualquier diferencia se convierte en una entrada fechada y tipada en el Historial de Licencias. No lo activas ni tienes que configurar nada; es una ventaja secundaria de monitorizar.

Registra cinco tipos de cambio, y la línea temporal codifica cada uno por color para que el rastro de una renovación se lea de un vistazo:
- Added (Añadida): una feature apareció en un servidor que no la tenía, quizá por un nuevo derecho de uso o un despliegue.
- Removed (Eliminada): una feature desapareció por completo, quizá porque caducó el módulo o se dio de baja un servidor.
- Quantity Changed (Cantidad cambiada): cambió el número de puestos, mostrado como un sencillo 45 → 50.
- Version Changed (Versión cambiada): avanzó la versión licenciada, por ejemplo V5-6R2023 → V5-6R2024.
- Expiration Changed (Caducidad cambiada): cambió la fecha de caducidad de una feature, por ejemplo 2025-06-30 → 2025-12-31. Es la evidencia de que la renovación llegó al servidor.
Cada entrada incluye la feature, el servidor donde ocurrió, los valores antes → después y una marca de tiempo. El qué y el cuándo se capturan automáticamente, pero el por qué suele quedarse en la cabeza de alguien. Por eso puedes añadir un motivo opcional desde la interfaz de administración, como “Renovación anual; compra de puestos adicionales” o “Feature obsoleta; ya no se utiliza”.
Seis meses después, cuando finanzas pregunte por qué aumentó la partida de CATIA, la respuesta estará junto al evento en vez de enterrada en una cadena de correos.
El sondeo no puede ver todos los eventos relevantes. Puede haber un cambio contractual que solo conste en documentos o una compra con fecha futura que quieras registrar antes de que aparezca en lmstat. Puedes añadir esas entradas a mano desde la interfaz de administración para que el historial no se limite a lo que haya comunicado un servidor.
En la interfaz principal de LiMon, el historial aparece en la página de detalle de cada servidor y aplicación. En la interfaz de administración, una sola vista reúne los cambios de todo el parque y permite filtrarlos por servidor o feature.
Esa es la diferencia entre “creo que ampliamos CATIA la primavera pasada” y “pasamos de 80 a 100 puestos el 14 de marzo y dejamos registrado el motivo”.
Tres preguntas, un parque
Las tres pantallas responden a tres preguntas comunes sobre tu parque de licencias:
- Encuentra una licencia responde al dónde: todo el parque y distintas formas del nombre en una sola búsqueda.
- Cobertura de Funciones responde al por qué cambia el acceso: el hueco estructural entre los servidores de una aplicación que explica algunas denegaciones.
- Historial de Licencias responde al cuándo y por qué cambió: un rastro de auditoría automático y anotado.
Ninguna de estas vistas te pide conocer la respuesta de antemano. No necesitas aportar un servidor, un puerto ni el código exacto del fabricante. Puedes empezar con lo que realmente tienes: un nombre que recuerdas a medias, un usuario desconcertado o un número que cambió.
LiMon contrasta esa pista con el inventario que ha ido manteniendo todo el tiempo. La gestión de licencias deja de ser un examen de memoria.
Dónde encaja LiMon
LiMon sondea servidores FlexLM, RLM, LM-X y DSLS por toda tu red y mantiene una imagen actualizada de lo que ofrece cada uno. Ese inventario alimenta las vistas de búsqueda, cobertura e historial, además del análisis de uso, los registros para auditorías y los datos que necesitas al negociar una renovación.
LiMon funciona en tu hardware, sin nube, sin agentes en los servidores de licencias y sin conexiones de telemetría. Solicita una evaluación para probarlo con tu propio parque y elige después Standard o Professional según el número de servidores y el análisis que necesites. Todas las funciones tratadas en este artículo están disponibles en ambas ediciones.