adobe / adobe/frl-online-proxy
FRL docker failed every night at 3.40
- Dominant language
- Rust
- Stars
- 6
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
**Description**
I created a FRL docker, our test server is working fine (doesn't get requests) however the production one is crashing every night at 3.40, at that time its also consuming a lot more memory. is there scheduled some thing in the service? a cleanup? i cant find anything in the logs:
[2022-06-14][03:38:01][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:38:01][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:38:01][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:38:01][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:38:31][mio::poll][TRACE] registering event source with poller: token=Token(184549378), interests=READABLE | WRITABLE
[2022-06-14][03:38:31][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:38:31][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:38:31][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:38:31][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:39:01][mio::poll][TRACE] registering event source with poller: token=Token(201326594), interests=READABLE | WRITABLE
[2022-06-14][03:39:01][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:39:01][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:39:01][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:39:01][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:39:31][mio::poll][TRACE] registering event source with poller: token=Token(218103810), interests=READABLE | WRITABLE
[2022-06-14][03:39:31][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:39:31][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:39:31][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:39:31][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:40:01][mio::poll][TRACE] registering event source with poller: token=Token(234881026), interests=READABLE | WRITABLE
[2022-06-14][03:40:01][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:40:01][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:40:01][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:40:01][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:40:32][mio::poll][TRACE] registering event source with poller: token=Token(251658242), interests=READABLE | WRITABLE
[2022-06-14][03:40:32][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:40:32][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:40:32][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:40:32][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:40:52][mio::poll][TRACE] registering event source with poller: token=Token(268435458), interests=READABLE | WRITABLE
[2022-06-14][03:40:52][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:40:52][frl_proxy::proxy][DEBUG] Received request headers: {"host": "adobe-licensing.nl.emglive.com:8443", "connection": "Keep-Alive, TE", "te": "trailers, deflate, gzip, compress", "user-agent": "RPT-HTTPClient/0.3-3E", "pragma": "no-cache", "accept-language": "en-us,en;q=0.5", "accept-encoding": "gzip, deflate, x-gzip, compress, x-compress"}
[2022-06-14][03:40:52][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:41:02][mio::poll][TRACE] registering event source with poller: token=Token(1795162115), interests=READABLE | WRITABLE
[2022-06-14][03:41:02][frl_proxy::proxy][INFO] Received GET request for /status
[2022-06-14][03:41:02][frl_proxy::proxy][DEBUG] Received request headers: {"host": "localhost:8443", "user-agent": "Wget/1.21.2", "accept": "*/*", "accept-encoding": "identity", "connection": "Keep-Alive"}
[2022-06-14][03:41:02][frl_proxy::proxy][INFO] Returning status: proxyVersion: 1.2.0, message: Proxy is running
[2022-06-14][03:41:02][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][03:41:18][mio::poll][TRACE] registering event source with poller: token=Token(1811939331), interests=READABLE | WRITABLE
[2022-06-14][03:41:52][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][08:04:28][frl_proxy][DEBUG] conf: Settings { proxy: Proxy { mode: Passthrough, host: "0.0.0.0", port: "8080", ssl_port: "8443", remote_host: "https://lcs-cops.adobe.io", ssl: true }, ssl: Ssl { cert_path: "/etc/frl-proxy/nl.emglive_com.pfx", password: "[OBSCURED]" }, logging: Logging { level: Trace, destination: File, file_path: "/etc/frl-proxy/frl-proxy-log.log" }, cache: Cache { db_path: "proxy-cache.sqlite" }, network: Network { use_proxy: false, proxy_host: "127.0.0.1", proxy_port: "8888", use_proxy: false, proxy_username: "", proxy_password: "[OBSCURED]" } }
[2022-06-14][08:12:21][frl_proxy::proxy][INFO] Starting graceful shutdown
[2022-06-14][08:12:21][mio::poll][TRACE] deregistering event source from poller
[2022-06-14][08:12:21][mio::poll][TRACE] deregistering event source from poller
**Steps to reproduce**
My docker file:
FROM alpine:latest
# UPDATE IMAGE
RUN apk update
RUN apk upgrade
# Install wget
RUN apk add wget
RUN apk add curl
# Download latest FRL version and move to correct location
RUN echo "$(curl -s https://api.github.com/repos/adobe/frl-online-proxy/tags | sed -n 's/.*"name": "\(.*\)",.*/\1/p' | head -n 1)" > ./URL
#RUN URL=$(curl -s https://api.github.com/repos/adobe/frl-online-proxy/tags | sed -n 's/.*"name": "\(.*\)",.*/\1/p' | head -n 1)
RUN echo "$(curl -s https://api.github.com/repos/adobe/frl-online-proxy/tags | sed -n 's/.*"name": "\(.*\)",.*/\1/p' | head -n 1 | cut -c 2-)" > ./VERSION
#RUN VERSION=$(curl -s https://api.github.com/repos/adobe/frl-online-proxy/tags | sed -n 's/.*"name": "\(.*\)",.*/\1/p' | head -n 1 | cut -c 2-)
RUN wget https://github.com/adobe/frl-online-proxy/releases/download/$(cat ./URL)/frl-proxy-linux-$(cat ./VERSION).tar.gz
RUN tar xf frl-proxy-linux-$(cat ./VERSION).tar.gz
# Remove old content
RUN rm frl-proxy-linux-$(cat ./VERSION).tar.gz
RUN rm URL
# Set container timezone to Europe/Amsterdam
RUN apk add tzdata && cp /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime && echo "Europe/Amsterdam" > /etc/timezone
HEALTHCHECK CMD wget https://localhost:8443/status --no-check-certificate -q -O - > /dev/null 2>&1
CMD ./frl-proxy/frl-proxy -c /etc/frl-proxy/proxy-conf.toml start
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**


**Environment**
- frl-proxy version: 1.2.0
- OS type and version: Alpine
- Any other relevant info:
- Config:
[proxy]
mode = "passthrough"
host = "0.0.0.0"
port = "8080"
ssl_port = "8443"
remote_host = "https://lcs-cops.adobe.io"
ssl = true
[ssl]
cert_path = "/etc/frl-proxy/nl.emglive_com.pfx"
cert_password = "XXXXX"
[logging]
level = "trace"
destination = "file"
file_path = "/etc/frl-proxy/frl-proxy-log.log"
Contributor guide
Research direction
Start with the supplied Dockerfile, the proxy-conf.toml settings, and the 03:40 log window. Run the container with version 1.2.0 on Alpine and inspect the healthcheck and graceful-shutdown behavior around that time. Done means the scheduled trigger or memory-related failure is identified with reproducible evidence and a regression check or configuration guidance is established.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, rust
- Domain
- infrastructure, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100