# Code generated by skv2. DO NOT EDIT. apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: crd.solo.io/specHash: f00a6ae827dabac8 crd.solo.io/version: 2.14.0 labels: app: gloo-mesh-apis app.kubernetes.io/name: gloo-mesh-apis name: accesslogpolicies.observability.policy.gloo.solo.io spec: group: observability.policy.gloo.solo.io names: categories: - solo-io kind: AccessLogPolicy listKind: AccessLogPolicyList plural: accesslogpolicies singular: accesslogpolicy scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .status.common.State.approval name: Status type: string name: v2 schema: openAPIV3Schema: properties: spec: description: Specifications for the policy. properties: applyToWorkloads: description: |- Select the workloads where access logs will be collected. If empty, the policy applies to all workloads in the workspace. items: description: |- WorkloadSelector is a Selector specifically built for selecting individual workloads. Workloads must have injected sidecar proxies or be standalone gateway proxies to be selected by Gloo Mesh policies. This selector can be used to select Kubernetes workloads (KUBE) or sidecar-injected external endpoints (VM). properties: kind: description: The kind of workload being selected. Defaults to Kube. enum: - KUBE - VM type: string port: description: |- The port to select on the selected workloads. Only applies to policies which select specific workload ports, such as the WasmDeploymentPolicy. oneOf: - not: anyOf: - required: - number - required: - name - required: - number - required: - name properties: name: description: the name of the port on the destination objects being targeted. type: string number: description: the number of the port on the destination objects being targeted. maximum: 65535 minimum: 1 type: integer type: object selector: description: Selector used to match Workload objects by their metadata. properties: cluster: description: |- Only select objects in the matching cluster. If omitted, Gloo selects matching objects across all clusters available in the parent object's workspace. type: string labels: additionalProperties: type: string description: labels matching those of the object type: object name: description: |- Only select objects with the matching name. If omitted, Gloo selects matching objects with any name available in the parent object's workspace. type: string namespace: description: |- Only select objects in the matching namespace. If omitted, Gloo selects matching objects across all namespaces available in the parent object's workspace. type: string workspace: description: |- Only select objects in the given workspace. If omitted, Gloo selects matching objects across all workspaces available in the parent object's workspace. type: string type: object type: object type: array config: description: Details of the policy specifying how to collect access logs from the selected workloads. properties: filters: description: |- Criteria for determining which access logs are recorded for the workload. The list is disjunctive, meaning that a request is logged if it matches any filter. If empty, all access logs are recorded. items: description: Criteria for recording access logs. A request must match all specified criteria in the filter to be recorded. oneOf: - not: anyOf: - required: - statusCodeMatcher - required: - headerMatcher - required: - statusCodeMatcher - required: - headerMatcher properties: headerMatcher: description: Matches against a request or response HTTP header. Omit to match any headers. properties: invertMatch: description: |- If set to true, the result of the match will be inverted. Defaults to false. Examples: - name=foo, invert_match=true: matches if no header named `foo` is present - name=foo, value=bar, invert_match=true: matches if no header named `foo` with value `bar` is present - name=foo, value=``\d{3}``, regex=true, invert_match=true: matches if no header named `foo` with a value consisting of three integers is present. type: boolean name: description: Specify the name of the header in the request. type: string regex: description: Specify whether the header value should be treated as regex. type: boolean value: description: |- Specify the value of the header. If the value is absent a request that has the name header will match, regardless of the header’s value. type: string type: object statusCodeMatcher: description: Matches against a response HTTP status code. Omit to match any status code. properties: comparator: description: The comparison type used for matching. enum: - EQ - GE - LE type: string value: description: The status code value to match against. maximum: 4294967295 minimum: 0 type: integer type: object type: object type: array includedFilterStateObjects: description: Filter state objects to include in access logs. items: type: string type: array includedRequestHeaders: description: Request headers to include in access logs. items: type: string type: array includedResponseHeaders: description: Response headers to include in access logs. items: type: string type: array includedResponseTrailers: description: Response trailers to include in access logs. items: type: string type: array type: object type: object status: description: The status of the policy after it is applied to your Gloo environment. properties: common: description: The state and workspace conditions of the applied policy. properties: State: properties: approval: description: |- Whether the resource has been accepted as valid and processed in the Gloo Mesh config translation. enum: - PENDING - ACCEPTED - INVALID - WARNING - FAILED - UNLICENSED type: string message: description: Additional information about the current state of the resource. type: string observedGeneration: description: |- The most recent generation observed in the object's metadata. If the `observedGeneration` does not match `metadata.generation`, Gloo Mesh has not processed the most recent version of this object. format: int64 type: integer type: object workspaceConditions: additionalProperties: maximum: 4294967295 minimum: 0 type: integer description: |- A map of ApprovalState to the number of workspaces in this condition, e.g., "Accepted" -> 2 "Pending" -> 1 type: object type: object numSelectedWorkloads: description: The number of workloads selected by the policy. maximum: 4294967295 minimum: 0 type: integer type: object type: object served: true storage: true subresources: status: {} ---