pods_log
Creates, updates, deletes, gets or lists a pods_log resource.
Overview
| Name | pods_log |
| Type | Resource |
| Id | k8s.core.pods_log |
Fields
The following fields are returned by SELECT queries:
- get
| Name | Datatype | Description |
|---|---|---|
log | string |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | name, namespace, protocol, cluster_addr | container, follow, insecure_skip_tls_verify_backend, limit_bytes, pretty, previous, since_seconds, stream, tail_lines, timestamps | read log of the specified Pod |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
cluster_addr | string | (default: localhost, x-stackQL-envVar: KUBE_HOST) |
name | string | name of the Pod |
namespace | string | object name and auth scope, such as for teams and projects |
protocol | string | (default: https, enum: [https, http], x-stackQL-envVar: KUBE_PROTOCOL) |
container | string | The container for which to stream logs. Defaults to only container if there is one container in the pod. |
follow | boolean | Follow the log stream of the pod. Defaults to false. |
insecure_skip_tls_verify_backend | boolean | insecureSkipTLSVerifyBackend indicates that the apiserver should not confirm the validity of the serving certificate of the backend it is connecting to. This will make the HTTPS connection between the apiserver and the backend insecure. This means the apiserver cannot verify the log data it is receiving came from the real kubelet. If the kubelet is configured to verify the apiserver's TLS credentials, it does not mean the connection to the real kubelet is vulnerable to a man in the middle attack (e.g. an attacker could not intercept the actual log data coming from the real kubelet). (wire: insecureSkipTLSVerifyBackend) |
limit_bytes | integer | If set, the number of bytes to read from the server before terminating the log output. This may not display a complete final line of logging, and may return slightly more or slightly less than the specified limit. (wire: limitBytes) |
pretty | string | If 'true', then the output is pretty printed. Defaults to 'false' unless the user-agent indicates a browser or command-line HTTP tool (curl and wget). |
previous | boolean | Return previous terminated container logs. Defaults to false. |
since_seconds | integer | A relative time in seconds before the current time from which to show logs. If this value precedes the time a pod was started, only logs since the pod start will be returned. If this value is in the future, no logs will be returned. Only one of sinceSeconds or sinceTime may be specified. (wire: sinceSeconds) |
stream | string | Specify which container log stream to return to the client. Acceptable values are "All", "Stdout" and "Stderr". If not specified, "All" is used, and both stdout and stderr are returned interleaved. Note that when "TailLines" is specified, "Stream" can only be set to nil or "All". |
tail_lines | integer | If set, the number of lines from the end of the logs to show. If not specified, logs are shown from the creation of the container or sinceSeconds or sinceTime. Note that when "TailLines" is specified, "Stream" can only be set to nil or "All". (wire: tailLines) |
timestamps | boolean | If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line of log output. Defaults to false. |
SELECT examples
- get
read log of the specified Pod
SELECT
log
FROM k8s.core.pods_log
WHERE name = '{{ name }}' -- required
AND namespace = '{{ namespace }}' -- required
AND protocol = '{{ protocol }}' -- required
AND cluster_addr = '{{ cluster_addr }}' -- required
AND container = '{{ container }}'
AND follow = '{{ follow }}'
AND insecure_skip_tls_verify_backend = '{{ insecure_skip_tls_verify_backend }}'
AND limit_bytes = '{{ limit_bytes }}'
AND pretty = '{{ pretty }}'
AND previous = '{{ previous }}'
AND since_seconds = '{{ since_seconds }}'
AND stream = '{{ stream }}'
AND tail_lines = '{{ tail_lines }}'
AND timestamps = '{{ timestamps }}'
;