progress / iceberg

A collection of code, utilities, and guides from real-world customer engagements.
Other
12 stars 7 forks source link

Stacks for single session instead of all MSAgents #29

Closed c3rberus closed 6 months ago

c3rberus commented 8 months ago

Hello,

Iceberg supports dumping stacks for all MSagents as per docs...

oemanager stacks - [RO] Obtain stack information for all MSAgents for an ABL App

It would be useful in some cases to get stacks for a single session, being able to pass in something like -Dsessid=[SESSION_ID] and get stacks for a single session instead of all.

The API to do this is exposed via oemanager.war, specifically: /applications/{appName}/agents/{agentID}/sessions/{sessionID}/stacks

Would it be possible to add this feature?

DustinGrau-PSC commented 8 months ago

I was about to say, I thought I added the feature recently, and I apparently did. However, it's only used as part of the "Trim Session" functionality to dump the session stack prior to termination. Looks like the front-end would just need to have the input added so it can be passed through. I can add this request to our backlog to prioritize.

c3rberus commented 8 months ago

Yeah, it's great that it's there when trim is called, but sometimes we just want to be able to stack a single running session a few times to see what's going on and where in the call stack things are at :) Thanks for adding this to the backlog, I will keep an eye out and test it out when it becomes available.

c3rberus commented 6 months ago

Hi Dustin, any update on this one?

DustinGrau-PSC commented 6 months ago

Unfortunately no movement yet due to higher priorities since the start of the year. It's still logged and waiting for action.

DustinGrau-PSC commented 6 months ago

Good news, I was able to take a look at the scope of the change which was small enough to take on for a quick fix. I'm working to get the changes incorporated into the main branch though they are available here if you wish to preview: https://github.com/progress/iceberg/tree/develop-march24

If that branch is gone by the time you have a chance to look, then take that as a sign the enhancement was merged.

UPDATE: The changes have now been merged.

c3rberus commented 6 months ago

Hi Dustin,

This is great news, I tried the latest merge, and it looks like the utils.zip has the dos break lines ^M in the file, this breaks functionality.

Found iceberg repository, continuing.
Buildfile: /usr/local/iceberg/PAS/Management/OEManager/ABL/build.xml

deploy:
    [unzip] Expanding: /usr/local/iceberg/PAS/Management/OEManager/ABL/utils.zip into /xxx/xxx/xxx/utils

BUILD SUCCESSFUL
Total time: 0 seconds
Iceberg OEManager WebApp has been deployed.
oemanager.sh: line 3: $'\r': command not found
oemanager.sh: line 5: $'\r': command not found
oemanager.sh: line 55: syntax error near unexpected token `$'do\r''
'emanager.sh: line 55: `for arg in "$@"; do

I can work around this, but just as a FYI.

DustinGrau-PSC commented 6 months ago

That's interesting as I did not directly modify the shell scripts as part of the work done. I'll need to check the build process to see if it was due to error while creating the zip file or when copying between our internal and public repositories.

If you are able to work around the line endings and confirm the changes, I can at least close this request and work on correcting the build artifacts.

c3rberus commented 6 months ago

I tried the latest pull request, and I get below error.

Buildfile: /usr3/wrk/training/utils/oemanager.xml

status:
     [echo] Code Release: 2024-02-29T13:08:48.666
     [echo]
     [echo] DLC Home: /usr3/dlc
     [echo] OpenEdge Version: 12.2.13

BUILD FAILED
/usr3/wrk/training/utils/oemanager.xml:605: The following error occurred while executing this line:
/usr3/wrk/training/utils/oemanager.xml:363: Problem: failed to create task or type else
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
DustinGrau-PSC commented 6 months ago

Ah, I see it. Looks like a syntax error in the Ant script for sure. If you can, take from this branch and let me know if it works better. If things look good then I'll get it merged.

https://github.com/progress/iceberg/tree/develop-march24

c3rberus commented 6 months ago

Hi Dustin,

Using the latest works, no issues and I am able to stack a single session. Thanks for your help with this!