Chapter 4. Retrieving CodeReady Workspaces logs For information about obtaining various types of logs in CodeReady Workspaces, see the following sections: Section 4.1, "Configuring server logging" Section 4.2, "Accessing OpenShift events on OpenShift" Section 4.4, "Viewing CodeReady Workspaces server logs" Section 4.5, "Viewing external service logs" Section 4.6, "Viewing the plug-in broker logs" Section 4.7, "Collecting logs using crwctl" 4.1. Configuring server logging It is possible to fine-tune the log levels of individual loggers available in the CodeReady Workspaces server. The log level of the whole CodeReady Workspaces server is configured globally using the cheLogLevel configuration property of the Operator. See https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces/2.15/html-single/installation_guide/index#checluster-custom-resource-fields-reference.adoc . To set the global log level in installations not managed by the Operator, specify the CHE_LOG_LEVEL environment variable in the che ConfigMap. It is possible to configure the log levels of the individual loggers in the CodeReady Workspaces server using the CHE_LOGGER_CONFIG environment variable. 4.1.1. Configuring log levels The format of the value of the CHE_LOGGER_CONFIG property is a list of comma-separated key-value pairs, where keys are the names of the loggers as seen in the CodeReady Workspaces server log output and values are the required log levels. In Operator-based deployments, the CHE_LOGGER_CONFIG variable is specified under the customCheProperties of the custom resource. For example, the following snippet would make the WorkspaceManager produce the DEBUG log messages. ... server: customCheProperties: CHE_LOGGER_CONFIG: "org.eclipse.che.api.workspace.server.WorkspaceManager=DEBUG" 4.1.2. Logger naming The names of the loggers follow the class names of the internal server classes that use those loggers. 4.1.3. Logging HTTP traffic It is possible to log the HTTP traffic between the CodeReady Workspaces server and the API server of the Kubernetes or OpenShift cluster. To do that, one has to set the che.infra.request-logging logger to the TRACE level. ... server: customCheProperties: CHE_LOGGER_CONFIG: "che.infra.request-logging=TRACE" 4.2. Accessing OpenShift events on OpenShift For high-level monitoring of OpenShift projects, view the OpenShift events that the project performs. This section describes how to access these events in the OpenShift web console. Prerequisites A running OpenShift web console. Procedure In the left panel of the OpenShift web console, click the Home Events . To view the list of all events for a particular project, select the project from the list. The details of the events for the current project are displayed. Additional resources For a list of OpenShift events, see Comprehensive List of Events in OpenShift documentation . 4.3. Viewing the state of the CodeReady Workspaces cluster deployment using OpenShift 4 CLI tools This section describes how to view the state of the CodeReady Workspaces cluster deployment using OpenShift 4 CLI tools. Prerequisites An instance of Red Hat CodeReady Workspaces running on OpenShift. An installation of the OpenShift command-line tool, oc . Procedure Run the following commands to select the crw project: Run the following commands to get the name and status of the Pods running in the selected project: Check that the status of all the Pods is Running . Example 4.1. Pods with status Running NAME READY STATUS RESTARTS AGE codeready-8495f4946b-jrzdc 0/1 Running 0 86s codeready-operator-578765d954-99szc 1/1 Running 0 42m keycloak-74fbfb9654-g9vp5 1/1 Running 0 4m32s postgres-5d579c6847-w6wx5 1/1 Running 0 5m14s To see the state of the CodeReady Workspaces cluster deployment, run: USD oc logs --tail=10 -f `(oc get pods -o name | grep operator)` Example 4.2. Logs of the Operator: time="2019-07-12T09:48:29Z" level=info msg="Exec successfully completed" time="2019-07-12T09:48:29Z" level=info msg="Updating eclipse-che CR with status: provisioned with OpenShift identity provider: true" time="2019-07-12T09:48:29Z" level=info msg="Custom resource eclipse-che updated" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: ConfigMap, name: che" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: ConfigMap, name: custom" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: Deployment, name: che" time="2019-07-12T09:48:30Z" level=info msg="Updating eclipse-che CR with status: CodeReady Workspaces API: Unavailable" time="2019-07-12T09:48:30Z" level=info msg="Custom resource eclipse-che updated" time="2019-07-12T09:48:30Z" level=info msg="Waiting for deployment che. Default timeout: 420 seconds" 4.4. Viewing CodeReady Workspaces server logs This section describes how to view the CodeReady Workspaces server logs using the command line. 4.4.1. Viewing the CodeReady Workspaces server logs using the OpenShift CLI This section describes how to view the CodeReady Workspaces server logs using the OpenShift CLI (command line interface). Procedure In the terminal, run the following command to get the Pods: Example To get the logs for a deployment, run the following command: Example 4.5. Viewing external service logs This section describes how the view the logs from external services related to CodeReady Workspaces server. 4.5.1. Viewing RH-SSO logs The RH-SSO OpenID provider consists of two parts: Server and IDE. It writes its diagnostics or error information to several logs. 4.5.1.1. Viewing the RH-SSO server logs This section describes how to view the RH-SSO OpenID provider server logs. Procedure In the OpenShift Web Console, click Deployments . In the Filter by label search field, type keycloak to see the RH-SSO logs. . In the Deployment Configs section, click the keycloak link to open it. In the History tab, click the View log link for the active RH-SSO deployment. The RH-SSO logs are displayed. Additional resources See the Section 4.4, "Viewing CodeReady Workspaces server logs" for diagnostics and error messages related to the RH-SSO IDE Server. 4.5.1.2. Viewing the RH-SSO client logs on Mozilla Firefox This section describes how to view the RH-SSO IDE client diagnostics or error information in the Mozilla Firefox WebConsole . Procedure Click Menu > WebDeveloper > WebConsole . 4.5.1.3. Viewing the RH-SSO client logs on Google Chrome This section describes how to view the RH-SSO IDE client diagnostics or error information in the Google Chrome Console tab. Procedure Click Menu > More Tools > Developer Tools . Click the Console tab. 4.5.2. Viewing the CodeReady Workspaces database logs This section describes how to view the database logs in CodeReady Workspaces, such as PostgreSQL server logs. Procedure In the OpenShift Web Console, click Deployments . In the Find by label search field, type: app=che and press Enter component=postgres and press Enter The OpenShift Web Console is searching base on those two keys and displays PostgreSQL logs. Click postgres deployment to open it. Click the View log link for the active PostgreSQL deployment. The OpenShift Web Console displays the database logs. Additional resources Some diagnostics or error messages related to the PostgreSQL server can be found in the active CodeReady Workspaces deployment log. For details to access the active CodeReady Workspaces deployments logs, see the Section 4.4, "Viewing CodeReady Workspaces server logs" section. 4.6. Viewing the plug-in broker logs This section describes how to view the plug-in broker logs. The che-plugin-broker Pod itself is deleted when its work is complete. Therefore, its event logs are only available while the workspace is starting. Procedure To see logged events from temporary Pods: Start a CodeReady Workspaces workspace. From the main OpenShift Container Platform screen, go to Workload Pods . Use the OpenShift terminal console located in the Pod's Terminal tab Verification step OpenShift terminal console displays the plug-in broker logs while the workspace is starting 4.7. Collecting logs using crwctl It is possible to get all Red Hat CodeReady Workspaces logs from a OpenShift cluster using the crwctl tool. crwctl server:deploy automatically starts collecting Red Hat CodeReady Workspaces servers logs during installation of Red Hat CodeReady Workspaces crwctl server:logs collects existing Red Hat CodeReady Workspaces server logs crwctl workspace:logs collects workspace logs

Commands:
server: customCheProperties: CHE_LOGGER_CONFIG: "org.eclipse.che.api.workspace.server.WorkspaceManager=DEBUG"
server: customCheProperties: CHE_LOGGER_CONFIG: "che.infra.request-logging=TRACE"
oc project <project_name>
oc get pods
NAME READY STATUS RESTARTS AGE codeready-8495f4946b-jrzdc 0/1 Running 0 86s codeready-operator-578765d954-99szc 1/1 Running 0 42m keycloak-74fbfb9654-g9vp5 1/1 Running 0 4m32s postgres-5d579c6847-w6wx5 1/1 Running 0 5m14s
oc logs --tail=10 -f `(oc get pods -o name | grep operator)`
time="2019-07-12T09:48:29Z" level=info msg="Exec successfully completed" time="2019-07-12T09:48:29Z" level=info msg="Updating eclipse-che CR with status: provisioned with OpenShift identity provider: true" time="2019-07-12T09:48:29Z" level=info msg="Custom resource eclipse-che updated" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: ConfigMap, name: che" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: ConfigMap, name: custom" time="2019-07-12T09:48:29Z" level=info msg="Creating a new object: Deployment, name: che" time="2019-07-12T09:48:30Z" level=info msg="Updating eclipse-che CR with status: CodeReady Workspaces API: Unavailable" time="2019-07-12T09:48:30Z" level=info msg="Custom resource eclipse-che updated" time="2019-07-12T09:48:30Z" level=info msg="Waiting for deployment che. Default timeout: 420 seconds"
oc get pods
oc get pods NAME READY STATUS RESTARTS AGE codeready-11-j4w2b 1/1 Running 0 3m
oc logs <name-of-pod>
oc logs codeready-11-j4w2b