× 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.



Jim, thanks for the link.  I tried using PEX data collection but as Jon mentioned I can not see any HLL statements.  I created my PEX session as follows:

1. Add PEX Definition (ADDPEXDFN)-Command to add a PEX definition that specifies what type of data is to be collected and what jobs are to be sampled or traced.

ADDPEXDFN DFN(BF2100) TYPE(*PROFILE) PRFTYPE(*PGM) JOB((*ALL *ALL)) TASK(*ALL) PGM((TSXOBJS/BF2100)) INTERVAL(0.1)

2. Start PEX (STRPEX)-Command to start a PEX collection.

STRPEX SSNID(BF2100) DFN(BF2100)

2.5 Call the program to be traced

CALL BF2100CL

3. End PEX (ENDPEX)-Command to end a PEX collection and store the data. If needed, a collection can be suspended with ENDPEX and resumed with STRPEX.

ENDPEX

4. Print PEX Report (PRTPEXRPT)-Command to print a PEX report

PRTPEXRPT MBR(BF2100) LIB(QPEXDATA) TYPE(*PROFILE) PROFILEOPT(*SAMPLECOUNT *STATEMENT)

After generating the report I looked at the spool file but I couldn't see anything relating to HLL statements.

I also checked all the files created in QPEXDATA and couldn't see anything there as well.

Am I running  it incorrectly?  You mention iDoctor.  Is iDoctor required to see the HLL statements?

Thanks,

Rob
On 12/4/2018 11:18 AM, Jim Oberholtzer wrote:
The PEX will trace all the way up to the statement number in the HLL
program.

Here's where a copy of iDoctor really helps since IBM already has done the
query work.


--
Jim Oberholtzer
Agile Technology Architects

-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxx> On Behalf Of Jon Paris
Sent: Tuesday, December 04, 2018 10:00 AM
To: Rpg400 Rpg400-L <rpg400-l@xxxxxxxxxxxx>
Subject: Re: IBM Trace Utility (Was How to display which debug views are
available.)

It sounded as if the MI layer was all he was seeing Jim - it is the HLL
level he needed and didn't seem to be seeing.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Dec 4, 2018, at 7:58 AM, Jim Oberholtzer <midrangel@xxxxxxxxxxxxxxxxx>
wrote:
A PEX data collection will give you all the information you are after,
then use PDI or your own SQL to list off the exectution list. It will even
show MI layer if you need it.

--
Jim Oberholtzer
Agile Technology Architects

-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxx> On Behalf Of Robert
Rogerson
Sent: Monday, December 03, 2018 6:50 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: IBM Trace Utility (Was How to display which debug views are
available.)

Hi all,

I have a working prototype of my trace utility working by calling the
Debugger APIs. The problem is that for a very large program the trace may
take several minutes.
Mark Waterbury suggested I look at IBM's trace utilities.

I wanted to trace program execution for program BF2100 and here is how I
ran it..
- Add a traced filter

ADDTRCFTR FTR(BF2100FLT) PGMFTR(*EQ ((BF2100)))

- Start the trace

STRTRC SSNID(*GEN) JOBTRCTYPE(*ALL) TRCFTR(BF2100FLT)

- End the trace

ENDTRC SSNID(*PRV) DTALIB(TSXROB)

I checked all the files it created but didn't see anything that looked
like HLL statements or flow. There is a lot of data created but it all
seems to be at a lower level than a HLL language (in this case RPG).
Does anyone know if IBM's trace utilities can be used to expose program
execution at a HLL language level?
The major reason I'm investigating this avenue is that IBM's trace utility
runs so much faster than my trace utility using debugging APIs.
I just don't want to be working on developing a utility and using the
wrong tool.
Thanks,

Rob

On 12/2/2018 10:39 AM, Robert Rogerson wrote:
Thanks Bruce, Jon and Mark (who replied off list).

To give a little background on what I'm doing. I'm writing a trace
utility for tracing program execution. As you(s) mentioned I do this
by calling the Debugger APIs. When I call the QteRetrieveModuleViews
and the *LISTING, *SOURCE or *COPY views are not available I can not
"trace" the execution of this module.

I was wondering if there was a way, before calling the
QteRetrieveModuleViews in my trace utility, to check if I should even
attempt to trace the program or give the user a message that the
program needs to be recompiled with DBGVIEW(*LIST/*SOURCE/*COPY)

Wait, Vern just replied...

Thanks,

Rob

On 12/2/2018 10:00 AM, Jon Paris wrote:
Bruce beat me to it - the debug APIs are the way to go. That is
what RDi uses under the hood.

There's a decent explanation of the way all the APIs fit together
here:
https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/apiref/a
p
iexusdeb.htm
<https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/apiref/
a piexusdeb.htm> that is for 7.2 but nothing has changed as far as I
know. Penton published an article years ago showing how to use these
to retrieve source from a program compiled with listing view - sadly
that has gone th way of all of their content.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Dec 2, 2018, at 9:47 AM, Bruce Vining <bruce.vining@xxxxxxxxx>
wrote:

I am currently not connected to an i (though working on it) so I
can't say that I've used it, but you may want to take a look at the
Retrieve Module Views (QteRetrieveModuleViews) API

<https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_73/apis/QTERTVMV.h
tm>.
The documentation indicates that this API returns (along with a
whole lot of other things):

View type. The type of view. The view type can be one of the
following
values:
**TEXT* This is a view where text comes from files or text supplied
by the processor.
**LISTING* This is a view where text comes entirely from text
supplied by the processor.
**STATEMENT* This is a view consisting of statement identifiers.
All modules have a statement view.

Bruce

On Sun, Dec 2, 2018 at 8:41 AM Robert Rogerson
<rogersonra@xxxxxxxxx> wrote:

Brian is correct. I'm trying to find if the object itself has an
indication of the available debug views without entering debug. So
far I haven't found on Google nor the IBM site indicating if this
is possible. I was hoping that someone on this list may know of a
way.

Thanks,

Rob

On 12/2/2018 7:02 AM, Brian Parkins wrote:
Indeed. But Rob's original question was how to find this out
_without_ initiating a debug session in RDi or STRDBG. Any ideas?

Brian.

On 01/12/2018 22:34, Marvin Radding wrote:
Enter debug and press F15. It will show a list of the view
available.

Thanks,

Marvin
No trees were killed in the sending of this message, but a large
number of electrons were terribly inconvenienced, traumatized,
triggered, and crying for their safe spaces.

-----Original Message-----
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf
Of Brian Parkins
Sent: Saturday, December 01, 2018 1:43 PM
To: RPG programming on the IBM i (AS/400 and iSeries)
<rpg400-l@xxxxxxxxxxxx>
Subject: Re: How to display which debug views are available.

I think Paul is suggesting the use of the DSPPGM command. Press
ENTER until the *MODULE detail panel is displayed, then type
option 5).
against the Module(s).

However, this shows only,
Debug data . . . . . . . . . . . . . . . . . . : *YES

- and doesn't answer Rob's question. How to tell WHICH debug
views, (*LISTING, SOURCE, etc.) are available. DSPPGM does not
provide this information, as Rob has already discovered.

I've no idea how you would find this out without initiating a
debug session in RDi or STRDBG. The System APIs don't appear to
help either.

Brian.

On 01/12/2018 21:04, Steinmetz, Paul wrote:
DSPPGM
Then
5=Display description

Paul

-----Original Message-----
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf
Of Robert Rogerson
Sent: Saturday, December 01, 2018 3:48 PM
To: RPG programming on the IBM i / System i
Subject: How to display which debug views are available.

Hi all,

Can I tell from an object which is already created which debug
views are available?

I understand that when creating an object you may specify which
debug views (*LISTING, *SOURCE, *COPY) you wish to make
available. But if the object (in my case a program) has already
been created how do I tell which views are available. I've
tried dsppgm but I don't see any view information. The only
way I've found is through starting debug on the program and
pressing F15=Select view .

Thanks,

Rob

--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list To post a message email:
RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list
options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/rpg400-l
.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate link: https://amazon.midrange.com
Notice: This e-mail transmission may contain information that is
proprietary, privileged and/or confidential and is intended
exclusively for the person(s) to whom it is addressed. This
message may also contain Protected Health Information (PHI) and
must be treated confidentially and handled in accordance with
HIPAA and other federal and state privacy laws. Any use,
copying, retention or disclosure by any person other than the
intended recipient or the intended recipient's designees is
strictly prohibited. If you are not the intended recipient or
their designee, please notify the sender immediately and delete
this e-mail (and any accompanying attachments).
--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
Thanks and Regards,
Bruce
931-505-1915
--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate link: https://amazon.midrange.com
--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link:
https://amazon.midrange.com


As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.