envoy.server.memory.heap
Heap memory size in bytesDimensions:None
Interface Metrics (3)
Sources
Technical Annotations (61)
Configuration Parameters (12)
dynamic_resources.cds_config.initial_fetch_timeoutrecommended: 0sdynamic_resources.lds_config.initial_fetch_timeoutrecommended: 0slds_config.api_config_source.api_typerecommended: DELTA_GRPCcds_config.api_config_source.api_typerecommended: DELTA_GRPCdynamic_resources.lds_config.api_config_source.api_typerecommended: DELTA_GRPCdynamic_resources.cds_config.api_config_source.api_typerecommended: DELTA_GRPCdynamic_resources.lds_config.api_config_source.transport_api_versionrecommended: V3dynamic_resources.cds_config.api_config_source.transport_api_versionrecommended: V3spec.featureFlags.enableWASMStatsrecommended: truespec.traffic.enablePermissiveTrafficPolicyModerecommended: falseinitial_stream_window_sizeinitial_connection_window_sizeError Signatures (6)
grpc-status: 14error codeno healthy upstreamlog patterngRPC config stream to cluster1 closed sincelog patterngRPC update for type.googleapis.com/envoy.config.cluster.v3.Cluster failedlog patternUnable to establish new stream to configuration serverlog patternEnvoy is not fully initialized, skipping histogram merge and flushing statslog patternCLI Commands (13)
kubectl top pod my-service-pod -n my-namespace --containersdiagnostickubectl exec deploy/my-service -c istio-proxy -- pilot-agent request GET stats | grep "server.memory"diagnostickubectl get pod my-service-pod -n my-namespace -o jsonpath='{.spec.containers[?(@.name=="istio-proxy")].resources.limits.memory}'diagnostickubectl exec deploy/my-service -c istio-proxy -- pilot-agent request GET stats | grep "server.memory_allocated"diagnostickubectl exec deploy/my-service -c istio-proxy -- pilot-agent request GET stats | grep "server.memory_heap_size"diagnosticps_memdiagnostictopdiagnosticsmemdiagnosticcurl 127.0.0.1:19000/memorymonitoringcurl 127.0.0.1:19000/heap_dump -o memory-bug.heapdiagnosticpprof -http localhost:9999 memory-bug.heapdiagnosticdiff <(jq --sort-keys . envoy-before.json) <(jq --sort-keys . envoy-after.json)diagnosticcurl -s localhost:9901/server_infodiagnosticTechnical References (30)
istio-proxycomponentsidecarcomponentRSS (resident set size)conceptPSS (Proportional Set Size)conceptUSS (Unique Set Size)conceptserver.memory_allocatedcomponentserver.memory_heap_sizecomponentTlsCachingDateProviderImplcomponentTimerImplcomponentxDS protocolprotocolADS (Aggregated Discovery Service)componentthread local storageconceptxDSprotocolLDScomponentCDScomponentproto_descriptor_bincomponentgRPC JSON transcoder filtercomponentfilter chainscomponenthttp 1.1 parsercomponentbuffering filtercomponentDELTA_GRPCprotocollds_configcomponentcds_configcomponentdynamic_resourcescomponentHTTPRouteGroupcomponentTrafficTargetcomponentOpen Service Meshcomponentenvoy sidecarcomponenthttp2_settingscomponent/statscomponentRelated Insights (11)
Envoy sidecar OOM kill causes connection drops and service outagescritical
▸
Memory fragmentation indicated by heap size vs allocated gapwarning
▸
Memory exhaustion causes OOMKills and proxy restartscritical
▸
Envoy internal memory metrics underreport actual process memory usagewarning
▸
Memory leak when xDS management server unavailable at startup with static resourcescritical
▸
Memory spikes during pod scaling due to full Envoy config updateswarning
▸
gRPC JSON transcoder proto descriptors cause 2x memory during listener updateswarning
▸
HTTP/1.1 parser packet data accumulation causes OOMcritical
▸
Full configuration updates cause memory spikes during pod scalingwarning
▸
Polynomial memory consumption with WASM stats and permissive traffic policy enabledcritical
▸
Default HTTP/2 window sizes cause excessive memory usagewarning
▸