Skip to content

Commit ee4eec9

Browse files
olegbetobetsun
andauthored
fix(KAR-577): too many requests error in vector pod (#7614)
* fix(KAR-577): too many requests error in vector pod Signed-off-by: obetsun <[email protected]> rh-pre-commit.version: 2.3.2 rh-pre-commit.check-secrets: ENABLED * fix resources requests and reduce script behavior Signed-off-by: obetsun <[email protected]> rh-pre-commit.version: 2.3.2 rh-pre-commit.check-secrets: ENABLED --------- Co-authored-by: obetsun <[email protected]>
1 parent e211e9c commit ee4eec9

File tree

4 files changed

+33
-26
lines changed

4 files changed

+33
-26
lines changed

components/vector-kubearchive-log-collector/development/loki-helm-values.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,15 @@ loki:
5555
index:
5656
prefix: loki_index_
5757
period: 24h
58+
# Configure ingestion limits to handle Vector's data volume
59+
limits_config:
60+
ingestion_rate_mb: 16 # Increase from default 4MB to 16MB per second
61+
ingestion_burst_size_mb: 32 # Allow bursts up to 32MB
62+
max_line_size: 256KB # Allow larger log lines
63+
max_streams_per_user: 10000 # Allow more streams per tenant
64+
max_global_streams_per_user: 50000
65+
reject_old_samples: false # Don't reject old samples
66+
reject_old_samples_max_age: 168h # Accept samples up to 7 days old
5867
# Required storage configuration for Helm chart
5968
storage:
6069
type: filesystem

components/vector-kubearchive-log-collector/development/vector-helm-values.yaml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,8 @@ customConfig:
118118
# Direct connection to Loki service (no gateway)
119119
endpoint: "http://vector-kubearchive-log-collector-loki.product-kubearchive-logging.svc.cluster.local:3100"
120120
encoding:
121-
codec: "json"
121+
codec: "text" # Use text instead of json to avoid metadata issues
122+
except_fields: ["tmp"] # Exclude temporary fields
122123
auth:
123124
strategy: "basic"
124125
user: "${LOKI_USERNAME}"
@@ -127,10 +128,12 @@ customConfig:
127128
request:
128129
headers:
129130
X-Scope-OrgID: kubearchive
131+
timeout_secs: 60 # Shorter timeout
130132
batch:
131-
max_bytes: 10485760
132-
timeout_secs: 300
133-
compression: "none"
133+
max_bytes: 2097152 # Reduce to 2MB (half of Loki's 4MB/sec limit)
134+
max_events: 1000 # Limit number of events per batch
135+
timeout_secs: 10 # Send batches more frequently
136+
compression: "gzip" # Enable compression to reduce data size
134137
labels:
135138
job: "vector"
136139
pod_id: "{{`{{ pod_id }}`}}"
@@ -140,7 +143,7 @@ customConfig:
140143
buffer:
141144
type: "memory"
142145
max_events: 10000
143-
when_full: "block"
146+
when_full: "drop_newest" # Drop newest instead of blocking
144147
env:
145148
- name: LOKI_USERNAME
146149
valueFrom:

components/vector-kubearchive-log-collector/staging/stone-stg-rh01/loki-helm-values.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,15 @@ loki:
5353
index:
5454
prefix: loki_index_
5555
period: 24h
56+
# Configure ingestion limits to handle Vector's data volume
57+
limits_config:
58+
ingestion_rate_mb: 16 # Increase from default 4MB to 16MB per second
59+
ingestion_burst_size_mb: 32 # Allow bursts up to 32MB
60+
max_line_size: 256KB # Allow larger log lines
61+
max_streams_per_user: 10000 # Allow more streams per tenant
62+
max_global_streams_per_user: 50000
63+
reject_old_samples: false # Don't reject old samples
64+
reject_old_samples_max_age: 168h # Accept samples up to 7 days old
5665
# Required storage configuration for Helm chart
5766
storage:
5867
type: s3

components/vector-kubearchive-log-collector/staging/stone-stg-rh01/vector-helm-values.yaml

Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
role: Agent
33
resources:
44
requests:
5-
cpu: 200m
6-
memory: 1024Mi
5+
cpu: 512m
6+
memory: 4096Mi
77
limits:
8-
cpu: 1000m
9-
memory: 2048Mi
8+
cpu: 2000m
9+
memory: 4096Mi
1010
customConfig:
1111
data_dir: /vector-data-dir
1212
api:
@@ -20,6 +20,7 @@ customConfig:
2020
glob_minimum_cooldown_ms: 500
2121
max_line_bytes: 3145728
2222
auto_partial_merge: true
23+
extra_label_selector: "app.kubernetes.io/managed-by in (tekton-pipelines,pipelinesascode.tekton.dev)"
2324
transforms:
2425
reduce_events:
2526
type: reduce
@@ -92,24 +93,9 @@ customConfig:
9293
.log_type = "application"
9394
}
9495
# --- End: Cronjob Specific Handling ---
95-
# Handling general Kubernetes labels
96-
if exists(.tmp.kubernetes.pod_labels) {
97-
.pod_labels = .tmp.kubernetes.pod_labels
98-
} else {
99-
.pod_labels = "no_labels"
100-
}
101-
# General message field handling
102-
if exists(.tmp.message) {
103-
.message = to_string(del(.tmp.message)) ?? "no_message"
104-
} else {
105-
.message = "no_message"
106-
}
107-
# Basic data sanitization to prevent 400 errors
108-
# Truncate very long messages
109-
if length(.message) > 32768 {
110-
.message = slice!(.message, 0, 32768) + "...[TRUNCATED]"
111-
}
11296
# Clean up temporary fields
97+
.container = del(.tmp.kubernetes.container_name)
98+
.message = del(.tmp.message)
11399
del(.tmp)
114100
sinks:
115101
loki:

0 commit comments

Comments
 (0)