Skip to content

Latest commit

 

History

History
67 lines (43 loc) · 2.53 KB

logging.md

File metadata and controls

67 lines (43 loc) · 2.53 KB

Logging

Server-Side Rendering (SSR)

The express.js image serving the Angular Universal Server-Side Rendering can be provisioned to log extended information to the console by supplying the environment variable LOGGING=true.

Information logged to the console includes the following:

  • Requests to the SSR process are logged with morgan (see configuration in server.ts) in the form of:

    <method> <url> <status> <bytes> - <duration> ms

  • Requests handled by the SSR process are logged at the beginning with SSR <url> and at the end with RES <status> <url>.

  • Further the redirect actions of the Hybrid Approach are logged with RED <url>.

  • Uncaught Error objects thrown in the SSR process, including HttpErrorResponse and runtime errors, are printed as well.

NGINX

The NGINX image providing multi-channel configuration uses the default logging capabilities of nginx. You can enable json formatted logging by passing the environment variable LOGFORMAT=json to the container. If no LOGFORMAT variable is passed, the container uses main as its default format.

Additionally, the environment variable DEBUG=true provides even more debugging output in the NGINX logs.

Logging to an External Device

Within PWA development systems, information from the SSR and NGINX containers can be stored in external log files for analysis purposes. When launching your PWA as a Docker image/container, you can copy the log information from the containers which can be stored in the local file system using Docker volumes. Enabled volumes allow you to write SSR and NGINX logs in local Unix/Windows directories.

The path is composed as follows:

  • d:/pwa/logs - The local Windows/Unix directory of the development machine where the logs should be stored.
  • /var/log/ - The log location in the SSR/NGINX container.

To enable logging to volumes, copy the examples below to the according docker-compose.yml sections.

PWA (SSR with PM2)

volumes:
  - d:/pwa/logs:/.pm2/logs/

NGINX

volumes:
  - d:/pwa/logs:/var/log/

Further References