Lexmark Print Management (LPM) Logging Fills Hard Disk Drive, Saturates Resources and Causes Print Release Failure
  1. guides
  2. en
  3. Knowledge base
  4. Knowledge base Solution
  5. Lexmark Print Management (LPM) Logging Fills Hard Disk Drive, Saturates Resources and Causes Print Release Failure

Lexmark Print Management (LPM) Logging Fills Hard Disk Drive, Saturates Resources and Causes Print Release Failure

What you will see
A log file, introduced in
LPM version 2.3.15
, can eventually saturate system (HDD) resources on the Lexmark application server.
Once this occurs, Print Release ceases to function until you free up HDD resources.
Affected products
All products compatible with LPM version 2.3.15.
Troubleshooting
To determine if this is the issue, perform the following steps:
Step
Action
1
On each of the Lexmark Print Management application servers:
Navigate to the
\tomcat\logs
directory,
e.g.
, C:\Program Files\Lexmark\Solutions\tomcat\logs, and locate the
stacktrace.log
file.
2
Is the
file size
larger than expected and with a
recent time stamp
?
For reference, a typical log file size is between
30KB
and
100KB.
If
yes
, the server is likely at risk, and see next
step 3
.
If
no
, contact your next level of support or Lexmark Technical Support for additional troubleshooting instructions.
3
Implement the
2-step patching process
, which involves
adding code
to
two files
on the application server(s), and
restarting
the
Lexmark Solutions Application Service
on the server.
For a single-server LPM environment, see
Single-server instructions
directly below.
OUTAGE NOTE:
A very brief outage occurs as the service restarts.
For a multi-server LPM environment, see Multi-server instructions below.
OUTAGE NOTE:
No outage occurs if each application server is patched independently.
Single-Server instructions
Resolving the stacktrace issue involves adding code to
two files
on the application server.
Step 1: Adding code to lpm file 1:
  1. On the Lexmark Print Management server, navigate to this directory:
    \apps\lpm\WEB-INF\classes
    , e.g., C:\Program Files\Lexmark\Solutions\ apps\lpm\WEB-INF\classes
  2. Locate
    log4j-config.groovy.
  3. Make a backup copy of this file, e.g.,
    log4j-config.bak
    , in the unlikely event you need to restore it later.
  4. Edit the log4j-config.groovy file in
    Notepad
    . Under production, add the new lines of code in red to the appenders block, so it looks like the code below, and then
    save the fil
    e. appenders {
    appender new RollingFileAppender( name: "stacktrace", maxFileSize: "20MB", maxBackupIndex: 20, threshold: org.apache.log4j.Level.ERROR, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/lpm_stacktrace.log")
    appender new RollingFileAppender( name: "logFile", maxFileSize: "20MB", maxBackupIndex: 20, threshold: fileLevelThreshold, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/lpm.log") }
    Step 2: Adding code to idm file 2:
  5. Again, on the LPM server, navigate to this directory:
    \apps\idm\WEB-INF\classes
    ,
    e.g.
    , C:\Program Files\Lexmark\Solutions\ apps\idm\WEB-INF\classes
  6. Locate
    log4j-config.groovy
    .
  7. Make a
    backup
    copy of this file,
    e.g
    .,
    log4j-config.bak
    , in case you need to restore it later.
  8. Edit the log4j-config.groovy file in
    Notepad
    . Under production, add the new lines of code in
    red
    to the appenders block so it looks like the code below and then
    save the file
    . appenders {
    appender new RollingFileAppender( name: "stacktrace", maxFileSize: "20MB", maxBackupIndex: 20, threshold: org.apache.log4j.Level.ERROR, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/idm_stacktrace.log")
    appender new RollingFileAppender( name: "logFile", maxFileSize: "20MB", maxBackupIndex: 20, threshold: fileLevelThreshold, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/idm.log") }
    Step 3: Restart LSAS and confirm the creation of new logs
  9. After Lexmark Solutions Application Service (LSAS) restarts, confirm that
    \tomcat\logs\lpm_stacktrace.log
    and
    \tomcat\logs\idm_stacktrace.log
    have now been created.
  10. If you wish, you can delete the original stacktrace.log file as it is no longer used.
    \tomcat\logs\stacktrace.log
Multi-Server instructions
NOTE:
Patch one server at a time, setting it offline to ensure all jobs flow to the active servers during the patching process. For each server in your environment, you will need to change two files on each application server.
Step 1: Adding code to lpm file 1:
  1. Open the
    Lexmark Management Console
    , go the
    System tab
    and then
    set the first server
    to be patched to
    offline
    .
  2. On the offline application server, navigate to this directory:
    \apps\lpm\WEB-INF\classes
    ,
    e.g.
    , C:\Program Files\Lexmark\Solutions\ apps\lpm\WEB-INF\classes
  3. Locate
    log4j-config.groovy
  4. Make a
    backup
    copy of this file,
    e.g
    .,
    log4j-config.bak
    , in the unlikely event you need to restore it later.
  5. Edit the log4j-config.groovy file in Notepad. Under production, add the new lines of code in
    red
    to the appenders block so it looks like the code below and then
    save the file
    . appenders {
    appender new RollingFileAppender( name: "stacktrace", maxFileSize: "20MB", maxBackupIndex: 20, threshold: org.apache.log4j.Level.ERROR, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/lpm_stacktrace.log")
    appender new RollingFileAppender( name: "logFile", maxFileSize: "20MB", maxBackupIndex: 20, threshold: fileLevelThreshold, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/lpm.log") }
    Step 2: Adding code to idm file 2:
  6. Again, on the LPM server, navigate to this directory: \apps\idm\WEB-INF\classes,
    e.g.
    , C:\Program Files\Lexmark\Solutions\ apps\idm\WEB-INF\classes
  7. directory and find the
    log4j-config.groovy
  8. Make a
    backup
    copy of this file,
    e.g.
    ,
    log4j-config.bak
    , in the unlikely event you need to restore it later.
  9. Edit the log4j-config.groovy file in Notepad. Under production, add the new lines of code in
    red
    to the appenders block so it looks like the code below and then
    save the file
    . appenders {
    appender new RollingFileAppender( name: "stacktrace", maxFileSize: "20MB", maxBackupIndex: 20, threshold: org.apache.log4j.Level.ERROR, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/idm_stacktrace.log")
    appender new RollingFileAppender( name: "logFile", maxFileSize: "20MB", maxBackupIndex: 20, threshold: fileLevelThreshold, layout: pattern(conversionPattern: "%d [%t] %-5p %c{2.EN_US} %x - %m%n"), file: "${LOGDIRECTORY.EN_US}/idm.log") }
    Step 3: Restart LSAS and confirm the creation of new logs
  10. Restart the Lexmark Solutions Application Service (LSAS) on this server only.
  11. After LSAS restarts, confirm that
    \tomcat\logs\lpm_stacktrace.log
    and
    \tomcat\logs\idm_stacktrace.log
    have now been created:
  12. If you wish, you can delete the original stacktrace.log file as it is no longer used.
    \tomcat\logs\stacktrace.log
  13. Return to the Lexmark Management Console and set the server back online.
  14. Repeat these 3 steps (
    a-m
    ) for all servers in your environment.
Still need help?
If you require additional assistance, please close this window and locate
Get in Touch with Lexmark!
for contact information.
NOTE:
In order to expedite the support process, please be prepared to provide information regarding your issue; e.g.,
name
and
version of solution
,
problem description
, and
affected printer models
.
The support agent may request additional information.
LEGACY ID:
SO8303