Kubernetes Logs

GitLab makes it easy to view the logs of running pods or managed applications in connected Kubernetes clusters. By displaying the logs directly in GitLab in the Log Explorer, developers can avoid managing console tools or jumping to a different interface. The Log Explorer interface provides a set of filters above the log file data, depending on your configuration:

Pod logs

  • Namespace - Select the environment to display. Users with Maintainer or greater permissions can also select Managed Apps.
  • Search - Only available if the Elastic Stack managed application is installed.
  • Select time range - Select the range of time to display. Only available if the Elastic Stack managed application is installed.
  • Scroll to bottom {scroll_down} - Scroll to the end of the displayed logs.
  • Refresh {retry} - Reload the displayed logs.

To learn more about the Log Explorer, see APM - Log Explorer.

Learn more about Kubernetes + GitLab. Everything you need to build, test, deploy, and run your application at scale.

Requirements

Deploying to a Kubernetes environment is required to use Logs.

Accessing the log explorer

To access the Log explorer, click the More actions {ellipsis_v} menu on a metrics dashboard and select View logs, or:

  1. Sign in as a user with the View pod logs permissions in the project.

  2. To navigate to the Log Explorer from the sidebar menu, go to {cloud-gear} Operations > Pod logs. (Introduced in GitLab 12.5.)

  3. To navigate to the Log Explorer from a specific pod on a Deploy Board:

    1. Go to {cloud-gear} Operations > Environments and find the environment which contains the desired pod, like production.
    2. On the Environments page, you should see the status of the environment's pods with Deploy Boards.
    3. When mousing over the list of pods, GitLab displays a tooltip with the exact pod name and status. Deploy Boards pod list
    4. Click on the desired pod to display the Log Explorer.

Logs view

The Log Explorer lets you filter the logs by:

Loading more than 500 log lines is possible from GitLab 12.9 onward.

Support for pods with multiple containers is coming in a future release.

Support for historical data is coming in a future release.

Filter by date

Introduced in GitLab 12.8.

When you enable Elastic Stack on your cluster, you can filter logs displayed in the Log Explorer by date.

Click Show last in the Log Explorer to see the available options.

Full text search

Introduced in GitLab 12.7.

When you enable Elastic Stack on your cluster, you can search the content of your logs through a search bar. The search is passed to Elasticsearch using the simple_query_string Elasticsearch function, which supports the following operators:

Operator Description
| An OR operation.
- Negates a single token.
+ An AND operation.
" Wraps a number of tokens to signify a phrase for searching.
* (at the end of a term) A prefix query.
( and ) Precedence.
~N (after a word) Edit distance (fuzziness).
~N (after a phrase) Slop amount.