Project Tracking

LM_PROJECT and UNIX Group Tracking

Monitor provides project-based tracking of license utilization, provided that the user instructs the server to assign incoming checkouts to the appropriate project setting for a specified time.

Specify the Current Project

A utility is provided, ftlm_lmproject, which captures the value of the LM_PROJECT environment variable, if present, and instructs the Monitor server incoming checkouts should be assigned to the project matching the variable setting. To execute the utility, complete the instructions below.

  1. Setup the environment to work with the Monitor utilities.
    1. For UNIX-based platforms, this involves sourcing the appropriate vovrc script for the user's shell. The vovrc scripts are located in the installation tree, in the common/etc directory. For Windows, this involves running the vovinit.bat script found in the win64/bat directory of the installation tree.
  2. Set the environment variable VOV_LICMON to point to Monitor:
    Non-SSL:
    % setenv VOV_LICMON lmsrv:5555
    Or, SSL:
    % setenv VOV_LICMON lmsrv:5555:ssl
  3. Any time the variable is set or changed, the ftlm_lmproject utility should be called afterward:
    % setenv LM_PROJECT big_usb_chip
    % $VOVDIR/scripts/ftlm_lmproject
Many LM_PROJECT variables are assigned via project wrapper scripts. The utility can be called from wrapper scripts to make the action transparent to the user, if desired.

The default parameters for incoming checkout/project assignments: for the host on which the utility is executed, and for four hours from the utility execution time. These parameters can be adjusted by using the available utility arguments.

As shown in the ftlm_lmproject command above, to use the current UNIX group as opposed to the value of the LM_PROJECT environment variable, the -unixgroup argument can be passed to the utility to instruct the server to use this for the project assignment.
Note: This utilizes the current UNIX group for the user/shell as opposed to the user's default UNIX group.

The Monitor administrator can also configure static project definitions for users if project assignments do not often change.

ftlm_lmproject

A utility to capture the value of LM_PROJECT on the current host, for the current user.

DESCRIPTION:
    ftlm_lmproject - A utility to capture the value of LM_PROJECT
    on the current host, for the current user.

    Every checkout by the current user on the current host
    will be assigned to the given LM_PROJECT until
    the time has expired.

    Expiration default is 4 hours but can be overridden
    via the VOV_LMPROJECT_EXPIRE environment variable.

    This utility connects to the LicenseMonitor
    project specified by the VOV_LICMON environment
    variable.  VOV_LICMON is a comma-separated list
    of hosts, with each host in one of the following forms:

    Non-SSL: <host>:<port>      (Example: lmsrv:5555)
    SSL:     <host>:<port>:ssl  (Example: lmsrv:5555:ssl)

    This utility is also called automatically
    by 'vw' in the context of NetworkComputer.

TECHNICAL NOTE:
    This is a stand-alone script that can be executed
    by any Tcl interpreter, like tclsh.  A full installation
    of VOV is not required to run this script.


OPTIONS:
    -expire  <TIMESPEC>       -- Default 4h00m
    -var     <VARLIST>        -- Which env. variable to use. VARLIST is a
                                 space separated list of variable names.
      Default: 'LM_PROJECT RLM_PROJECT VOV_JOBPROJ'

    -host    <HOSTLIST>       -- Default 'tr-lap923.prog.altair.com tr-lap923'.
                                 Empty means 'any host'.
    -host+   <HOSTLIST>       -- Append specified hosts to default list
                                 (tr-lap923.prog.altair.com tr-lap923)
    -user    <USER>           -- Default 'o'. Empty means 'any user'.
    -project <PROJECT>        -- Default is value of LM_PROJECT.
    -jobid <JOBID>            -- Take value of PROJECT from the specified job.
                                 Used by vw for automatic link NC->LM
    -unixgroup                -- Use the current Unix group name as project.
    -v                        -- Increase verbosity (may be repeated).
    -h                        -- This help

EXAMPLES:
    % ftlm_lmproject
    % ftlm_lmproject -unixgroup
    % ftlm_lmproject -var RLM_PROJECT -expire 12h
    % ftlm_lmproject -v -v
    % ftlm_lmproject -user john -host pluto -project ChipA -expire 3m
    % ftlm_lmproject -user "" -host pluto -project ChipA -expire never

SEE ALSO:
    ftlm_accounts showlive
    ftlm_accounts setlive  <userList> <project>
    ftlm_accounts setliveall