IBM Cloud Code Engine: How to check logs when app not active?

454 Views Asked by At

I have deployed an app to IBM Cloud Code Engine. It has the minimum instances configured to zero, so truly serverless and only active on demand. Now I wanted to check the logs from the CLI with

ibmcloud ce app logs --name myapp --all

it comes back with this message:

FAILED No instances running for application 'myapp'. Verify that the application name is correct and it is running

How can I check the application logs after it has run?

1

There are 1 best solutions below

0
On BEST ANSWER

The Code Engine application (and job) logs can be seen once Application Logging has been enabled. The logs are then available in a separate IBM Cloud Logging dashboard.

I also found this old blog post exlaining how to enable CLI access to those logs. After enabling it I was able to retrieve the app logs using my CLI / development environment.

show JSON log records on CLI

Depending on what I am after, I am using one of these three lines to get to the log data / lines:

python3 searchLogDNA.py myconfig.json 12 "search term" | jq

for pretty printing, or

python3 searchLogDNA.py myconfig.json 12 "search term" | jq "._line"

to extract the actual log line from the record, or

python3 searchLogDNA.py myconfig.json 12 "search term" | jq "._line | fromjson`"

to turn the string with JSON data in the log line to actual JSON output.