× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Le 13/01/2023 à 19:04, DEnglander--- via MIDRANGE-L a écrit :
Rob,

Thank you for the help with this. I too have no idea what the job log
server is, so I am not going down that road. I did manage to see that
Pending joblogs, which the job log server seems to manage, still take
space in the system job tables [DSPJOBTBL, then F11].

Job log server is one of the (possibly) multiple QJOBLOGSVR jobs running in QSYSWRK subsystem and started with STRLOGSVR command and QJOBLOGAJ autostart job in QSYSWRK subsystem. It is responsible to produce job log of jobs with LOGOUTPUT(*JOBLOSVR) attribute when they end.



I already am using the OVRPRTF for QPJOBLOG, and it is working nicely for
all job logs produced within the CL. The problem comes when the RUNJVA
command is executed in the CL. When that happens, the system spawns a
whole new job and the OVRPRTF is lost on that job. It would be great if
there was a parameter on the RUNJVA command that would allow you to
specify whether or not the system should carry any overrides from the
current job to the spawned job when it is created.

Job log attribute of spawned QJVACMDSRV job inherits the one of job which runs RUNJVA command. You probably have LOGOUTPUT(*JOBEND) in your RUNJVA command job. It means that QJVACMDSRV has this LOGOUTPUT(*JOBEND) attribute as well.

When a program initiates a RUNJVA command, it receives a CPC1129 message id completion message. Therefore, a possible solution to your request is to browse the program message queue to retrieve the fully qualified QJVACMDSRV job name. Here is an example of the joblog in that case.

RUNJVA CLASS(lkdsjflqskfj)
Object QP0ZTRML type *DTAQ created in library QTEMP.
Job 852020/DIMARCO/QPAD195645 changed by JOBMANAGER.
Java program run in job 852150/DIMARCO/QJVACMDSRV completed.
Object QP0ZTRML in QTEMP type *DTAQ deleted.
Java program completed with exit code 1

Once you have the fully qualified job name, you can do what you want on the QPJOBLOG spool file it creates. You can delete it or set an expiration date. For example to set a 3 days expiration, use a similar command.

CHGSPLFA FILE(QPJOBLOG) JOB(852150/DIMARCO/QJVACMDSRV) SPLNBR(1) EXPDATE(*DAYS) DAYS(1)

The spooled file will be deleted three days after creation date when you run DLTEXPSPLF command, that can be scheduled on a daily basis.


I thought the DELETE_OLD_SPOOLED_FILES procedure was the solution, and it
could be in the future, but I would need to narrow down the scope further,
minimally by specifiying USRDTA, and in its current version, that
parameter is not available.

I think for now I will write an ILERPG program that uses
qsys2/output_queue_entries and selects specific entries based on criteria
in a table. Then if the criteria is met, the program will execute a
DLTSPLF command.

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.