[GH-ISSUE #2344] [BUG] Memory leak in 0.30 (with Pangolin) - RAM usage continuously growing over time #1422

Open
opened 2026-03-02 11:57:11 +03:00 by kerem · 52 comments
Owner

Originally created by @nkkfs on GitHub (Jan 4, 2026).
Original GitHub issue: https://github.com/karakeep-app/karakeep/issues/2344

Describe the Bug

I've been experiencing a memory leak issue with Karakeep container for the past few weeks. The RAM usage continuously grows over time until it becomes problematic.

My Environment

  • Deployment: Docker container
  • Platform: Unraid server (i5-9600, 32GB RAM)

Current Behavior

  • Memory usage steadily increases over time
  • The issue persists across multiple weeks of operation
  • Container restart temporarily resolves the issue, but the problem reoccurs
  • After restart, memory usage starts growing again
  • Logs show repeated 500 errors on bookmarks.searchBookmarks endpoint

Logs:

Recent logs show repeated 500 error when searching bookmarks:

2026-01-04T10:09:16.083Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxxx8cee74d9%22%7D%7D%7D 500 4ms

2026-01-04T10:09:37.707Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxxx8cee74d9%22%7D%7D%7D 500 3ms

2026-01-04T10:09:54.052Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxx8cee74d9%22%7D%7D%7D 500 2ms

Health checks return 200 OK, but bookmark search operations consistently fail with 500 error.

Steps to Reproduce

  1. Start Karakeep container
  2. Monitor RAM usage over several days/weeks
  3. Observe continuous memory growth

Expected Behaviour

Memory usage should remain stable over time without requiring periodic restarts.

Screenshots or Additional Context

Image

Device Details

No response

Exact Karakeep Version

v0.30.0

Have you checked the troubleshooting guide?

  • I have checked the troubleshooting guide and I haven't found a solution to my problem
Originally created by @nkkfs on GitHub (Jan 4, 2026). Original GitHub issue: https://github.com/karakeep-app/karakeep/issues/2344 ### Describe the Bug I've been experiencing a memory leak issue with Karakeep container for the past few weeks. The RAM usage continuously grows over time until it becomes problematic. **My Environment** - Deployment: Docker container - Platform: Unraid server (i5-9600, 32GB RAM) **Current Behavior** - Memory usage steadily increases over time - The issue persists across multiple weeks of operation - Container restart temporarily resolves the issue, but the problem reoccurs - After restart, memory usage starts growing again - Logs show repeated 500 errors on `bookmarks.searchBookmarks` endpoint **Logs:** Recent logs show repeated 500 error when searching bookmarks: ``` 2026-01-04T10:09:16.083Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxxx8cee74d9%22%7D%7D%7D 500 4ms 2026-01-04T10:09:37.707Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxxx8cee74d9%22%7D%7D%7D 500 3ms 2026-01-04T10:09:54.052Z info: --> GET /api/trpc/bookmarks.searchBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3A%7B%22text%22%3A%22url%3Ahttps%3A%2F%2Fclaude.ai%2Fchat%2Fd5x156e-ea93-xe7d-bxc5-dxx8cee74d9%22%7D%7D%7D 500 2ms ``` Health checks return 200 OK, but bookmark search operations consistently fail with 500 error. ### Steps to Reproduce 1. Start Karakeep container 2. Monitor RAM usage over several days/weeks 3. Observe continuous memory growth ### Expected Behaviour Memory usage should remain stable over time without requiring periodic restarts. ### Screenshots or Additional Context <img width="1400" height="999" alt="Image" src="https://github.com/user-attachments/assets/c7e60ebb-b719-43f7-a1d8-42413e02f32f" /> ### Device Details _No response_ ### Exact Karakeep Version v0.30.0 ### Have you checked the troubleshooting guide? - [x] I have checked the troubleshooting guide and I haven't found a solution to my problem
Author
Owner

@nkkfs commented on GitHub (Jan 4, 2026):

Probably there was a problem with Meilisearch API Key, I don't know why it doesn't showed eariler.

<!-- gh-comment-id:3707947176 --> @nkkfs commented on GitHub (Jan 4, 2026): Probably there was a problem with Meilisearch API Key, I don't know why it doesn't showed eariler.
Author
Owner

@nkkfs commented on GitHub (Jan 5, 2026):

However, that wasn't the case. The RAM filled up more slowly or not at all, but after the night it increased significantly again.

Image

Logs are completly clear for now, only requests with code 200.

<!-- gh-comment-id:3711970762 --> @nkkfs commented on GitHub (Jan 5, 2026): However, that wasn't the case. The RAM filled up more slowly or not at all, but after the night it increased significantly again. <img width="1400" height="999" alt="Image" src="https://github.com/user-attachments/assets/97e0b0f5-2831-4490-856f-36f64302c620" /> Logs are completly clear for now, only requests with code 200.
Author
Owner

@kennyHH commented on GitHub (Jan 6, 2026):

Same problem here. It keeps growing until the machine crashes due to low ram.

Nothing shows up in logs and I can't see any suspicious processes running.

Image
<!-- gh-comment-id:3712535448 --> @kennyHH commented on GitHub (Jan 6, 2026): Same problem here. It keeps growing until the machine crashes due to low ram. Nothing shows up in logs and I can't see any suspicious processes running. <img width="793" height="436" alt="Image" src="https://github.com/user-attachments/assets/ea875d65-7865-45b9-b71b-480ccd74c9dc" />
Author
Owner

@Infamousbugg commented on GitHub (Jan 6, 2026):

Same issue here, on Unraid. Also running it through Pangolin and have OpenID configured.

<!-- gh-comment-id:3712720998 --> @Infamousbugg commented on GitHub (Jan 6, 2026): Same issue here, on Unraid. Also running it through Pangolin and have OpenID configured.
Author
Owner

@MohamedBassem commented on GitHub (Jan 6, 2026):

ok, folks, I'll mark this as approved, but I need help debugging this further. Both the server powering try.karakeep.app and my own personal instance don't seem to be experiencing this:

Image

Can all of you share top from inside their containers to see which process is using that memory? Can you also share which server version you're running? Also, are any of you running a publicly accessible instance (try to ensure that it's not related to #2346)?

<!-- gh-comment-id:3714313796 --> @MohamedBassem commented on GitHub (Jan 6, 2026): ok, folks, I'll mark this as approved, but I need help debugging this further. Both the server powering `try.karakeep.app` and my own personal instance don't seem to be experiencing this: <img width="2376" height="382" alt="Image" src="https://github.com/user-attachments/assets/e5cdcc71-1c4f-4b5b-bc19-2cf9e3480dfa" /> Can all of you share `top` from inside their containers to see which process is using that memory? Can you also share which server version you're running? Also, are any of you running a publicly accessible instance (try to ensure that it's not related to #2346)?
Author
Owner

@nkkfs commented on GitHub (Jan 6, 2026):

For me top from karakeep container looks like

Image

My karakeep instance is only accesable in Tailscale network via Reverse Proxy (Pangolin), so that's why I'm ignoring the fact that I could have been hacked or something.

<!-- gh-comment-id:3714596973 --> @nkkfs commented on GitHub (Jan 6, 2026): For me `top` from `karakeep` container looks like <img width="1400" height="999" alt="Image" src="https://github.com/user-attachments/assets/83a5f201-42e7-44fe-a59f-665b933b40f2" /> My karakeep instance is only accesable in Tailscale network via Reverse Proxy (Pangolin), so that's why I'm ignoring the fact that I could have been hacked or something.
Author
Owner

@kennyHH commented on GitHub (Jan 6, 2026):

This is output of 'top' command from my container.

Image

I've put memory restrictions (1024mb) on the karakeep-web container , but it's not really helping.

Image
<!-- gh-comment-id:3715312006 --> @kennyHH commented on GitHub (Jan 6, 2026): This is output of 'top' command from my container. <img width="2065" height="348" alt="Image" src="https://github.com/user-attachments/assets/cc541d16-2961-41b8-8077-f913800ec4a8" /> I've put memory restrictions (1024mb) on the karakeep-web container , but it's not really helping. <img width="792" height="454" alt="Image" src="https://github.com/user-attachments/assets/8a22b82a-a8d4-458a-82ce-9e986128e95a" />
Author
Owner

@0rokska8 commented on GitHub (Jan 6, 2026):

I made a complete new 0.30.0 installation (docker) and have the same issue. After I saw 2x the complete RAM is used, I put a restriction of 4GB. The instance is behind a reverse-proxy (pangolin) with authentication.

Image Image Image
<!-- gh-comment-id:3716146006 --> @0rokska8 commented on GitHub (Jan 6, 2026): I made a complete new 0.30.0 installation (docker) and have the same issue. After I saw 2x the complete RAM is used, I put a restriction of 4GB. The instance is behind a reverse-proxy (pangolin) with authentication. <img width="1482" height="330" alt="Image" src="https://github.com/user-attachments/assets/4fc76db7-1b78-48cd-a51b-42137bf91856" /> <img width="1627" height="429" alt="Image" src="https://github.com/user-attachments/assets/79f62e70-f4a3-41e5-846f-b164638165e7" /> <img width="797" height="430" alt="Image" src="https://github.com/user-attachments/assets/caf6c789-4305-46b1-b44f-2e7b37b951ce" />
Author
Owner

@Nanianmichaels commented on GitHub (Jan 8, 2026):

Count me in as one of the people affected, I noticed today after getting a low memory warning from the machine.

As others have pointed out, karakeep-web's top results show that the next-server and node processes are the responsible for hogging the memory. It doesn't seem like it's a #2346 instance, I have no weird processes running, and CPU usage is normal.

Not sure if relevant, but I'm running Karakeep on a RPi 5, so I can confirm the issue also appears on ARM64 builds.

Let me know if there's anything I can do to test a solution, or if you need more info from my .

<!-- gh-comment-id:3723920246 --> @Nanianmichaels commented on GitHub (Jan 8, 2026): Count me in as one of the people affected, I noticed today after getting a low memory warning from the machine. As others have pointed out, karakeep-web's top results show that the next-server and node processes are the responsible for hogging the memory. It doesn't seem like it's a #2346 instance, I have no weird processes running, and CPU usage is normal. Not sure if relevant, but I'm running Karakeep on a RPi 5, so I can confirm the issue also appears on ARM64 builds. Let me know if there's anything I can do to test a solution, or if you need more info from my .
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

Ok, I think we can rule out this is related to #2346.

Now unfortunately the top command, does show the RSS.

Can you instead run inside the container:

ps -eo pid,comm,rss,vsz

And share the output? Sorry for the hassle.

<!-- gh-comment-id:3734223199 --> @MohamedBassem commented on GitHub (Jan 11, 2026): Ok, I think we can rule out this is related to #2346. Now unfortunately the top command, does show the RSS. Can you instead run inside the container: ``` ps -eo pid,comm,rss,vsz ``` And share the output? Sorry for the hassle.
Author
Owner

@kennyHH commented on GitHub (Jan 11, 2026):

This is output from mine.

Image
<!-- gh-comment-id:3734288665 --> @kennyHH commented on GitHub (Jan 11, 2026): This is output from mine. <img width="366" height="574" alt="Image" src="https://github.com/user-attachments/assets/a5401ff2-ddc0-4e6b-ae48-68a1efb146f5" />
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

Ok, that's helpful. It means that the leak is coming from the nextjx server and not the background workers. Interesting ...

<!-- gh-comment-id:3734295134 --> @MohamedBassem commented on GitHub (Jan 11, 2026): Ok, that's helpful. It means that the leak is coming from the nextjx server and not the background workers. Interesting ...
Author
Owner

@0rokska8 commented on GitHub (Jan 11, 2026):

My output, if still needed. If you need more, just let me know.

Image
<!-- gh-comment-id:3734420006 --> @0rokska8 commented on GitHub (Jan 11, 2026): My output, if still needed. If you need more, just let me know. <img width="415" height="291" alt="Image" src="https://github.com/user-attachments/assets/4850430e-7037-4da2-b26a-54d6ef12050e" />
Author
Owner

@Nanianmichaels commented on GitHub (Jan 11, 2026):

Can confirm over here, next-server is requesting an ungodly amount of RAM.

That was actually what made me start digging into this issue, my host was showing "next-server (v" as taking up a lot of RAM, and I dug into which process was launching it, at some point after three or four levels coming up with docker being involved, which I then did the "scream test" (a.k.a., turned each service off one by one) until that process went away.

What I find weird is that as soon as you launch the service, it will automatically request something like 20GB+ of virtual RAM, even if the actual RAM usage is low.

Hopefully you'll be able to get to the root of this one, I had another OoM instance today, even though I had limited the service to 1GB of RAM usage...

<!-- gh-comment-id:3735244581 --> @Nanianmichaels commented on GitHub (Jan 11, 2026): Can confirm over here, next-server is requesting an ungodly amount of RAM. That was actually what made me start digging into this issue, my host was showing "next-server (v" as taking up a lot of RAM, and I dug into which process was launching it, at some point after three or four levels coming up with docker being involved, which I then did the "scream test" (a.k.a., turned each service off one by one) until that process went away. What I find weird is that as soon as you launch the service, it will automatically request something like 20GB+ of virtual RAM, even if the actual RAM usage is low. Hopefully you'll be able to get to the root of this one, I had another OoM instance today, even though I had limited the service to 1GB of RAM usage...
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

Thanks for the input. Please keep it coming and it would be great if everyone shares the environment that they're running on (docker, unraid, proxmox, bare linux,etc). I'm yet to find why you guys are hitting this and not my instance or even the cloud deployment.

<!-- gh-comment-id:3735255885 --> @MohamedBassem commented on GitHub (Jan 11, 2026): Thanks for the input. Please keep it coming and it would be great if everyone shares the environment that they're running on (docker, unraid, proxmox, bare linux,etc). I'm yet to find why you guys are hitting this and not my instance or even the cloud deployment.
Author
Owner

@Infamousbugg commented on GitHub (Jan 11, 2026):

My output, if still needed. If you need more, just let me know.
Image

Mine looks identical to this. Running on Unraid.

<!-- gh-comment-id:3735360419 --> @Infamousbugg commented on GitHub (Jan 11, 2026): > My output, if still needed. If you need more, just let me know. > <img alt="Image" width="415" height="291" src="https://private-user-images.githubusercontent.com/192199482/534345798-4850430e-7037-4da2-b26a-54d6ef12050e.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NjgxNTY3NzcsIm5iZiI6MTc2ODE1NjQ3NywicGF0aCI6Ii8xOTIxOTk0ODIvNTM0MzQ1Nzk4LTQ4NTA0MzBlLTcwMzctNGRhMi1iMjZhLTU0ZDZlZjEyMDUwZS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMTExJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDExMVQxODM0MzdaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT05MDMwY2QzMjdkOWE0M2E3YWYzZTA4Y2I5MjM5ZWYwNTE3MDM3MDMyMmE5NWZmZThhODc3MjA3YjY2MmY2Zjk1JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.JIG_4JsK1og_On6z-Y_a0kVgHL-Ab4MdKxZLB_kSJAk"> Mine looks identical to this. Running on Unraid.
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

Anyone willing to hop on the nightly release and confirm if there's problem is still there?

<!-- gh-comment-id:3735387367 --> @MohamedBassem commented on GitHub (Jan 11, 2026): Anyone willing to hop on the nightly release and confirm if there's problem is still there?
Author
Owner

@Nanianmichaels commented on GitHub (Jan 11, 2026):

My first thought was somehow the worker becoming borked because I had moved my Ollama instance (or rather, it became unavailable because I reinstalled the OS on the machine it was being served, and it took me a while before I got it working again) and I hadn't updated the compose file to either turn the Ollama reference off or update it. My reasoning was Karakeep was trying to ping an LLM that wasn't available and it was getting stuck with open LLM requests.

I currently have two failed inference jobs, and Karakeep tells me inference jobs are "active", not sure if that can be a trigger.

In addition, I have 11 failed crawler jobs, and at least on of them (seen in the logs), Karakeep repeatedly tries and fails to get data (the site is live, but it's basically a big table with data). Again, not sure if that can be a trigger, either.

I can try the nightly, will report ASAP.

<!-- gh-comment-id:3735392910 --> @Nanianmichaels commented on GitHub (Jan 11, 2026): My first thought was somehow the worker becoming borked because I had moved my Ollama instance (or rather, it became unavailable because I reinstalled the OS on the machine it was being served, and it took me a while before I got it working again) and I hadn't updated the compose file to either turn the Ollama reference off or update it. My reasoning was Karakeep was trying to ping an LLM that wasn't available and it was getting stuck with open LLM requests. I currently have two failed inference jobs, and Karakeep tells me inference jobs are "active", not sure if that can be a trigger. In addition, I have 11 failed crawler jobs, and at least on of them (seen in the logs), Karakeep repeatedly tries and fails to get data (the site is live, but it's basically a big table with data). Again, not sure if that can be a trigger, either. I can try the nightly, will report ASAP.
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

@Nanianmichaels that would have been a theory if the the worker process is the one using the memory. But from the screenshots so far, its nextjs that's leaking. We don't take to ollama from nextjs (except for the manual sumarize with AI button).

<!-- gh-comment-id:3735400563 --> @MohamedBassem commented on GitHub (Jan 11, 2026): @Nanianmichaels that would have been a theory if the the worker process is the one using the memory. But from the screenshots so far, its nextjs that's leaking. We don't take to ollama from nextjs (except for the manual `sumarize with AI` button).
Author
Owner

@Nanianmichaels commented on GitHub (Jan 11, 2026):

Shame it's not something as easy to diagnose as that, then... :|

Just updated to nightly/latest.

Mainthread and next-server are still requesting 16GB of virtual memory each. Too soon to tell if there's still a leak, I'll only be able to tell in a few hours.

Weirdly enough, Docker does NOT count memory usage from those two processes towards the container memory usage, which means setting a container memory limit is not effective as a way to prevent OoM events.

<!-- gh-comment-id:3735430929 --> @Nanianmichaels commented on GitHub (Jan 11, 2026): Shame it's not something as easy to diagnose as that, then... :| Just updated to nightly/latest. Mainthread and next-server are still requesting 16GB of virtual memory each. Too soon to tell if there's still a leak, I'll only be able to tell in a few hours. Weirdly enough, Docker does NOT count memory usage from those two processes towards the container memory usage, which means setting a container memory limit is not effective as a way to prevent OoM events.
Author
Owner

@0rokska8 commented on GitHub (Jan 11, 2026):

Also just updated to latest/nightly.

At this point I’ll need to let it run for a few hours again to see whether the memory usage keeps growing or stabilizes.

top:

Image

ps -eo pid,comm,rss,vsz:

Image
<!-- gh-comment-id:3735460543 --> @0rokska8 commented on GitHub (Jan 11, 2026): Also just updated to latest/nightly. At this point I’ll need to let it run for a few hours again to see whether the memory usage keeps growing or stabilizes. top: <img width="1628" height="362" alt="Image" src="https://github.com/user-attachments/assets/7f01648d-c1cb-459b-9179-424996e42145" /> ps -eo pid,comm,rss,vsz: <img width="442" height="289" alt="Image" src="https://github.com/user-attachments/assets/6b7f340a-8abd-4049-bdf0-d07ed75fa4d3" />
Author
Owner

@micahlt commented on GitHub (Jan 11, 2026):

I'm experiencing this same issue - Docker on Ubuntu Server 24.04. Just restarted my container on the nightly version, waiting to see if the leak is still there.

<!-- gh-comment-id:3735606396 --> @micahlt commented on GitHub (Jan 11, 2026): I'm experiencing this same issue - Docker on Ubuntu Server 24.04. Just restarted my container on the nightly version, waiting to see if the leak is still there.
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

@Nanianmichaels docker should be counting the RSS not the virtual memory. So setting a container limit should work.

Thanks for the help folks, waiting for the updates about the nightly version.

<!-- gh-comment-id:3735624577 --> @MohamedBassem commented on GitHub (Jan 11, 2026): @Nanianmichaels docker should be counting the RSS not the virtual memory. So setting a container limit should work. Thanks for the help folks, waiting for the updates about the nightly version.
Author
Owner

@Infamousbugg commented on GitHub (Jan 11, 2026):

Image

I've had the latest build running for about an hour. Next-server started out at 190mb, but it has slowly inched upwards to 676mb.

<!-- gh-comment-id:3735624957 --> @Infamousbugg commented on GitHub (Jan 11, 2026): <img width="276" height="264" alt="Image" src="https://github.com/user-attachments/assets/9df2cc55-0fcc-4c3f-adba-2fceb160a7d7" /> I've had the latest build running for about an hour. Next-server started out at 190mb, but it has slowly inched upwards to 676mb.
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

This sounds relevant: https://github.com/vercel/next.js/issues/85914. But I still don't know why it's only reproducing for you and not for me. I'll need to repro to be able to test the fix. Anyone comfortable enough with the node echosystem to try to get us a heap profile during the time where memory is inflated (optimally with RSS > 2GB)?

<!-- gh-comment-id:3735695450 --> @MohamedBassem commented on GitHub (Jan 11, 2026): This sounds relevant: https://github.com/vercel/next.js/issues/85914. But I still don't know why it's only reproducing for you and not for me. I'll need to repro to be able to test the fix. Anyone comfortable enough with the node echosystem to try to get us a heap profile during the time where memory is inflated (optimally with RSS > 2GB)?
Author
Owner

@Nanianmichaels commented on GitHub (Jan 11, 2026):

It seems that the leak is still there on nightly.

Mainthread is steady at ~210MB despite the large virtual memory request, next-server has grown to 1GB actually used memory, with zero activity on the webui.

Sadly, I can't help with heap profiling.

Also, for some reason docker on this machine apparently reports 0 as the RAM usage for ALL containers, which is... not great for triggering memory limits... O_o

<!-- gh-comment-id:3735762640 --> @Nanianmichaels commented on GitHub (Jan 11, 2026): It seems that the leak is still there on nightly. Mainthread is steady at ~210MB despite the large virtual memory request, next-server has grown to 1GB actually used memory, with zero activity on the webui. Sadly, I can't help with heap profiling. Also, for some reason docker on this machine apparently reports 0 as the RAM usage for ALL containers, which is... not great for triggering memory limits... O_o
Author
Owner

@MohamedBassem commented on GitHub (Jan 11, 2026):

@Nanianmichaels if there's no activity on the web container, can you share the logs?

<!-- gh-comment-id:3735767338 --> @MohamedBassem commented on GitHub (Jan 11, 2026): @Nanianmichaels if there's no activity on the web container, can you share the logs?
Author
Owner

@Nanianmichaels commented on GitHub (Jan 11, 2026):

There's a bit of background activity, but nothing major or sensitive (I think), so here it goes:

Running db migration script
   ▲ Next.js 15.3.8
   - Local:        http://localhost:3000
   - Network:      http://0.0.0.0:3000

 ✓ Starting...
 ✓ Ready in 660ms
2026-01-11T18:47:17.638Z info: Plugins (Last one wins):
2026-01-11T18:47:17.639Z info:   search:
2026-01-11T18:47:17.639Z info:     - MeiliSearch
2026-01-11T18:47:17.640Z info:   queue:
2026-01-11T18:47:17.640Z info:     - Liteque
2026-01-11T18:47:17.640Z info:   ratelimit:
2026-01-11T18:47:17.640Z info:     - In-Memory Rate Limiter
2026-01-11T18:47:17.649Z info: Tracing is disabled
2026-01-11T18:47:17.938Z info: Plugins (Last one wins):
2026-01-11T18:47:17.939Z info:   search:
2026-01-11T18:47:17.939Z info:     - MeiliSearch
2026-01-11T18:47:17.940Z info:   queue:
2026-01-11T18:47:17.940Z info:     - Liteque
2026-01-11T18:47:17.940Z info:   ratelimit:
2026-01-11T18:47:17.940Z info:     - In-Memory Rate Limiter
2026-01-11T18:47:20.939Z info: Plugins (Last one wins):
2026-01-11T18:47:20.941Z info:   search:
2026-01-11T18:47:20.941Z info:     - MeiliSearch
2026-01-11T18:47:20.941Z info:   queue:
2026-01-11T18:47:20.941Z info:     - Liteque
2026-01-11T18:47:20.941Z info:   ratelimit:
2026-01-11T18:47:20.941Z info:     - In-Memory Rate Limiter
2026-01-11T18:47:21.164Z info: Tracing is disabled
2026-01-11T18:47:21.164Z info: Workers version: nightly
2026-01-11T18:47:21.174Z info: [crawler] Loading adblocker ...
2026-01-11T18:47:21.175Z info: Starting inference worker ...
2026-01-11T18:47:21.176Z info: Starting search indexing worker ...
2026-01-11T18:47:21.176Z info: Starting admin maintenance worker ...
2026-01-11T18:47:21.176Z info: Starting video worker ...
2026-01-11T18:47:21.176Z info: Starting feed worker ...
2026-01-11T18:47:21.176Z info: Starting asset preprocessing worker ...
2026-01-11T18:47:21.177Z info: Starting webhook worker ...
2026-01-11T18:47:21.177Z info: Starting rule engine worker ...
2026-01-11T18:47:21.177Z info: Starting backup worker ...
2026-01-11T18:47:21.183Z info: Listening on http://127.0.0.1:40493
2026-01-11T18:47:21.905Z info: <-- GET /api/health
2026-01-11T18:47:21.912Z info: --> GET /api/health 200 6ms
2026-01-11T18:47:23.023Z info: [Crawler] Connecting to existing browser instance: http://chrome:9222
2026-01-11T18:47:23.024Z info: [Crawler] Successfully resolved IP address, new address: http://172.20.0.3:9222/
2026-01-11T18:47:23.100Z info: Starting crawler worker ...
2026-01-11T18:47:23.100Z info: [Crawler] Not defined in the server configuration BROWSER_COOKIE_PATH
2026-01-11T18:47:51.996Z info: <-- GET /api/health
2026-01-11T18:47:51.997Z info: --> GET /api/health 200 1ms
2026-01-11T18:48:13.182Z info: [Crawler][51974:4] Will crawl "https://www.lowcostminipcs.com/de/" for link with id "kpnpquqzjmuou9io2eapb5qg"
2026-01-11T18:48:13.183Z info: [Crawler][51974:4] Attempting to determine the content-type for the url https://www.lowcostminipcs.com/de/
2026-01-11T18:48:13.472Z info: [Crawler][51974:4] Content-type for the url https://www.lowcostminipcs.com/de/ is "text/html"
2026-01-11T18:48:13.718Z info: [Crawler][51974:4] Navigating to "https://www.lowcostminipcs.com/de/"
2026-01-11T18:48:22.055Z info: <-- GET /api/health
2026-01-11T18:48:22.056Z info: --> GET /api/health 200 1ms
2026-01-11T18:48:43.835Z error: [Crawler][51974] Crawling job failed: TimeoutError: page.goto: Timeout 30000ms exceeded.
Call log:
  - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded"

page.goto: Timeout 30000ms exceeded.
Call log:
  - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded"

    at /app/apps/workers/dist/index.js:114594:46
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async crawlPage (/app/apps/workers/dist/index.js:114530:9)
    at async file:///app/apps/workers/dist/index.js:115038:19
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async crawlAndParseUrl (/app/apps/workers/dist/index.js:115015:9)
    at async runCrawler (/app/apps/workers/dist/index.js:115204:25)
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async Object.run (/app/apps/workers/dist/index.js:162:10)
    at async Object.wrappedRun (/app/apps/workers/dist/queue-liteque-Dl7RQuz8.js:53:12)
    at async Runner.runOnce (/app/apps/workers/node_modules/.pnpm/liteque@0.7.0_@opentelemetry+api@1.9.0_@types+better-sqlite3@7.6.13_@types+react@19.2.5_bette_j25tbpstiiqwo32nscmvntyxcu/node_modules/liteque/dist/index.js:261:19)
2026-01-11T18:48:43.854Z info: [Crawler][51974:5] Will crawl "https://www.lowcostminipcs.com/de/" for link with id "kpnpquqzjmuou9io2eapb5qg"
2026-01-11T18:48:43.854Z info: [Crawler][51974:5] Attempting to determine the content-type for the url https://www.lowcostminipcs.com/de/
2026-01-11T18:48:44.186Z info: [Crawler][51974:5] Content-type for the url https://www.lowcostminipcs.com/de/ is "text/html"
2026-01-11T18:48:44.412Z info: [Crawler][51974:5] Navigating to "https://www.lowcostminipcs.com/de/"
2026-01-11T18:48:52.303Z info: <-- GET /api/health
2026-01-11T18:48:52.304Z info: --> GET /api/health 200 1ms
2026-01-11T18:48:53.424Z info: <-- GET /api/trpc/users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%7D
2026-01-11T18:48:53.516Z info: --> GET /api/trpc/users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%7D 200 92ms
2026-01-11T18:49:14.521Z error: [Crawler][51974] Crawling job failed: TimeoutError: page.goto: Timeout 30000ms exceeded.
Call log:
  - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded"

page.goto: Timeout 30000ms exceeded.
Call log:
  - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded"

    at /app/apps/workers/dist/index.js:114594:46
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async crawlPage (/app/apps/workers/dist/index.js:114530:9)
    at async file:///app/apps/workers/dist/index.js:115038:19
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async crawlAndParseUrl (/app/apps/workers/dist/index.js:115015:9)
    at async runCrawler (/app/apps/workers/dist/index.js:115204:25)
    at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19
    at async Object.run (/app/apps/workers/dist/index.js:162:10)
    at async Object.wrappedRun (/app/apps/workers/dist/queue-liteque-Dl7RQuz8.js:53:12)
    at async Runner.runOnce (/app/apps/workers/node_modules/.pnpm/liteque@0.7.0_@opentelemetry+api@1.9.0_@types+better-sqlite3@7.6.13_@types+react@19.2.5_bette_j25tbpstiiqwo32nscmvntyxcu/node_modules/liteque/dist/index.js:261:19)
2026-01-11T18:49:22.377Z info: <-- GET /api/health
2026-01-11T18:49:22.378Z info: --> GET /api/health 200 1ms
2026-01-11T18:49:52.446Z info: <-- GET /api/health
2026-01-11T18:49:52.447Z info: --> GET /api/health 200 1ms
2026-01-11T18:50:22.515Z info: <-- GET /api/health
2026-01-11T18:50:22.516Z info: --> GET /api/health 200 1ms
2026-01-11T18:50:46.040Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D
2026-01-11T18:50:46.241Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 200ms
2026-01-11T18:50:52.572Z info: <-- GET /api/health
2026-01-11T18:50:52.574Z info: --> GET /api/health 200 0ms
2026-01-11T18:51:22.648Z info: <-- GET /api/health
2026-01-11T18:51:22.649Z info: --> GET /api/health 200 1ms
2026-01-11T18:51:52.701Z info: <-- GET /api/health
2026-01-11T18:51:52.702Z info: --> GET /api/health 200 1ms
2026-01-11T18:52:08.787Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D
2026-01-11T18:52:08.953Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 166ms
2026-01-11T18:52:22.780Z info: <-- GET /api/health
2026-01-11T18:52:22.781Z info: --> GET /api/health 200 0ms
2026-01-11T18:52:52.848Z info: <-- GET /api/health
2026-01-11T18:52:52.848Z info: --> GET /api/health 200 0ms
2026-01-11T18:53:22.904Z info: <-- GET /api/health
2026-01-11T18:53:22.905Z info: --> GET /api/health 200 1ms
2026-01-11T18:53:52.963Z info: <-- GET /api/health
2026-01-11T18:53:52.964Z info: --> GET /api/health 200 0ms
2026-01-11T18:54:23.032Z info: <-- GET /api/health
2026-01-11T18:54:23.032Z info: --> GET /api/health 200 0ms
2026-01-11T18:54:53.092Z info: <-- GET /api/health
2026-01-11T18:54:53.093Z info: --> GET /api/health 200 1ms
2026-01-11T18:55:23.147Z info: <-- GET /api/health
2026-01-11T18:55:23.148Z info: --> GET /api/health 200 0ms
2026-01-11T18:55:53.205Z info: <-- GET /api/health
2026-01-11T18:55:53.206Z info: --> GET /api/health 200 1ms
2026-01-11T18:56:13.696Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D
2026-01-11T18:56:13.870Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 173ms
2026-01-11T18:56:23.260Z info: <-- GET /api/health
2026-01-11T18:56:23.260Z info: --> GET /api/health 200 0ms
2026-01-11T18:56:53.330Z info: <-- GET /api/health
2026-01-11T18:56:53.332Z info: --> GET /api/health 200 1ms
2026-01-11T18:57:23.392Z info: <-- GET /api/health
2026-01-11T18:57:23.393Z info: --> GET /api/health 200 1ms
2026-01-11T18:57:53.441Z info: <-- GET /api/health
2026-01-11T18:57:53.442Z info: --> GET /api/health 200 1ms
2026-01-11T18:58:23.504Z info: <-- GET /api/health
2026-01-11T18:58:23.505Z info: --> GET /api/health 200 1ms
2026-01-11T18:58:53.556Z info: <-- GET /api/health
2026-01-11T18:58:53.558Z info: --> GET /api/health 200 1ms
2026-01-11T18:59:23.634Z info: <-- GET /api/health
2026-01-11T18:59:23.635Z info: --> GET /api/health 200 0ms
2026-01-11T18:59:53.691Z info: <-- GET /api/health
2026-01-11T18:59:53.692Z info: --> GET /api/health 200 1ms
2026-01-11T19:00:00.197Z info: [feed] Scheduling feed refreshing jobs ...
2026-01-11T19:00:23.767Z info: <-- GET /api/health
2026-01-11T19:00:23.767Z info: --> GET /api/health 200 0ms
2026-01-11T19:00:53.835Z info: <-- GET /api/health
2026-01-11T19:00:53.836Z info: --> GET /api/health 200 0ms
2026-01-11T19:01:23.889Z info: <-- GET /api/health
2026-01-11T19:01:23.890Z info: --> GET /api/health 200 1ms
2026-01-11T19:01:53.934Z info: <-- GET /api/health
2026-01-11T19:01:53.935Z info: --> GET /api/health 200 0ms
2026-01-11T19:02:23.994Z info: <-- GET /api/health
2026-01-11T19:02:23.995Z info: --> GET /api/health 200 0ms
2026-01-11T19:02:54.056Z info: <-- GET /api/health
2026-01-11T19:02:54.057Z info: --> GET /api/health 200 1ms
2026-01-11T19:03:24.111Z info: <-- GET /api/health
2026-01-11T19:03:24.112Z info: --> GET /api/health 200 1ms
2026-01-11T19:03:54.171Z info: <-- GET /api/health
2026-01-11T19:03:54.172Z info: --> GET /api/health 200 1ms
2026-01-11T19:04:24.215Z info: <-- GET /api/health
2026-01-11T19:04:24.216Z info: --> GET /api/health 200 1ms
2026-01-11T19:04:54.274Z info: <-- GET /api/health
2026-01-11T19:04:54.275Z info: --> GET /api/health 200 1ms
2026-01-11T19:05:24.347Z info: <-- GET /api/health
2026-01-11T19:05:24.348Z info: --> GET /api/health 200 1ms
2026-01-11T19:05:54.419Z info: <-- GET /api/health
2026-01-11T19:05:54.419Z info: --> GET /api/health 200 0ms
2026-01-11T19:06:24.479Z info: <-- GET /api/health
2026-01-11T19:06:24.480Z info: --> GET /api/health 200 1ms
2026-01-11T19:06:54.531Z info: <-- GET /api/health
2026-01-11T19:06:54.532Z info: --> GET /api/health 200 0ms
2026-01-11T19:07:24.584Z info: <-- GET /api/health
2026-01-11T19:07:24.585Z info: --> GET /api/health 200 1ms
2026-01-11T19:07:54.655Z info: <-- GET /api/health
2026-01-11T19:07:54.655Z info: --> GET /api/health 200 0ms
2026-01-11T19:08:24.712Z info: <-- GET /api/health
2026-01-11T19:08:24.713Z info: --> GET /api/health 200 1ms
2026-01-11T19:08:54.770Z info: <-- GET /api/health
2026-01-11T19:08:54.771Z info: --> GET /api/health 200 1ms
2026-01-11T19:09:24.828Z info: <-- GET /api/health
2026-01-11T19:09:24.829Z info: --> GET /api/health 200 1ms
2026-01-11T19:09:54.895Z info: <-- GET /api/health
2026-01-11T19:09:54.896Z info: --> GET /api/health 200 1ms
2026-01-11T19:10:24.955Z info: <-- GET /api/health
2026-01-11T19:10:24.956Z info: --> GET /api/health 200 0ms
2026-01-11T19:10:55.019Z info: <-- GET /api/health
2026-01-11T19:10:55.020Z info: --> GET /api/health 200 1ms
2026-01-11T19:11:25.094Z info: <-- GET /api/health
2026-01-11T19:11:25.095Z info: --> GET /api/health 200 1ms
2026-01-11T19:11:55.150Z info: <-- GET /api/health
2026-01-11T19:11:55.151Z info: --> GET /api/health 200 0ms
2026-01-11T19:12:25.227Z info: <-- GET /api/health
2026-01-11T19:12:25.227Z info: --> GET /api/health 200 0ms
2026-01-11T19:12:55.306Z info: <-- GET /api/health
2026-01-11T19:12:55.307Z info: --> GET /api/health 200 0ms
2026-01-11T19:13:25.383Z info: <-- GET /api/health
2026-01-11T19:13:25.384Z info: --> GET /api/health 200 1ms
2026-01-11T19:13:55.443Z info: <-- GET /api/health
2026-01-11T19:13:55.444Z info: --> GET /api/health 200 1ms
2026-01-11T19:14:25.515Z info: <-- GET /api/health
2026-01-11T19:14:25.516Z info: --> GET /api/health 200 0ms
2026-01-11T19:14:55.580Z info: <-- GET /api/health
2026-01-11T19:14:55.581Z info: --> GET /api/health 200 0ms
2026-01-11T19:15:25.631Z info: <-- GET /api/health
2026-01-11T19:15:25.632Z info: --> GET /api/health 200 0ms
2026-01-11T19:15:55.687Z info: <-- GET /api/health
2026-01-11T19:15:55.687Z info: --> GET /api/health 200 0ms
2026-01-11T19:16:25.751Z info: <-- GET /api/health
2026-01-11T19:16:25.752Z info: --> GET /api/health 200 0ms
2026-01-11T19:16:55.815Z info: <-- GET /api/health
2026-01-11T19:16:55.815Z info: --> GET /api/health 200 0ms
2026-01-11T19:17:25.872Z info: <-- GET /api/health
2026-01-11T19:17:25.872Z info: --> GET /api/health 200 0ms
2026-01-11T19:17:55.936Z info: <-- GET /api/health
2026-01-11T19:17:55.937Z info: --> GET /api/health 200 1ms
2026-01-11T19:18:25.986Z info: <-- GET /api/health
2026-01-11T19:18:25.986Z info: --> GET /api/health 200 0ms
2026-01-11T19:18:56.058Z info: <-- GET /api/health
2026-01-11T19:18:56.059Z info: --> GET /api/health 200 1ms
2026-01-11T19:19:26.123Z info: <-- GET /api/health
2026-01-11T19:19:26.123Z info: --> GET /api/health 200 0ms
2026-01-11T19:19:56.191Z info: <-- GET /api/health
2026-01-11T19:19:56.192Z info: --> GET /api/health 200 0ms
2026-01-11T19:20:26.247Z info: <-- GET /api/health
2026-01-11T19:20:26.248Z info: --> GET /api/health 200 1ms
2026-01-11T19:20:56.304Z info: <-- GET /api/health
2026-01-11T19:20:56.305Z info: --> GET /api/health 200 1ms
2026-01-11T19:21:26.362Z info: <-- GET /api/health
2026-01-11T19:21:26.363Z info: --> GET /api/health 200 0ms
2026-01-11T19:21:56.419Z info: <-- GET /api/health
2026-01-11T19:21:56.420Z info: --> GET /api/health 200 1ms
2026-01-11T19:22:26.479Z info: <-- GET /api/health
2026-01-11T19:22:26.480Z info: --> GET /api/health 200 1ms
2026-01-11T19:22:56.540Z info: <-- GET /api/health
2026-01-11T19:22:56.541Z info: --> GET /api/health 200 0ms
2026-01-11T19:23:26.603Z info: <-- GET /api/health
2026-01-11T19:23:26.604Z info: --> GET /api/health 200 0ms
2026-01-11T19:23:56.663Z info: <-- GET /api/health
2026-01-11T19:23:56.664Z info: --> GET /api/health 200 0ms
2026-01-11T19:24:26.728Z info: <-- GET /api/health
2026-01-11T19:24:26.728Z info: --> GET /api/health 200 0ms
2026-01-11T19:24:56.786Z info: <-- GET /api/health
2026-01-11T19:24:56.787Z info: --> GET /api/health 200 0ms
2026-01-11T19:25:26.852Z info: <-- GET /api/health
2026-01-11T19:25:26.852Z info: --> GET /api/health 200 0ms
2026-01-11T19:25:56.918Z info: <-- GET /api/health
2026-01-11T19:25:56.919Z info: --> GET /api/health 200 1ms
2026-01-11T19:26:26.983Z info: <-- GET /api/health
2026-01-11T19:26:26.983Z info: --> GET /api/health 200 0ms
2026-01-11T19:26:57.040Z info: <-- GET /api/health
2026-01-11T19:26:57.040Z info: --> GET /api/health 200 0ms
2026-01-11T19:27:27.103Z info: <-- GET /api/health
2026-01-11T19:27:27.104Z info: --> GET /api/health 200 1ms
2026-01-11T19:27:57.163Z info: <-- GET /api/health
2026-01-11T19:27:57.163Z info: --> GET /api/health 200 0ms
2026-01-11T19:28:27.223Z info: <-- GET /api/health
2026-01-11T19:28:27.224Z info: --> GET /api/health 200 1ms
2026-01-11T19:28:57.275Z info: <-- GET /api/health
2026-01-11T19:28:57.276Z info: --> GET /api/health 200 1ms
2026-01-11T19:29:27.335Z info: <-- GET /api/health
2026-01-11T19:29:27.335Z info: --> GET /api/health 200 0ms
2026-01-11T19:29:57.398Z info: <-- GET /api/health
2026-01-11T19:29:57.399Z info: --> GET /api/health 200 0ms
2026-01-11T19:30:27.444Z info: <-- GET /api/health
2026-01-11T19:30:27.445Z info: --> GET /api/health 200 1ms
2026-01-11T19:30:57.505Z info: <-- GET /api/health
2026-01-11T19:30:57.505Z info: --> GET /api/health 200 0ms
2026-01-11T19:31:27.556Z info: <-- GET /api/health
2026-01-11T19:31:27.556Z info: --> GET /api/health 200 0ms
2026-01-11T19:31:57.606Z info: <-- GET /api/health
2026-01-11T19:31:57.607Z info: --> GET /api/health 200 1ms
2026-01-11T19:32:27.664Z info: <-- GET /api/health
2026-01-11T19:32:27.665Z info: --> GET /api/health 200 1ms
2026-01-11T19:32:57.731Z info: <-- GET /api/health
2026-01-11T19:32:57.732Z info: --> GET /api/health 200 1ms
2026-01-11T19:33:27.796Z info: <-- GET /api/health
2026-01-11T19:33:27.797Z info: --> GET /api/health 200 1ms
2026-01-11T19:33:57.864Z info: <-- GET /api/health
2026-01-11T19:33:57.864Z info: --> GET /api/health 200 0ms
2026-01-11T19:34:27.926Z info: <-- GET /api/health
2026-01-11T19:34:27.927Z info: --> GET /api/health 200 0ms
2026-01-11T19:34:57.991Z info: <-- GET /api/health
2026-01-11T19:34:57.992Z info: --> GET /api/health 200 1ms
2026-01-11T19:35:28.047Z info: <-- GET /api/health
2026-01-11T19:35:28.048Z info: --> GET /api/health 200 0ms
2026-01-11T19:35:58.112Z info: <-- GET /api/health
2026-01-11T19:35:58.113Z info: --> GET /api/health 200 1ms
2026-01-11T19:36:28.175Z info: <-- GET /api/health
2026-01-11T19:36:28.176Z info: --> GET /api/health 200 1ms
2026-01-11T19:36:58.246Z info: <-- GET /api/health
2026-01-11T19:36:58.247Z info: --> GET /api/health 200 1ms
2026-01-11T19:37:28.312Z info: <-- GET /api/health
2026-01-11T19:37:28.313Z info: --> GET /api/health 200 1ms
2026-01-11T19:37:58.375Z info: <-- GET /api/health
2026-01-11T19:37:58.376Z info: --> GET /api/health 200 1ms
2026-01-11T19:38:28.447Z info: <-- GET /api/health
2026-01-11T19:38:28.448Z info: --> GET /api/health 200 1ms
2026-01-11T19:38:58.502Z info: <-- GET /api/health
2026-01-11T19:38:58.503Z info: --> GET /api/health 200 0ms
2026-01-11T19:39:28.556Z info: <-- GET /api/health
2026-01-11T19:39:28.556Z info: --> GET /api/health 200 0ms
2026-01-11T19:39:58.635Z info: <-- GET /api/health
2026-01-11T19:39:58.635Z info: --> GET /api/health 200 0ms
2026-01-11T19:40:28.696Z info: <-- GET /api/health
2026-01-11T19:40:28.696Z info: --> GET /api/health 200 0ms
2026-01-11T19:40:58.755Z info: <-- GET /api/health
2026-01-11T19:40:58.756Z info: --> GET /api/health 200 0ms
2026-01-11T19:41:28.820Z info: <-- GET /api/health
2026-01-11T19:41:28.821Z info: --> GET /api/health 200 0ms
2026-01-11T19:41:58.886Z info: <-- GET /api/health
2026-01-11T19:41:58.886Z info: --> GET /api/health 200 0ms
2026-01-11T19:42:28.951Z info: <-- GET /api/health
2026-01-11T19:42:28.952Z info: --> GET /api/health 200 1ms
2026-01-11T19:42:59.008Z info: <-- GET /api/health
2026-01-11T19:42:59.009Z info: --> GET /api/health 200 0ms
2026-01-11T19:43:29.081Z info: <-- GET /api/health
2026-01-11T19:43:29.081Z info: --> GET /api/health 200 0ms
2026-01-11T19:43:59.152Z info: <-- GET /api/health
2026-01-11T19:43:59.153Z info: --> GET /api/health 200 1ms
2026-01-11T19:44:29.212Z info: <-- GET /api/health
2026-01-11T19:44:29.213Z info: --> GET /api/health 200 0ms
2026-01-11T19:44:59.276Z info: <-- GET /api/health
2026-01-11T19:44:59.277Z info: --> GET /api/health 200 1ms
2026-01-11T19:45:29.334Z info: <-- GET /api/health
2026-01-11T19:45:29.335Z info: --> GET /api/health 200 1ms
2026-01-11T19:45:59.391Z info: <-- GET /api/health
2026-01-11T19:45:59.391Z info: --> GET /api/health 200 0ms
2026-01-11T19:46:29.452Z info: <-- GET /api/health
2026-01-11T19:46:29.453Z info: --> GET /api/health 200 1ms
2026-01-11T19:46:59.503Z info: <-- GET /api/health
2026-01-11T19:46:59.503Z info: --> GET /api/health 200 0ms
2026-01-11T19:47:29.564Z info: <-- GET /api/health
2026-01-11T19:47:29.566Z info: --> GET /api/health 200 0ms
2026-01-11T19:47:59.626Z info: <-- GET /api/health
2026-01-11T19:47:59.627Z info: --> GET /api/health 200 1ms
2026-01-11T19:48:29.694Z info: <-- GET /api/health
2026-01-11T19:48:29.695Z info: --> GET /api/health 200 1ms
2026-01-11T19:48:59.764Z info: <-- GET /api/health
2026-01-11T19:48:59.765Z info: --> GET /api/health 200 1ms
2026-01-11T19:49:29.836Z info: <-- GET /api/health
2026-01-11T19:49:29.836Z info: --> GET /api/health 200 0ms
2026-01-11T19:49:59.911Z info: <-- GET /api/health
2026-01-11T19:49:59.911Z info: --> GET /api/health 200 0ms
2026-01-11T19:50:29.976Z info: <-- GET /api/health
2026-01-11T19:50:29.976Z info: --> GET /api/health 200 0ms
2026-01-11T19:51:00.047Z info: <-- GET /api/health
2026-01-11T19:51:00.048Z info: --> GET /api/health 200 1ms
2026-01-11T19:51:30.111Z info: <-- GET /api/health
2026-01-11T19:51:30.112Z info: --> GET /api/health 200 1ms
2026-01-11T19:52:00.171Z info: <-- GET /api/health
2026-01-11T19:52:00.172Z info: --> GET /api/health 200 1ms
2026-01-11T19:52:30.232Z info: <-- GET /api/health
2026-01-11T19:52:30.232Z info: --> GET /api/health 200 0ms
2026-01-11T19:53:00.292Z info: <-- GET /api/health
2026-01-11T19:53:00.293Z info: --> GET /api/health 200 1ms
2026-01-11T19:53:30.346Z info: <-- GET /api/health
2026-01-11T19:53:30.346Z info: --> GET /api/health 200 0ms
2026-01-11T19:54:00.399Z info: <-- GET /api/health
2026-01-11T19:54:00.399Z info: --> GET /api/health 200 0ms
2026-01-11T19:54:30.463Z info: <-- GET /api/health
2026-01-11T19:54:30.464Z info: --> GET /api/health 200 1ms
2026-01-11T19:55:00.529Z info: <-- GET /api/health
2026-01-11T19:55:00.529Z info: --> GET /api/health 200 0ms
2026-01-11T19:55:30.597Z info: <-- GET /api/health
2026-01-11T19:55:30.598Z info: --> GET /api/health 200 0ms
2026-01-11T19:56:00.673Z info: <-- GET /api/health
2026-01-11T19:56:00.673Z info: --> GET /api/health 200 0ms
2026-01-11T19:56:30.737Z info: <-- GET /api/health
2026-01-11T19:56:30.738Z info: --> GET /api/health 200 1ms
2026-01-11T19:57:00.804Z info: <-- GET /api/health
2026-01-11T19:57:00.804Z info: --> GET /api/health 200 0ms
2026-01-11T19:57:30.844Z info: <-- GET /api/health
2026-01-11T19:57:30.845Z info: --> GET /api/health 200 1ms
2026-01-11T19:58:00.912Z info: <-- GET /api/health
2026-01-11T19:58:00.912Z info: --> GET /api/health 200 0ms
2026-01-11T19:58:30.980Z info: <-- GET /api/health
2026-01-11T19:58:30.980Z info: --> GET /api/health 200 0ms
2026-01-11T19:59:01.034Z info: <-- GET /api/health
2026-01-11T19:59:01.035Z info: --> GET /api/health 200 0ms
2026-01-11T19:59:31.111Z info: <-- GET /api/health
2026-01-11T19:59:31.111Z info: --> GET /api/health 200 0ms
2026-01-11T20:00:00.488Z info: [feed] Scheduling feed refreshing jobs ...
2026-01-11T20:00:01.172Z info: <-- GET /api/health
2026-01-11T20:00:01.173Z info: --> GET /api/health 200 1ms
2026-01-11T20:00:31.228Z info: <-- GET /api/health
2026-01-11T20:00:31.229Z info: --> GET /api/health 200 0ms
2026-01-11T20:01:01.295Z info: <-- GET /api/health
2026-01-11T20:01:01.295Z info: --> GET /api/health 200 0ms
2026-01-11T20:01:31.363Z info: <-- GET /api/health
2026-01-11T20:01:31.364Z info: --> GET /api/health 200 1ms
2026-01-11T20:02:01.427Z info: <-- GET /api/health
2026-01-11T20:02:01.427Z info: --> GET /api/health 200 0ms
2026-01-11T20:02:31.479Z info: <-- GET /api/health
2026-01-11T20:02:31.480Z info: --> GET /api/health 200 1ms
2026-01-11T20:03:01.535Z info: <-- GET /api/health
2026-01-11T20:03:01.536Z info: --> GET /api/health 200 1ms
2026-01-11T20:03:31.586Z info: <-- GET /api/health
2026-01-11T20:03:31.587Z info: --> GET /api/health 200 1ms
2026-01-11T20:04:01.633Z info: <-- GET /api/health
2026-01-11T20:04:01.634Z info: --> GET /api/health 200 1ms
2026-01-11T20:04:31.693Z info: <-- GET /api/health
2026-01-11T20:04:31.694Z info: --> GET /api/health 200 1ms
2026-01-11T20:05:01.755Z info: <-- GET /api/health
2026-01-11T20:05:01.755Z info: --> GET /api/health 200 0ms
2026-01-11T20:05:31.820Z info: <-- GET /api/health
2026-01-11T20:05:31.821Z info: --> GET /api/health 200 1ms
2026-01-11T20:06:01.883Z info: <-- GET /api/health
2026-01-11T20:06:01.883Z info: --> GET /api/health 200 0ms
2026-01-11T20:06:31.938Z info: <-- GET /api/health
2026-01-11T20:06:31.938Z info: --> GET /api/health 200 0ms
2026-01-11T20:07:01.991Z info: <-- GET /api/health
2026-01-11T20:07:01.992Z info: --> GET /api/health 200 1ms
2026-01-11T20:07:32.059Z info: <-- GET /api/health
2026-01-11T20:07:32.060Z info: --> GET /api/health 200 1ms
2026-01-11T20:08:02.131Z info: <-- GET /api/health
2026-01-11T20:08:02.132Z info: --> GET /api/health 200 1ms
2026-01-11T20:08:32.192Z info: <-- GET /api/health
2026-01-11T20:08:32.195Z info: --> GET /api/health 200 2ms
2026-01-11T20:09:02.263Z info: <-- GET /api/health
2026-01-11T20:09:02.264Z info: --> GET /api/health 200 1ms
2026-01-11T20:09:32.322Z info: <-- GET /api/health
2026-01-11T20:09:32.322Z info: --> GET /api/health 200 0ms
2026-01-11T20:10:02.373Z info: <-- GET /api/health
2026-01-11T20:10:02.374Z info: --> GET /api/health 200 0ms
2026-01-11T20:10:32.437Z info: <-- GET /api/health
2026-01-11T20:10:32.438Z info: --> GET /api/health 200 0ms
2026-01-11T20:11:02.507Z info: <-- GET /api/health
2026-01-11T20:11:02.508Z info: --> GET /api/health 200 1ms
2026-01-11T20:11:32.572Z info: <-- GET /api/health
2026-01-11T20:11:32.572Z info: --> GET /api/health 200 0ms
2026-01-11T20:12:02.628Z info: <-- GET /api/health
2026-01-11T20:12:02.629Z info: --> GET /api/health 200 1ms
2026-01-11T20:12:32.686Z info: <-- GET /api/health
2026-01-11T20:12:32.688Z info: --> GET /api/health 200 1ms
2026-01-11T20:13:02.752Z info: <-- GET /api/health
2026-01-11T20:13:02.752Z info: --> GET /api/health 200 0ms
2026-01-11T20:13:32.819Z info: <-- GET /api/health
2026-01-11T20:13:32.819Z info: --> GET /api/health 200 0ms
2026-01-11T20:14:02.890Z info: <-- GET /api/health
2026-01-11T20:14:02.891Z info: --> GET /api/health 200 1ms
2026-01-11T20:14:32.947Z info: <-- GET /api/health
2026-01-11T20:14:32.948Z info: --> GET /api/health 200 0ms
2026-01-11T20:15:02.999Z info: <-- GET /api/health
2026-01-11T20:15:02.999Z info: --> GET /api/health 200 0ms
2026-01-11T20:15:33.054Z info: <-- GET /api/health
2026-01-11T20:15:33.054Z info: --> GET /api/health 200 0ms
2026-01-11T20:16:03.119Z info: <-- GET /api/health
2026-01-11T20:16:03.121Z info: --> GET /api/health 200 1ms
2026-01-11T20:16:33.175Z info: <-- GET /api/health
2026-01-11T20:16:33.176Z info: --> GET /api/health 200 1ms
2026-01-11T20:17:03.247Z info: <-- GET /api/health
2026-01-11T20:17:03.247Z info: --> GET /api/health 200 0ms
2026-01-11T20:17:33.304Z info: <-- GET /api/health
2026-01-11T20:17:33.305Z info: --> GET /api/health 200 1ms
2026-01-11T20:18:03.366Z info: <-- GET /api/health
2026-01-11T20:18:03.367Z info: --> GET /api/health 200 1ms
2026-01-11T20:18:33.423Z info: <-- GET /api/health
2026-01-11T20:18:33.424Z info: --> GET /api/health 200 1ms
2026-01-11T20:19:03.494Z info: <-- GET /api/health
2026-01-11T20:19:03.495Z info: --> GET /api/health 200 1ms
2026-01-11T20:19:33.542Z info: <-- GET /api/health
2026-01-11T20:19:33.543Z info: --> GET /api/health 200 1ms
2026-01-11T20:20:03.628Z info: <-- GET /api/health
2026-01-11T20:20:03.629Z info: --> GET /api/health 200 1ms
2026-01-11T20:20:33.669Z info: <-- GET /api/health
2026-01-11T20:20:33.669Z info: --> GET /api/health 200 0ms
2026-01-11T20:21:03.747Z info: <-- GET /api/health
2026-01-11T20:21:03.748Z info: --> GET /api/health 200 1ms
2026-01-11T20:21:33.799Z info: <-- GET /api/health
2026-01-11T20:21:33.799Z info: --> GET /api/health 200 0ms
2026-01-11T20:22:03.841Z info: <-- GET /api/health
2026-01-11T20:22:03.841Z info: --> GET /api/health 200 0ms
2026-01-11T20:22:33.919Z info: <-- GET /api/health
2026-01-11T20:22:33.920Z info: --> GET /api/health 200 0ms
2026-01-11T20:23:03.991Z info: <-- GET /api/health
2026-01-11T20:23:03.991Z info: --> GET /api/health 200 0ms
2026-01-11T20:23:34.047Z info: <-- GET /api/health
2026-01-11T20:23:34.048Z info: --> GET /api/health 200 1ms
2026-01-11T20:24:04.104Z info: <-- GET /api/health
2026-01-11T20:24:04.105Z info: --> GET /api/health 200 0ms
2026-01-11T20:24:34.158Z info: <-- GET /api/health
2026-01-11T20:24:34.158Z info: --> GET /api/health 200 0ms
2026-01-11T20:25:04.219Z info: <-- GET /api/health
2026-01-11T20:25:04.220Z info: --> GET /api/health 200 0ms
2026-01-11T20:25:34.275Z info: <-- GET /api/health
2026-01-11T20:25:34.276Z info: --> GET /api/health 200 0ms
2026-01-11T20:26:04.335Z info: <-- GET /api/health
2026-01-11T20:26:04.336Z info: --> GET /api/health 200 1ms
2026-01-11T20:26:34.411Z info: <-- GET /api/health
2026-01-11T20:26:34.412Z info: --> GET /api/health 200 1ms
2026-01-11T20:27:04.479Z info: <-- GET /api/health
2026-01-11T20:27:04.480Z info: --> GET /api/health 200 0ms
2026-01-11T20:27:34.541Z info: <-- GET /api/health
2026-01-11T20:27:34.543Z info: --> GET /api/health 200 2ms
2026-01-11T20:28:04.598Z info: <-- GET /api/health
2026-01-11T20:28:04.598Z info: --> GET /api/health 200 0ms
2026-01-11T20:28:34.655Z info: <-- GET /api/health
2026-01-11T20:28:34.656Z info: --> GET /api/health 200 0ms
2026-01-11T20:29:04.716Z info: <-- GET /api/health
2026-01-11T20:29:04.716Z info: --> GET /api/health 200 0ms
2026-01-11T20:29:34.776Z info: <-- GET /api/health
2026-01-11T20:29:34.776Z info: --> GET /api/health 200 0ms
2026-01-11T20:30:04.837Z info: <-- GET /api/health
2026-01-11T20:30:04.837Z info: --> GET /api/health 200 0ms
2026-01-11T20:30:34.909Z info: <-- GET /api/health
2026-01-11T20:30:34.910Z info: --> GET /api/health 200 0ms
2026-01-11T20:31:04.978Z info: <-- GET /api/health
2026-01-11T20:31:04.979Z info: --> GET /api/health 200 1ms
2026-01-11T20:31:35.034Z info: <-- GET /api/health
2026-01-11T20:31:35.035Z info: --> GET /api/health 200 1ms
2026-01-11T20:32:05.099Z info: <-- GET /api/health
2026-01-11T20:32:05.100Z info: --> GET /api/health 200 1ms
2026-01-11T20:32:35.154Z info: <-- GET /api/health
2026-01-11T20:32:35.154Z info: --> GET /api/health 200 0ms
2026-01-11T20:33:05.216Z info: <-- GET /api/health
2026-01-11T20:33:05.217Z info: --> GET /api/health 200 1ms
2026-01-11T20:33:35.257Z info: <-- GET /api/health
2026-01-11T20:33:35.258Z info: --> GET /api/health 200 1ms
2026-01-11T20:34:05.315Z info: <-- GET /api/health
2026-01-11T20:34:05.315Z info: --> GET /api/health 200 0ms
2026-01-11T20:34:35.374Z info: <-- GET /api/health
2026-01-11T20:34:35.375Z info: --> GET /api/health 200 0ms
2026-01-11T20:35:05.444Z info: <-- GET /api/health
2026-01-11T20:35:05.444Z info: --> GET /api/health 200 0ms
2026-01-11T20:35:35.511Z info: <-- GET /api/health
2026-01-11T20:35:35.512Z info: --> GET /api/health 200 1ms
2026-01-11T20:36:05.579Z info: <-- GET /api/health
2026-01-11T20:36:05.580Z info: --> GET /api/health 200 0ms
2026-01-11T20:36:35.632Z info: <-- GET /api/health
2026-01-11T20:36:35.634Z info: --> GET /api/health 200 2ms
2026-01-11T20:37:05.710Z info: <-- GET /api/health
2026-01-11T20:37:05.711Z info: --> GET /api/health 200 0ms
2026-01-11T20:37:35.779Z info: <-- GET /api/health
2026-01-11T20:37:35.779Z info: --> GET /api/health 200 0ms
2026-01-11T20:38:05.829Z info: <-- GET /api/health
2026-01-11T20:38:05.830Z info: --> GET /api/health 200 1ms
2026-01-11T20:38:35.883Z info: <-- GET /api/health
2026-01-11T20:38:35.884Z info: --> GET /api/health 200 0ms
2026-01-11T20:39:05.951Z info: <-- GET /api/health
2026-01-11T20:39:05.952Z info: --> GET /api/health 200 1ms
2026-01-11T20:39:36.014Z info: <-- GET /api/health
2026-01-11T20:39:36.014Z info: --> GET /api/health 200 0ms
2026-01-11T20:40:06.067Z info: <-- GET /api/health
2026-01-11T20:40:06.067Z info: --> GET /api/health 200 0ms
2026-01-11T20:40:36.119Z info: <-- GET /api/health
2026-01-11T20:40:36.120Z info: --> GET /api/health 200 1ms
2026-01-11T20:41:06.179Z info: <-- GET /api/health
2026-01-11T20:41:06.180Z info: --> GET /api/health 200 1ms
2026-01-11T20:41:36.244Z info: <-- GET /api/health
2026-01-11T20:41:36.246Z info: --> GET /api/health 200 2ms
2026-01-11T20:42:06.310Z info: <-- GET /api/health
2026-01-11T20:42:06.312Z info: --> GET /api/health 200 1ms
2026-01-11T20:42:36.358Z info: <-- GET /api/health
2026-01-11T20:42:36.358Z info: --> GET /api/health 200 0ms
2026-01-11T20:43:06.412Z info: <-- GET /api/health
2026-01-11T20:43:06.413Z info: --> GET /api/health 200 0ms
2026-01-11T20:43:36.464Z info: <-- GET /api/health
2026-01-11T20:43:36.465Z info: --> GET /api/health 200 1ms
2026-01-11T20:44:06.518Z info: <-- GET /api/health
2026-01-11T20:44:06.519Z info: --> GET /api/health 200 0ms
2026-01-11T20:44:36.583Z info: <-- GET /api/health
2026-01-11T20:44:36.583Z info: --> GET /api/health 200 0ms
2026-01-11T20:45:06.644Z info: <-- GET /api/health
2026-01-11T20:45:06.644Z info: --> GET /api/health 200 0ms
2026-01-11T20:45:36.711Z info: <-- GET /api/health
2026-01-11T20:45:36.712Z info: --> GET /api/health 200 1ms
2026-01-11T20:46:06.786Z info: <-- GET /api/health
2026-01-11T20:46:06.787Z info: --> GET /api/health 200 0ms
2026-01-11T20:46:36.840Z info: <-- GET /api/health
2026-01-11T20:46:36.841Z info: --> GET /api/health 200 0ms
2026-01-11T20:47:06.894Z info: <-- GET /api/health
2026-01-11T20:47:06.894Z info: --> GET /api/health 200 0ms
2026-01-11T20:47:36.967Z info: <-- GET /api/health
2026-01-11T20:47:36.967Z info: --> GET /api/health 200 0ms
2026-01-11T20:48:07.022Z info: <-- GET /api/health
2026-01-11T20:48:07.023Z info: --> GET /api/health 200 1ms
2026-01-11T20:48:37.073Z info: <-- GET /api/health
2026-01-11T20:48:37.073Z info: --> GET /api/health 200 0ms
2026-01-11T20:49:07.127Z info: <-- GET /api/health
2026-01-11T20:49:07.128Z info: --> GET /api/health 200 1ms
2026-01-11T20:49:37.191Z info: <-- GET /api/health
2026-01-11T20:49:37.191Z info: --> GET /api/health 200 0ms
2026-01-11T20:50:07.252Z info: <-- GET /api/health
2026-01-11T20:50:07.254Z info: --> GET /api/health 200 1ms
2026-01-11T20:50:37.311Z info: <-- GET /api/health
2026-01-11T20:50:37.312Z info: --> GET /api/health 200 1ms
2026-01-11T20:51:07.371Z info: <-- GET /api/health
2026-01-11T20:51:07.372Z info: --> GET /api/health 200 1ms
2026-01-11T20:51:37.421Z info: <-- GET /api/health
2026-01-11T20:51:37.422Z info: --> GET /api/health 200 1ms
2026-01-11T20:52:07.482Z info: <-- GET /api/health
2026-01-11T20:52:07.483Z info: --> GET /api/health 200 1ms
2026-01-11T20:52:37.534Z info: <-- GET /api/health
2026-01-11T20:52:37.534Z info: --> GET /api/health 200 0ms
2026-01-11T20:53:07.591Z info: <-- GET /api/health
2026-01-11T20:53:07.591Z info: --> GET /api/health 200 0ms
2026-01-11T20:53:37.654Z info: <-- GET /api/health
2026-01-11T20:53:37.655Z info: --> GET /api/health 200 0ms
2026-01-11T20:54:07.714Z info: <-- GET /api/health
2026-01-11T20:54:07.715Z info: --> GET /api/health 200 1ms
2026-01-11T20:54:37.783Z info: <-- GET /api/health
2026-01-11T20:54:37.783Z info: --> GET /api/health 200 0ms
2026-01-11T20:55:07.846Z info: <-- GET /api/health
2026-01-11T20:55:07.847Z info: --> GET /api/health 200 1ms
2026-01-11T20:55:37.895Z info: <-- GET /api/health
2026-01-11T20:55:37.895Z info: --> GET /api/health 200 0ms
2026-01-11T20:56:07.950Z info: <-- GET /api/health
2026-01-11T20:56:07.950Z info: --> GET /api/health 200 0ms
2026-01-11T20:56:38.002Z info: <-- GET /api/health
2026-01-11T20:56:38.003Z info: --> GET /api/health 200 1ms
2026-01-11T20:57:08.070Z info: <-- GET /api/health
2026-01-11T20:57:08.070Z info: --> GET /api/health 200 0ms
2026-01-11T20:57:38.140Z info: <-- GET /api/health
2026-01-11T20:57:38.142Z info: --> GET /api/health 200 2ms
2026-01-11T20:58:08.218Z info: <-- GET /api/health
2026-01-11T20:58:08.219Z info: --> GET /api/health 200 1ms
2026-01-11T20:58:38.277Z info: <-- GET /api/health
2026-01-11T20:58:38.277Z info: --> GET /api/health 200 0ms
2026-01-11T20:59:08.340Z info: <-- GET /api/health
2026-01-11T20:59:08.340Z info: --> GET /api/health 200 0ms
2026-01-11T20:59:38.416Z info: <-- GET /api/health
2026-01-11T20:59:38.416Z info: --> GET /api/health 200 0ms
2026-01-11T21:00:00.190Z info: [feed] Scheduling feed refreshing jobs ...
2026-01-11T21:00:08.456Z info: <-- GET /api/health
2026-01-11T21:00:08.457Z info: --> GET /api/health 200 1ms
2026-01-11T21:00:38.514Z info: <-- GET /api/health
2026-01-11T21:00:38.515Z info: --> GET /api/health 200 1ms
2026-01-11T21:01:08.568Z info: <-- GET /api/health
2026-01-11T21:01:08.569Z info: --> GET /api/health 200 0ms
2026-01-11T21:01:38.636Z info: <-- GET /api/health
2026-01-11T21:01:38.636Z info: --> GET /api/health 200 0ms
2026-01-11T21:02:08.699Z info: <-- GET /api/health
2026-01-11T21:02:08.700Z info: --> GET /api/health 200 0ms
2026-01-11T21:02:38.771Z info: <-- GET /api/health
2026-01-11T21:02:38.771Z info: --> GET /api/health 200 0ms
2026-01-11T21:03:08.826Z info: <-- GET /api/health
2026-01-11T21:03:08.827Z info: --> GET /api/health 200 1ms
2026-01-11T21:03:38.890Z info: <-- GET /api/health
2026-01-11T21:03:38.891Z info: --> GET /api/health 200 1ms
2026-01-11T21:04:08.966Z info: <-- GET /api/health
2026-01-11T21:04:08.967Z info: --> GET /api/health 200 1ms
2026-01-11T21:04:39.018Z info: <-- GET /api/health
2026-01-11T21:04:39.019Z info: --> GET /api/health 200 1ms
2026-01-11T21:05:09.087Z info: <-- GET /api/health
2026-01-11T21:05:09.088Z info: --> GET /api/health 200 1ms
2026-01-11T21:05:39.144Z info: <-- GET /api/health
2026-01-11T21:05:39.145Z info: --> GET /api/health 200 0ms
2026-01-11T21:06:09.199Z info: <-- GET /api/health
2026-01-11T21:06:09.199Z info: --> GET /api/health 200 0ms
2026-01-11T21:06:39.263Z info: <-- GET /api/health
2026-01-11T21:06:39.263Z info: --> GET /api/health 200 0ms
2026-01-11T21:07:09.322Z info: <-- GET /api/health
2026-01-11T21:07:09.322Z info: --> GET /api/health 200 0ms
2026-01-11T21:07:39.390Z info: <-- GET /api/health
2026-01-11T21:07:39.391Z info: --> GET /api/health 200 1ms
2026-01-11T21:08:09.445Z info: <-- GET /api/health
2026-01-11T21:08:09.446Z info: --> GET /api/health 200 1ms
2026-01-11T21:08:39.503Z info: <-- GET /api/health
2026-01-11T21:08:39.504Z info: --> GET /api/health 200 1ms
2026-01-11T21:09:09.557Z info: <-- GET /api/health
2026-01-11T21:09:09.558Z info: --> GET /api/health 200 0ms
<!-- gh-comment-id:3735853617 --> @Nanianmichaels commented on GitHub (Jan 11, 2026): There's a bit of background activity, but nothing major or sensitive (I think), so here it goes: ``` Running db migration script ▲ Next.js 15.3.8 - Local: http://localhost:3000 - Network: http://0.0.0.0:3000 ✓ Starting... ✓ Ready in 660ms 2026-01-11T18:47:17.638Z info: Plugins (Last one wins): 2026-01-11T18:47:17.639Z info: search: 2026-01-11T18:47:17.639Z info: - MeiliSearch 2026-01-11T18:47:17.640Z info: queue: 2026-01-11T18:47:17.640Z info: - Liteque 2026-01-11T18:47:17.640Z info: ratelimit: 2026-01-11T18:47:17.640Z info: - In-Memory Rate Limiter 2026-01-11T18:47:17.649Z info: Tracing is disabled 2026-01-11T18:47:17.938Z info: Plugins (Last one wins): 2026-01-11T18:47:17.939Z info: search: 2026-01-11T18:47:17.939Z info: - MeiliSearch 2026-01-11T18:47:17.940Z info: queue: 2026-01-11T18:47:17.940Z info: - Liteque 2026-01-11T18:47:17.940Z info: ratelimit: 2026-01-11T18:47:17.940Z info: - In-Memory Rate Limiter 2026-01-11T18:47:20.939Z info: Plugins (Last one wins): 2026-01-11T18:47:20.941Z info: search: 2026-01-11T18:47:20.941Z info: - MeiliSearch 2026-01-11T18:47:20.941Z info: queue: 2026-01-11T18:47:20.941Z info: - Liteque 2026-01-11T18:47:20.941Z info: ratelimit: 2026-01-11T18:47:20.941Z info: - In-Memory Rate Limiter 2026-01-11T18:47:21.164Z info: Tracing is disabled 2026-01-11T18:47:21.164Z info: Workers version: nightly 2026-01-11T18:47:21.174Z info: [crawler] Loading adblocker ... 2026-01-11T18:47:21.175Z info: Starting inference worker ... 2026-01-11T18:47:21.176Z info: Starting search indexing worker ... 2026-01-11T18:47:21.176Z info: Starting admin maintenance worker ... 2026-01-11T18:47:21.176Z info: Starting video worker ... 2026-01-11T18:47:21.176Z info: Starting feed worker ... 2026-01-11T18:47:21.176Z info: Starting asset preprocessing worker ... 2026-01-11T18:47:21.177Z info: Starting webhook worker ... 2026-01-11T18:47:21.177Z info: Starting rule engine worker ... 2026-01-11T18:47:21.177Z info: Starting backup worker ... 2026-01-11T18:47:21.183Z info: Listening on http://127.0.0.1:40493 2026-01-11T18:47:21.905Z info: <-- GET /api/health 2026-01-11T18:47:21.912Z info: --> GET /api/health 200 6ms 2026-01-11T18:47:23.023Z info: [Crawler] Connecting to existing browser instance: http://chrome:9222 2026-01-11T18:47:23.024Z info: [Crawler] Successfully resolved IP address, new address: http://172.20.0.3:9222/ 2026-01-11T18:47:23.100Z info: Starting crawler worker ... 2026-01-11T18:47:23.100Z info: [Crawler] Not defined in the server configuration BROWSER_COOKIE_PATH 2026-01-11T18:47:51.996Z info: <-- GET /api/health 2026-01-11T18:47:51.997Z info: --> GET /api/health 200 1ms 2026-01-11T18:48:13.182Z info: [Crawler][51974:4] Will crawl "https://www.lowcostminipcs.com/de/" for link with id "kpnpquqzjmuou9io2eapb5qg" 2026-01-11T18:48:13.183Z info: [Crawler][51974:4] Attempting to determine the content-type for the url https://www.lowcostminipcs.com/de/ 2026-01-11T18:48:13.472Z info: [Crawler][51974:4] Content-type for the url https://www.lowcostminipcs.com/de/ is "text/html" 2026-01-11T18:48:13.718Z info: [Crawler][51974:4] Navigating to "https://www.lowcostminipcs.com/de/" 2026-01-11T18:48:22.055Z info: <-- GET /api/health 2026-01-11T18:48:22.056Z info: --> GET /api/health 200 1ms 2026-01-11T18:48:43.835Z error: [Crawler][51974] Crawling job failed: TimeoutError: page.goto: Timeout 30000ms exceeded. Call log: - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded" page.goto: Timeout 30000ms exceeded. Call log: - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded" at /app/apps/workers/dist/index.js:114594:46 at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async crawlPage (/app/apps/workers/dist/index.js:114530:9) at async file:///app/apps/workers/dist/index.js:115038:19 at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async crawlAndParseUrl (/app/apps/workers/dist/index.js:115015:9) at async runCrawler (/app/apps/workers/dist/index.js:115204:25) at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async Object.run (/app/apps/workers/dist/index.js:162:10) at async Object.wrappedRun (/app/apps/workers/dist/queue-liteque-Dl7RQuz8.js:53:12) at async Runner.runOnce (/app/apps/workers/node_modules/.pnpm/liteque@0.7.0_@opentelemetry+api@1.9.0_@types+better-sqlite3@7.6.13_@types+react@19.2.5_bette_j25tbpstiiqwo32nscmvntyxcu/node_modules/liteque/dist/index.js:261:19) 2026-01-11T18:48:43.854Z info: [Crawler][51974:5] Will crawl "https://www.lowcostminipcs.com/de/" for link with id "kpnpquqzjmuou9io2eapb5qg" 2026-01-11T18:48:43.854Z info: [Crawler][51974:5] Attempting to determine the content-type for the url https://www.lowcostminipcs.com/de/ 2026-01-11T18:48:44.186Z info: [Crawler][51974:5] Content-type for the url https://www.lowcostminipcs.com/de/ is "text/html" 2026-01-11T18:48:44.412Z info: [Crawler][51974:5] Navigating to "https://www.lowcostminipcs.com/de/" 2026-01-11T18:48:52.303Z info: <-- GET /api/health 2026-01-11T18:48:52.304Z info: --> GET /api/health 200 1ms 2026-01-11T18:48:53.424Z info: <-- GET /api/trpc/users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%7D 2026-01-11T18:48:53.516Z info: --> GET /api/trpc/users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%7D 200 92ms 2026-01-11T18:49:14.521Z error: [Crawler][51974] Crawling job failed: TimeoutError: page.goto: Timeout 30000ms exceeded. Call log: - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded" page.goto: Timeout 30000ms exceeded. Call log: - navigating to "https://www.lowcostminipcs.com/de/", waiting until "domcontentloaded" at /app/apps/workers/dist/index.js:114594:46 at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async crawlPage (/app/apps/workers/dist/index.js:114530:9) at async file:///app/apps/workers/dist/index.js:115038:19 at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async crawlAndParseUrl (/app/apps/workers/dist/index.js:115015:9) at async runCrawler (/app/apps/workers/dist/index.js:115204:25) at async file:///app/apps/workers/dist/email-D41T8t2G.js:28222:19 at async Object.run (/app/apps/workers/dist/index.js:162:10) at async Object.wrappedRun (/app/apps/workers/dist/queue-liteque-Dl7RQuz8.js:53:12) at async Runner.runOnce (/app/apps/workers/node_modules/.pnpm/liteque@0.7.0_@opentelemetry+api@1.9.0_@types+better-sqlite3@7.6.13_@types+react@19.2.5_bette_j25tbpstiiqwo32nscmvntyxcu/node_modules/liteque/dist/index.js:261:19) 2026-01-11T18:49:22.377Z info: <-- GET /api/health 2026-01-11T18:49:22.378Z info: --> GET /api/health 200 1ms 2026-01-11T18:49:52.446Z info: <-- GET /api/health 2026-01-11T18:49:52.447Z info: --> GET /api/health 200 1ms 2026-01-11T18:50:22.515Z info: <-- GET /api/health 2026-01-11T18:50:22.516Z info: --> GET /api/health 200 1ms 2026-01-11T18:50:46.040Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 2026-01-11T18:50:46.241Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 200ms 2026-01-11T18:50:52.572Z info: <-- GET /api/health 2026-01-11T18:50:52.574Z info: --> GET /api/health 200 0ms 2026-01-11T18:51:22.648Z info: <-- GET /api/health 2026-01-11T18:51:22.649Z info: --> GET /api/health 200 1ms 2026-01-11T18:51:52.701Z info: <-- GET /api/health 2026-01-11T18:51:52.702Z info: --> GET /api/health 200 1ms 2026-01-11T18:52:08.787Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 2026-01-11T18:52:08.953Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 166ms 2026-01-11T18:52:22.780Z info: <-- GET /api/health 2026-01-11T18:52:22.781Z info: --> GET /api/health 200 0ms 2026-01-11T18:52:52.848Z info: <-- GET /api/health 2026-01-11T18:52:52.848Z info: --> GET /api/health 200 0ms 2026-01-11T18:53:22.904Z info: <-- GET /api/health 2026-01-11T18:53:22.905Z info: --> GET /api/health 200 1ms 2026-01-11T18:53:52.963Z info: <-- GET /api/health 2026-01-11T18:53:52.964Z info: --> GET /api/health 200 0ms 2026-01-11T18:54:23.032Z info: <-- GET /api/health 2026-01-11T18:54:23.032Z info: --> GET /api/health 200 0ms 2026-01-11T18:54:53.092Z info: <-- GET /api/health 2026-01-11T18:54:53.093Z info: --> GET /api/health 200 1ms 2026-01-11T18:55:23.147Z info: <-- GET /api/health 2026-01-11T18:55:23.148Z info: --> GET /api/health 200 0ms 2026-01-11T18:55:53.205Z info: <-- GET /api/health 2026-01-11T18:55:53.206Z info: --> GET /api/health 200 1ms 2026-01-11T18:56:13.696Z info: <-- GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 2026-01-11T18:56:13.870Z info: --> GET /api/trpc/users.settings,lists.list,users.whoami,lists.getPendingInvitations,lists.stats,bookmarks.getBookmarks,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark,bookmarks.getBookmark?batch=1&input=%7B%220%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%221%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%222%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%223%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%224%22%3A%7B%22json%22%3Anull%2C%22meta%22%3A%7B%22values%22%3A%5B%22undefined%22%5D%7D%7D%2C%225%22%3A%7B%22json%22%3A%7B%22archived%22%3Afalse%2C%22sortOrder%22%3A%22desc%22%2C%22includeContent%22%3Afalse%2C%22useCursorV2%22%3Atrue%2C%22direction%22%3A%22forward%22%7D%7D%2C%226%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22idcysn2vfug16yxgvtx4eed2%22%7D%7D%2C%227%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22v9rcaeepusp9l2baxjs9wwrw%22%7D%7D%2C%228%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dpqwinv0494k8ayvyi93il80%22%7D%7D%2C%229%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22prm62ggu6g7v88ppwn3jm9wu%22%7D%7D%2C%2210%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22wubkbjq43nd4cmnjogjfah4s%22%7D%7D%2C%2211%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22xysgwbkjb41avthivny37oew%22%7D%7D%2C%2212%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22e8maqm2aaiyaikn7l6kcg0qa%22%7D%7D%2C%2213%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22du1jwj68ydyocothg1e1jqpu%22%7D%7D%2C%2214%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22z747inb70d69ebhi1vvsenl6%22%7D%7D%2C%2215%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ef8780d5fcli72646kpfgq4c%22%7D%7D%2C%2216%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22j7ekcjrpj9yppark1kj668di%22%7D%7D%2C%2217%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22jm3qau0hg8w4uxqajtqeltts%22%7D%7D%2C%2218%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22bc49djazms204g1rrrg4kaj6%22%7D%7D%2C%2219%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dyqrwjcuf6gv186wf0vqzksy%22%7D%7D%2C%2220%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22nb1mvjz4bq0o46fugaf51yk9%22%7D%7D%2C%2221%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22eqm86x2arvl7hgollgzj8ff4%22%7D%7D%2C%2222%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22cmsp0xgcj5opdgr990hsbphf%22%7D%7D%2C%2223%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22dv5981exmnv7iffue0oxpcyp%22%7D%7D%2C%2224%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22lusai5gly9vrwrew3vfg9b1u%22%7D%7D%2C%2225%22%3A%7B%22json%22%3A%7B%22bookmarkId%22%3A%22ufyfi0l50n1l1tzbictqxr5c%22%7D%7D%7D 200 173ms 2026-01-11T18:56:23.260Z info: <-- GET /api/health 2026-01-11T18:56:23.260Z info: --> GET /api/health 200 0ms 2026-01-11T18:56:53.330Z info: <-- GET /api/health 2026-01-11T18:56:53.332Z info: --> GET /api/health 200 1ms 2026-01-11T18:57:23.392Z info: <-- GET /api/health 2026-01-11T18:57:23.393Z info: --> GET /api/health 200 1ms 2026-01-11T18:57:53.441Z info: <-- GET /api/health 2026-01-11T18:57:53.442Z info: --> GET /api/health 200 1ms 2026-01-11T18:58:23.504Z info: <-- GET /api/health 2026-01-11T18:58:23.505Z info: --> GET /api/health 200 1ms 2026-01-11T18:58:53.556Z info: <-- GET /api/health 2026-01-11T18:58:53.558Z info: --> GET /api/health 200 1ms 2026-01-11T18:59:23.634Z info: <-- GET /api/health 2026-01-11T18:59:23.635Z info: --> GET /api/health 200 0ms 2026-01-11T18:59:53.691Z info: <-- GET /api/health 2026-01-11T18:59:53.692Z info: --> GET /api/health 200 1ms 2026-01-11T19:00:00.197Z info: [feed] Scheduling feed refreshing jobs ... 2026-01-11T19:00:23.767Z info: <-- GET /api/health 2026-01-11T19:00:23.767Z info: --> GET /api/health 200 0ms 2026-01-11T19:00:53.835Z info: <-- GET /api/health 2026-01-11T19:00:53.836Z info: --> GET /api/health 200 0ms 2026-01-11T19:01:23.889Z info: <-- GET /api/health 2026-01-11T19:01:23.890Z info: --> GET /api/health 200 1ms 2026-01-11T19:01:53.934Z info: <-- GET /api/health 2026-01-11T19:01:53.935Z info: --> GET /api/health 200 0ms 2026-01-11T19:02:23.994Z info: <-- GET /api/health 2026-01-11T19:02:23.995Z info: --> GET /api/health 200 0ms 2026-01-11T19:02:54.056Z info: <-- GET /api/health 2026-01-11T19:02:54.057Z info: --> GET /api/health 200 1ms 2026-01-11T19:03:24.111Z info: <-- GET /api/health 2026-01-11T19:03:24.112Z info: --> GET /api/health 200 1ms 2026-01-11T19:03:54.171Z info: <-- GET /api/health 2026-01-11T19:03:54.172Z info: --> GET /api/health 200 1ms 2026-01-11T19:04:24.215Z info: <-- GET /api/health 2026-01-11T19:04:24.216Z info: --> GET /api/health 200 1ms 2026-01-11T19:04:54.274Z info: <-- GET /api/health 2026-01-11T19:04:54.275Z info: --> GET /api/health 200 1ms 2026-01-11T19:05:24.347Z info: <-- GET /api/health 2026-01-11T19:05:24.348Z info: --> GET /api/health 200 1ms 2026-01-11T19:05:54.419Z info: <-- GET /api/health 2026-01-11T19:05:54.419Z info: --> GET /api/health 200 0ms 2026-01-11T19:06:24.479Z info: <-- GET /api/health 2026-01-11T19:06:24.480Z info: --> GET /api/health 200 1ms 2026-01-11T19:06:54.531Z info: <-- GET /api/health 2026-01-11T19:06:54.532Z info: --> GET /api/health 200 0ms 2026-01-11T19:07:24.584Z info: <-- GET /api/health 2026-01-11T19:07:24.585Z info: --> GET /api/health 200 1ms 2026-01-11T19:07:54.655Z info: <-- GET /api/health 2026-01-11T19:07:54.655Z info: --> GET /api/health 200 0ms 2026-01-11T19:08:24.712Z info: <-- GET /api/health 2026-01-11T19:08:24.713Z info: --> GET /api/health 200 1ms 2026-01-11T19:08:54.770Z info: <-- GET /api/health 2026-01-11T19:08:54.771Z info: --> GET /api/health 200 1ms 2026-01-11T19:09:24.828Z info: <-- GET /api/health 2026-01-11T19:09:24.829Z info: --> GET /api/health 200 1ms 2026-01-11T19:09:54.895Z info: <-- GET /api/health 2026-01-11T19:09:54.896Z info: --> GET /api/health 200 1ms 2026-01-11T19:10:24.955Z info: <-- GET /api/health 2026-01-11T19:10:24.956Z info: --> GET /api/health 200 0ms 2026-01-11T19:10:55.019Z info: <-- GET /api/health 2026-01-11T19:10:55.020Z info: --> GET /api/health 200 1ms 2026-01-11T19:11:25.094Z info: <-- GET /api/health 2026-01-11T19:11:25.095Z info: --> GET /api/health 200 1ms 2026-01-11T19:11:55.150Z info: <-- GET /api/health 2026-01-11T19:11:55.151Z info: --> GET /api/health 200 0ms 2026-01-11T19:12:25.227Z info: <-- GET /api/health 2026-01-11T19:12:25.227Z info: --> GET /api/health 200 0ms 2026-01-11T19:12:55.306Z info: <-- GET /api/health 2026-01-11T19:12:55.307Z info: --> GET /api/health 200 0ms 2026-01-11T19:13:25.383Z info: <-- GET /api/health 2026-01-11T19:13:25.384Z info: --> GET /api/health 200 1ms 2026-01-11T19:13:55.443Z info: <-- GET /api/health 2026-01-11T19:13:55.444Z info: --> GET /api/health 200 1ms 2026-01-11T19:14:25.515Z info: <-- GET /api/health 2026-01-11T19:14:25.516Z info: --> GET /api/health 200 0ms 2026-01-11T19:14:55.580Z info: <-- GET /api/health 2026-01-11T19:14:55.581Z info: --> GET /api/health 200 0ms 2026-01-11T19:15:25.631Z info: <-- GET /api/health 2026-01-11T19:15:25.632Z info: --> GET /api/health 200 0ms 2026-01-11T19:15:55.687Z info: <-- GET /api/health 2026-01-11T19:15:55.687Z info: --> GET /api/health 200 0ms 2026-01-11T19:16:25.751Z info: <-- GET /api/health 2026-01-11T19:16:25.752Z info: --> GET /api/health 200 0ms 2026-01-11T19:16:55.815Z info: <-- GET /api/health 2026-01-11T19:16:55.815Z info: --> GET /api/health 200 0ms 2026-01-11T19:17:25.872Z info: <-- GET /api/health 2026-01-11T19:17:25.872Z info: --> GET /api/health 200 0ms 2026-01-11T19:17:55.936Z info: <-- GET /api/health 2026-01-11T19:17:55.937Z info: --> GET /api/health 200 1ms 2026-01-11T19:18:25.986Z info: <-- GET /api/health 2026-01-11T19:18:25.986Z info: --> GET /api/health 200 0ms 2026-01-11T19:18:56.058Z info: <-- GET /api/health 2026-01-11T19:18:56.059Z info: --> GET /api/health 200 1ms 2026-01-11T19:19:26.123Z info: <-- GET /api/health 2026-01-11T19:19:26.123Z info: --> GET /api/health 200 0ms 2026-01-11T19:19:56.191Z info: <-- GET /api/health 2026-01-11T19:19:56.192Z info: --> GET /api/health 200 0ms 2026-01-11T19:20:26.247Z info: <-- GET /api/health 2026-01-11T19:20:26.248Z info: --> GET /api/health 200 1ms 2026-01-11T19:20:56.304Z info: <-- GET /api/health 2026-01-11T19:20:56.305Z info: --> GET /api/health 200 1ms 2026-01-11T19:21:26.362Z info: <-- GET /api/health 2026-01-11T19:21:26.363Z info: --> GET /api/health 200 0ms 2026-01-11T19:21:56.419Z info: <-- GET /api/health 2026-01-11T19:21:56.420Z info: --> GET /api/health 200 1ms 2026-01-11T19:22:26.479Z info: <-- GET /api/health 2026-01-11T19:22:26.480Z info: --> GET /api/health 200 1ms 2026-01-11T19:22:56.540Z info: <-- GET /api/health 2026-01-11T19:22:56.541Z info: --> GET /api/health 200 0ms 2026-01-11T19:23:26.603Z info: <-- GET /api/health 2026-01-11T19:23:26.604Z info: --> GET /api/health 200 0ms 2026-01-11T19:23:56.663Z info: <-- GET /api/health 2026-01-11T19:23:56.664Z info: --> GET /api/health 200 0ms 2026-01-11T19:24:26.728Z info: <-- GET /api/health 2026-01-11T19:24:26.728Z info: --> GET /api/health 200 0ms 2026-01-11T19:24:56.786Z info: <-- GET /api/health 2026-01-11T19:24:56.787Z info: --> GET /api/health 200 0ms 2026-01-11T19:25:26.852Z info: <-- GET /api/health 2026-01-11T19:25:26.852Z info: --> GET /api/health 200 0ms 2026-01-11T19:25:56.918Z info: <-- GET /api/health 2026-01-11T19:25:56.919Z info: --> GET /api/health 200 1ms 2026-01-11T19:26:26.983Z info: <-- GET /api/health 2026-01-11T19:26:26.983Z info: --> GET /api/health 200 0ms 2026-01-11T19:26:57.040Z info: <-- GET /api/health 2026-01-11T19:26:57.040Z info: --> GET /api/health 200 0ms 2026-01-11T19:27:27.103Z info: <-- GET /api/health 2026-01-11T19:27:27.104Z info: --> GET /api/health 200 1ms 2026-01-11T19:27:57.163Z info: <-- GET /api/health 2026-01-11T19:27:57.163Z info: --> GET /api/health 200 0ms 2026-01-11T19:28:27.223Z info: <-- GET /api/health 2026-01-11T19:28:27.224Z info: --> GET /api/health 200 1ms 2026-01-11T19:28:57.275Z info: <-- GET /api/health 2026-01-11T19:28:57.276Z info: --> GET /api/health 200 1ms 2026-01-11T19:29:27.335Z info: <-- GET /api/health 2026-01-11T19:29:27.335Z info: --> GET /api/health 200 0ms 2026-01-11T19:29:57.398Z info: <-- GET /api/health 2026-01-11T19:29:57.399Z info: --> GET /api/health 200 0ms 2026-01-11T19:30:27.444Z info: <-- GET /api/health 2026-01-11T19:30:27.445Z info: --> GET /api/health 200 1ms 2026-01-11T19:30:57.505Z info: <-- GET /api/health 2026-01-11T19:30:57.505Z info: --> GET /api/health 200 0ms 2026-01-11T19:31:27.556Z info: <-- GET /api/health 2026-01-11T19:31:27.556Z info: --> GET /api/health 200 0ms 2026-01-11T19:31:57.606Z info: <-- GET /api/health 2026-01-11T19:31:57.607Z info: --> GET /api/health 200 1ms 2026-01-11T19:32:27.664Z info: <-- GET /api/health 2026-01-11T19:32:27.665Z info: --> GET /api/health 200 1ms 2026-01-11T19:32:57.731Z info: <-- GET /api/health 2026-01-11T19:32:57.732Z info: --> GET /api/health 200 1ms 2026-01-11T19:33:27.796Z info: <-- GET /api/health 2026-01-11T19:33:27.797Z info: --> GET /api/health 200 1ms 2026-01-11T19:33:57.864Z info: <-- GET /api/health 2026-01-11T19:33:57.864Z info: --> GET /api/health 200 0ms 2026-01-11T19:34:27.926Z info: <-- GET /api/health 2026-01-11T19:34:27.927Z info: --> GET /api/health 200 0ms 2026-01-11T19:34:57.991Z info: <-- GET /api/health 2026-01-11T19:34:57.992Z info: --> GET /api/health 200 1ms 2026-01-11T19:35:28.047Z info: <-- GET /api/health 2026-01-11T19:35:28.048Z info: --> GET /api/health 200 0ms 2026-01-11T19:35:58.112Z info: <-- GET /api/health 2026-01-11T19:35:58.113Z info: --> GET /api/health 200 1ms 2026-01-11T19:36:28.175Z info: <-- GET /api/health 2026-01-11T19:36:28.176Z info: --> GET /api/health 200 1ms 2026-01-11T19:36:58.246Z info: <-- GET /api/health 2026-01-11T19:36:58.247Z info: --> GET /api/health 200 1ms 2026-01-11T19:37:28.312Z info: <-- GET /api/health 2026-01-11T19:37:28.313Z info: --> GET /api/health 200 1ms 2026-01-11T19:37:58.375Z info: <-- GET /api/health 2026-01-11T19:37:58.376Z info: --> GET /api/health 200 1ms 2026-01-11T19:38:28.447Z info: <-- GET /api/health 2026-01-11T19:38:28.448Z info: --> GET /api/health 200 1ms 2026-01-11T19:38:58.502Z info: <-- GET /api/health 2026-01-11T19:38:58.503Z info: --> GET /api/health 200 0ms 2026-01-11T19:39:28.556Z info: <-- GET /api/health 2026-01-11T19:39:28.556Z info: --> GET /api/health 200 0ms 2026-01-11T19:39:58.635Z info: <-- GET /api/health 2026-01-11T19:39:58.635Z info: --> GET /api/health 200 0ms 2026-01-11T19:40:28.696Z info: <-- GET /api/health 2026-01-11T19:40:28.696Z info: --> GET /api/health 200 0ms 2026-01-11T19:40:58.755Z info: <-- GET /api/health 2026-01-11T19:40:58.756Z info: --> GET /api/health 200 0ms 2026-01-11T19:41:28.820Z info: <-- GET /api/health 2026-01-11T19:41:28.821Z info: --> GET /api/health 200 0ms 2026-01-11T19:41:58.886Z info: <-- GET /api/health 2026-01-11T19:41:58.886Z info: --> GET /api/health 200 0ms 2026-01-11T19:42:28.951Z info: <-- GET /api/health 2026-01-11T19:42:28.952Z info: --> GET /api/health 200 1ms 2026-01-11T19:42:59.008Z info: <-- GET /api/health 2026-01-11T19:42:59.009Z info: --> GET /api/health 200 0ms 2026-01-11T19:43:29.081Z info: <-- GET /api/health 2026-01-11T19:43:29.081Z info: --> GET /api/health 200 0ms 2026-01-11T19:43:59.152Z info: <-- GET /api/health 2026-01-11T19:43:59.153Z info: --> GET /api/health 200 1ms 2026-01-11T19:44:29.212Z info: <-- GET /api/health 2026-01-11T19:44:29.213Z info: --> GET /api/health 200 0ms 2026-01-11T19:44:59.276Z info: <-- GET /api/health 2026-01-11T19:44:59.277Z info: --> GET /api/health 200 1ms 2026-01-11T19:45:29.334Z info: <-- GET /api/health 2026-01-11T19:45:29.335Z info: --> GET /api/health 200 1ms 2026-01-11T19:45:59.391Z info: <-- GET /api/health 2026-01-11T19:45:59.391Z info: --> GET /api/health 200 0ms 2026-01-11T19:46:29.452Z info: <-- GET /api/health 2026-01-11T19:46:29.453Z info: --> GET /api/health 200 1ms 2026-01-11T19:46:59.503Z info: <-- GET /api/health 2026-01-11T19:46:59.503Z info: --> GET /api/health 200 0ms 2026-01-11T19:47:29.564Z info: <-- GET /api/health 2026-01-11T19:47:29.566Z info: --> GET /api/health 200 0ms 2026-01-11T19:47:59.626Z info: <-- GET /api/health 2026-01-11T19:47:59.627Z info: --> GET /api/health 200 1ms 2026-01-11T19:48:29.694Z info: <-- GET /api/health 2026-01-11T19:48:29.695Z info: --> GET /api/health 200 1ms 2026-01-11T19:48:59.764Z info: <-- GET /api/health 2026-01-11T19:48:59.765Z info: --> GET /api/health 200 1ms 2026-01-11T19:49:29.836Z info: <-- GET /api/health 2026-01-11T19:49:29.836Z info: --> GET /api/health 200 0ms 2026-01-11T19:49:59.911Z info: <-- GET /api/health 2026-01-11T19:49:59.911Z info: --> GET /api/health 200 0ms 2026-01-11T19:50:29.976Z info: <-- GET /api/health 2026-01-11T19:50:29.976Z info: --> GET /api/health 200 0ms 2026-01-11T19:51:00.047Z info: <-- GET /api/health 2026-01-11T19:51:00.048Z info: --> GET /api/health 200 1ms 2026-01-11T19:51:30.111Z info: <-- GET /api/health 2026-01-11T19:51:30.112Z info: --> GET /api/health 200 1ms 2026-01-11T19:52:00.171Z info: <-- GET /api/health 2026-01-11T19:52:00.172Z info: --> GET /api/health 200 1ms 2026-01-11T19:52:30.232Z info: <-- GET /api/health 2026-01-11T19:52:30.232Z info: --> GET /api/health 200 0ms 2026-01-11T19:53:00.292Z info: <-- GET /api/health 2026-01-11T19:53:00.293Z info: --> GET /api/health 200 1ms 2026-01-11T19:53:30.346Z info: <-- GET /api/health 2026-01-11T19:53:30.346Z info: --> GET /api/health 200 0ms 2026-01-11T19:54:00.399Z info: <-- GET /api/health 2026-01-11T19:54:00.399Z info: --> GET /api/health 200 0ms 2026-01-11T19:54:30.463Z info: <-- GET /api/health 2026-01-11T19:54:30.464Z info: --> GET /api/health 200 1ms 2026-01-11T19:55:00.529Z info: <-- GET /api/health 2026-01-11T19:55:00.529Z info: --> GET /api/health 200 0ms 2026-01-11T19:55:30.597Z info: <-- GET /api/health 2026-01-11T19:55:30.598Z info: --> GET /api/health 200 0ms 2026-01-11T19:56:00.673Z info: <-- GET /api/health 2026-01-11T19:56:00.673Z info: --> GET /api/health 200 0ms 2026-01-11T19:56:30.737Z info: <-- GET /api/health 2026-01-11T19:56:30.738Z info: --> GET /api/health 200 1ms 2026-01-11T19:57:00.804Z info: <-- GET /api/health 2026-01-11T19:57:00.804Z info: --> GET /api/health 200 0ms 2026-01-11T19:57:30.844Z info: <-- GET /api/health 2026-01-11T19:57:30.845Z info: --> GET /api/health 200 1ms 2026-01-11T19:58:00.912Z info: <-- GET /api/health 2026-01-11T19:58:00.912Z info: --> GET /api/health 200 0ms 2026-01-11T19:58:30.980Z info: <-- GET /api/health 2026-01-11T19:58:30.980Z info: --> GET /api/health 200 0ms 2026-01-11T19:59:01.034Z info: <-- GET /api/health 2026-01-11T19:59:01.035Z info: --> GET /api/health 200 0ms 2026-01-11T19:59:31.111Z info: <-- GET /api/health 2026-01-11T19:59:31.111Z info: --> GET /api/health 200 0ms 2026-01-11T20:00:00.488Z info: [feed] Scheduling feed refreshing jobs ... 2026-01-11T20:00:01.172Z info: <-- GET /api/health 2026-01-11T20:00:01.173Z info: --> GET /api/health 200 1ms 2026-01-11T20:00:31.228Z info: <-- GET /api/health 2026-01-11T20:00:31.229Z info: --> GET /api/health 200 0ms 2026-01-11T20:01:01.295Z info: <-- GET /api/health 2026-01-11T20:01:01.295Z info: --> GET /api/health 200 0ms 2026-01-11T20:01:31.363Z info: <-- GET /api/health 2026-01-11T20:01:31.364Z info: --> GET /api/health 200 1ms 2026-01-11T20:02:01.427Z info: <-- GET /api/health 2026-01-11T20:02:01.427Z info: --> GET /api/health 200 0ms 2026-01-11T20:02:31.479Z info: <-- GET /api/health 2026-01-11T20:02:31.480Z info: --> GET /api/health 200 1ms 2026-01-11T20:03:01.535Z info: <-- GET /api/health 2026-01-11T20:03:01.536Z info: --> GET /api/health 200 1ms 2026-01-11T20:03:31.586Z info: <-- GET /api/health 2026-01-11T20:03:31.587Z info: --> GET /api/health 200 1ms 2026-01-11T20:04:01.633Z info: <-- GET /api/health 2026-01-11T20:04:01.634Z info: --> GET /api/health 200 1ms 2026-01-11T20:04:31.693Z info: <-- GET /api/health 2026-01-11T20:04:31.694Z info: --> GET /api/health 200 1ms 2026-01-11T20:05:01.755Z info: <-- GET /api/health 2026-01-11T20:05:01.755Z info: --> GET /api/health 200 0ms 2026-01-11T20:05:31.820Z info: <-- GET /api/health 2026-01-11T20:05:31.821Z info: --> GET /api/health 200 1ms 2026-01-11T20:06:01.883Z info: <-- GET /api/health 2026-01-11T20:06:01.883Z info: --> GET /api/health 200 0ms 2026-01-11T20:06:31.938Z info: <-- GET /api/health 2026-01-11T20:06:31.938Z info: --> GET /api/health 200 0ms 2026-01-11T20:07:01.991Z info: <-- GET /api/health 2026-01-11T20:07:01.992Z info: --> GET /api/health 200 1ms 2026-01-11T20:07:32.059Z info: <-- GET /api/health 2026-01-11T20:07:32.060Z info: --> GET /api/health 200 1ms 2026-01-11T20:08:02.131Z info: <-- GET /api/health 2026-01-11T20:08:02.132Z info: --> GET /api/health 200 1ms 2026-01-11T20:08:32.192Z info: <-- GET /api/health 2026-01-11T20:08:32.195Z info: --> GET /api/health 200 2ms 2026-01-11T20:09:02.263Z info: <-- GET /api/health 2026-01-11T20:09:02.264Z info: --> GET /api/health 200 1ms 2026-01-11T20:09:32.322Z info: <-- GET /api/health 2026-01-11T20:09:32.322Z info: --> GET /api/health 200 0ms 2026-01-11T20:10:02.373Z info: <-- GET /api/health 2026-01-11T20:10:02.374Z info: --> GET /api/health 200 0ms 2026-01-11T20:10:32.437Z info: <-- GET /api/health 2026-01-11T20:10:32.438Z info: --> GET /api/health 200 0ms 2026-01-11T20:11:02.507Z info: <-- GET /api/health 2026-01-11T20:11:02.508Z info: --> GET /api/health 200 1ms 2026-01-11T20:11:32.572Z info: <-- GET /api/health 2026-01-11T20:11:32.572Z info: --> GET /api/health 200 0ms 2026-01-11T20:12:02.628Z info: <-- GET /api/health 2026-01-11T20:12:02.629Z info: --> GET /api/health 200 1ms 2026-01-11T20:12:32.686Z info: <-- GET /api/health 2026-01-11T20:12:32.688Z info: --> GET /api/health 200 1ms 2026-01-11T20:13:02.752Z info: <-- GET /api/health 2026-01-11T20:13:02.752Z info: --> GET /api/health 200 0ms 2026-01-11T20:13:32.819Z info: <-- GET /api/health 2026-01-11T20:13:32.819Z info: --> GET /api/health 200 0ms 2026-01-11T20:14:02.890Z info: <-- GET /api/health 2026-01-11T20:14:02.891Z info: --> GET /api/health 200 1ms 2026-01-11T20:14:32.947Z info: <-- GET /api/health 2026-01-11T20:14:32.948Z info: --> GET /api/health 200 0ms 2026-01-11T20:15:02.999Z info: <-- GET /api/health 2026-01-11T20:15:02.999Z info: --> GET /api/health 200 0ms 2026-01-11T20:15:33.054Z info: <-- GET /api/health 2026-01-11T20:15:33.054Z info: --> GET /api/health 200 0ms 2026-01-11T20:16:03.119Z info: <-- GET /api/health 2026-01-11T20:16:03.121Z info: --> GET /api/health 200 1ms 2026-01-11T20:16:33.175Z info: <-- GET /api/health 2026-01-11T20:16:33.176Z info: --> GET /api/health 200 1ms 2026-01-11T20:17:03.247Z info: <-- GET /api/health 2026-01-11T20:17:03.247Z info: --> GET /api/health 200 0ms 2026-01-11T20:17:33.304Z info: <-- GET /api/health 2026-01-11T20:17:33.305Z info: --> GET /api/health 200 1ms 2026-01-11T20:18:03.366Z info: <-- GET /api/health 2026-01-11T20:18:03.367Z info: --> GET /api/health 200 1ms 2026-01-11T20:18:33.423Z info: <-- GET /api/health 2026-01-11T20:18:33.424Z info: --> GET /api/health 200 1ms 2026-01-11T20:19:03.494Z info: <-- GET /api/health 2026-01-11T20:19:03.495Z info: --> GET /api/health 200 1ms 2026-01-11T20:19:33.542Z info: <-- GET /api/health 2026-01-11T20:19:33.543Z info: --> GET /api/health 200 1ms 2026-01-11T20:20:03.628Z info: <-- GET /api/health 2026-01-11T20:20:03.629Z info: --> GET /api/health 200 1ms 2026-01-11T20:20:33.669Z info: <-- GET /api/health 2026-01-11T20:20:33.669Z info: --> GET /api/health 200 0ms 2026-01-11T20:21:03.747Z info: <-- GET /api/health 2026-01-11T20:21:03.748Z info: --> GET /api/health 200 1ms 2026-01-11T20:21:33.799Z info: <-- GET /api/health 2026-01-11T20:21:33.799Z info: --> GET /api/health 200 0ms 2026-01-11T20:22:03.841Z info: <-- GET /api/health 2026-01-11T20:22:03.841Z info: --> GET /api/health 200 0ms 2026-01-11T20:22:33.919Z info: <-- GET /api/health 2026-01-11T20:22:33.920Z info: --> GET /api/health 200 0ms 2026-01-11T20:23:03.991Z info: <-- GET /api/health 2026-01-11T20:23:03.991Z info: --> GET /api/health 200 0ms 2026-01-11T20:23:34.047Z info: <-- GET /api/health 2026-01-11T20:23:34.048Z info: --> GET /api/health 200 1ms 2026-01-11T20:24:04.104Z info: <-- GET /api/health 2026-01-11T20:24:04.105Z info: --> GET /api/health 200 0ms 2026-01-11T20:24:34.158Z info: <-- GET /api/health 2026-01-11T20:24:34.158Z info: --> GET /api/health 200 0ms 2026-01-11T20:25:04.219Z info: <-- GET /api/health 2026-01-11T20:25:04.220Z info: --> GET /api/health 200 0ms 2026-01-11T20:25:34.275Z info: <-- GET /api/health 2026-01-11T20:25:34.276Z info: --> GET /api/health 200 0ms 2026-01-11T20:26:04.335Z info: <-- GET /api/health 2026-01-11T20:26:04.336Z info: --> GET /api/health 200 1ms 2026-01-11T20:26:34.411Z info: <-- GET /api/health 2026-01-11T20:26:34.412Z info: --> GET /api/health 200 1ms 2026-01-11T20:27:04.479Z info: <-- GET /api/health 2026-01-11T20:27:04.480Z info: --> GET /api/health 200 0ms 2026-01-11T20:27:34.541Z info: <-- GET /api/health 2026-01-11T20:27:34.543Z info: --> GET /api/health 200 2ms 2026-01-11T20:28:04.598Z info: <-- GET /api/health 2026-01-11T20:28:04.598Z info: --> GET /api/health 200 0ms 2026-01-11T20:28:34.655Z info: <-- GET /api/health 2026-01-11T20:28:34.656Z info: --> GET /api/health 200 0ms 2026-01-11T20:29:04.716Z info: <-- GET /api/health 2026-01-11T20:29:04.716Z info: --> GET /api/health 200 0ms 2026-01-11T20:29:34.776Z info: <-- GET /api/health 2026-01-11T20:29:34.776Z info: --> GET /api/health 200 0ms 2026-01-11T20:30:04.837Z info: <-- GET /api/health 2026-01-11T20:30:04.837Z info: --> GET /api/health 200 0ms 2026-01-11T20:30:34.909Z info: <-- GET /api/health 2026-01-11T20:30:34.910Z info: --> GET /api/health 200 0ms 2026-01-11T20:31:04.978Z info: <-- GET /api/health 2026-01-11T20:31:04.979Z info: --> GET /api/health 200 1ms 2026-01-11T20:31:35.034Z info: <-- GET /api/health 2026-01-11T20:31:35.035Z info: --> GET /api/health 200 1ms 2026-01-11T20:32:05.099Z info: <-- GET /api/health 2026-01-11T20:32:05.100Z info: --> GET /api/health 200 1ms 2026-01-11T20:32:35.154Z info: <-- GET /api/health 2026-01-11T20:32:35.154Z info: --> GET /api/health 200 0ms 2026-01-11T20:33:05.216Z info: <-- GET /api/health 2026-01-11T20:33:05.217Z info: --> GET /api/health 200 1ms 2026-01-11T20:33:35.257Z info: <-- GET /api/health 2026-01-11T20:33:35.258Z info: --> GET /api/health 200 1ms 2026-01-11T20:34:05.315Z info: <-- GET /api/health 2026-01-11T20:34:05.315Z info: --> GET /api/health 200 0ms 2026-01-11T20:34:35.374Z info: <-- GET /api/health 2026-01-11T20:34:35.375Z info: --> GET /api/health 200 0ms 2026-01-11T20:35:05.444Z info: <-- GET /api/health 2026-01-11T20:35:05.444Z info: --> GET /api/health 200 0ms 2026-01-11T20:35:35.511Z info: <-- GET /api/health 2026-01-11T20:35:35.512Z info: --> GET /api/health 200 1ms 2026-01-11T20:36:05.579Z info: <-- GET /api/health 2026-01-11T20:36:05.580Z info: --> GET /api/health 200 0ms 2026-01-11T20:36:35.632Z info: <-- GET /api/health 2026-01-11T20:36:35.634Z info: --> GET /api/health 200 2ms 2026-01-11T20:37:05.710Z info: <-- GET /api/health 2026-01-11T20:37:05.711Z info: --> GET /api/health 200 0ms 2026-01-11T20:37:35.779Z info: <-- GET /api/health 2026-01-11T20:37:35.779Z info: --> GET /api/health 200 0ms 2026-01-11T20:38:05.829Z info: <-- GET /api/health 2026-01-11T20:38:05.830Z info: --> GET /api/health 200 1ms 2026-01-11T20:38:35.883Z info: <-- GET /api/health 2026-01-11T20:38:35.884Z info: --> GET /api/health 200 0ms 2026-01-11T20:39:05.951Z info: <-- GET /api/health 2026-01-11T20:39:05.952Z info: --> GET /api/health 200 1ms 2026-01-11T20:39:36.014Z info: <-- GET /api/health 2026-01-11T20:39:36.014Z info: --> GET /api/health 200 0ms 2026-01-11T20:40:06.067Z info: <-- GET /api/health 2026-01-11T20:40:06.067Z info: --> GET /api/health 200 0ms 2026-01-11T20:40:36.119Z info: <-- GET /api/health 2026-01-11T20:40:36.120Z info: --> GET /api/health 200 1ms 2026-01-11T20:41:06.179Z info: <-- GET /api/health 2026-01-11T20:41:06.180Z info: --> GET /api/health 200 1ms 2026-01-11T20:41:36.244Z info: <-- GET /api/health 2026-01-11T20:41:36.246Z info: --> GET /api/health 200 2ms 2026-01-11T20:42:06.310Z info: <-- GET /api/health 2026-01-11T20:42:06.312Z info: --> GET /api/health 200 1ms 2026-01-11T20:42:36.358Z info: <-- GET /api/health 2026-01-11T20:42:36.358Z info: --> GET /api/health 200 0ms 2026-01-11T20:43:06.412Z info: <-- GET /api/health 2026-01-11T20:43:06.413Z info: --> GET /api/health 200 0ms 2026-01-11T20:43:36.464Z info: <-- GET /api/health 2026-01-11T20:43:36.465Z info: --> GET /api/health 200 1ms 2026-01-11T20:44:06.518Z info: <-- GET /api/health 2026-01-11T20:44:06.519Z info: --> GET /api/health 200 0ms 2026-01-11T20:44:36.583Z info: <-- GET /api/health 2026-01-11T20:44:36.583Z info: --> GET /api/health 200 0ms 2026-01-11T20:45:06.644Z info: <-- GET /api/health 2026-01-11T20:45:06.644Z info: --> GET /api/health 200 0ms 2026-01-11T20:45:36.711Z info: <-- GET /api/health 2026-01-11T20:45:36.712Z info: --> GET /api/health 200 1ms 2026-01-11T20:46:06.786Z info: <-- GET /api/health 2026-01-11T20:46:06.787Z info: --> GET /api/health 200 0ms 2026-01-11T20:46:36.840Z info: <-- GET /api/health 2026-01-11T20:46:36.841Z info: --> GET /api/health 200 0ms 2026-01-11T20:47:06.894Z info: <-- GET /api/health 2026-01-11T20:47:06.894Z info: --> GET /api/health 200 0ms 2026-01-11T20:47:36.967Z info: <-- GET /api/health 2026-01-11T20:47:36.967Z info: --> GET /api/health 200 0ms 2026-01-11T20:48:07.022Z info: <-- GET /api/health 2026-01-11T20:48:07.023Z info: --> GET /api/health 200 1ms 2026-01-11T20:48:37.073Z info: <-- GET /api/health 2026-01-11T20:48:37.073Z info: --> GET /api/health 200 0ms 2026-01-11T20:49:07.127Z info: <-- GET /api/health 2026-01-11T20:49:07.128Z info: --> GET /api/health 200 1ms 2026-01-11T20:49:37.191Z info: <-- GET /api/health 2026-01-11T20:49:37.191Z info: --> GET /api/health 200 0ms 2026-01-11T20:50:07.252Z info: <-- GET /api/health 2026-01-11T20:50:07.254Z info: --> GET /api/health 200 1ms 2026-01-11T20:50:37.311Z info: <-- GET /api/health 2026-01-11T20:50:37.312Z info: --> GET /api/health 200 1ms 2026-01-11T20:51:07.371Z info: <-- GET /api/health 2026-01-11T20:51:07.372Z info: --> GET /api/health 200 1ms 2026-01-11T20:51:37.421Z info: <-- GET /api/health 2026-01-11T20:51:37.422Z info: --> GET /api/health 200 1ms 2026-01-11T20:52:07.482Z info: <-- GET /api/health 2026-01-11T20:52:07.483Z info: --> GET /api/health 200 1ms 2026-01-11T20:52:37.534Z info: <-- GET /api/health 2026-01-11T20:52:37.534Z info: --> GET /api/health 200 0ms 2026-01-11T20:53:07.591Z info: <-- GET /api/health 2026-01-11T20:53:07.591Z info: --> GET /api/health 200 0ms 2026-01-11T20:53:37.654Z info: <-- GET /api/health 2026-01-11T20:53:37.655Z info: --> GET /api/health 200 0ms 2026-01-11T20:54:07.714Z info: <-- GET /api/health 2026-01-11T20:54:07.715Z info: --> GET /api/health 200 1ms 2026-01-11T20:54:37.783Z info: <-- GET /api/health 2026-01-11T20:54:37.783Z info: --> GET /api/health 200 0ms 2026-01-11T20:55:07.846Z info: <-- GET /api/health 2026-01-11T20:55:07.847Z info: --> GET /api/health 200 1ms 2026-01-11T20:55:37.895Z info: <-- GET /api/health 2026-01-11T20:55:37.895Z info: --> GET /api/health 200 0ms 2026-01-11T20:56:07.950Z info: <-- GET /api/health 2026-01-11T20:56:07.950Z info: --> GET /api/health 200 0ms 2026-01-11T20:56:38.002Z info: <-- GET /api/health 2026-01-11T20:56:38.003Z info: --> GET /api/health 200 1ms 2026-01-11T20:57:08.070Z info: <-- GET /api/health 2026-01-11T20:57:08.070Z info: --> GET /api/health 200 0ms 2026-01-11T20:57:38.140Z info: <-- GET /api/health 2026-01-11T20:57:38.142Z info: --> GET /api/health 200 2ms 2026-01-11T20:58:08.218Z info: <-- GET /api/health 2026-01-11T20:58:08.219Z info: --> GET /api/health 200 1ms 2026-01-11T20:58:38.277Z info: <-- GET /api/health 2026-01-11T20:58:38.277Z info: --> GET /api/health 200 0ms 2026-01-11T20:59:08.340Z info: <-- GET /api/health 2026-01-11T20:59:08.340Z info: --> GET /api/health 200 0ms 2026-01-11T20:59:38.416Z info: <-- GET /api/health 2026-01-11T20:59:38.416Z info: --> GET /api/health 200 0ms 2026-01-11T21:00:00.190Z info: [feed] Scheduling feed refreshing jobs ... 2026-01-11T21:00:08.456Z info: <-- GET /api/health 2026-01-11T21:00:08.457Z info: --> GET /api/health 200 1ms 2026-01-11T21:00:38.514Z info: <-- GET /api/health 2026-01-11T21:00:38.515Z info: --> GET /api/health 200 1ms 2026-01-11T21:01:08.568Z info: <-- GET /api/health 2026-01-11T21:01:08.569Z info: --> GET /api/health 200 0ms 2026-01-11T21:01:38.636Z info: <-- GET /api/health 2026-01-11T21:01:38.636Z info: --> GET /api/health 200 0ms 2026-01-11T21:02:08.699Z info: <-- GET /api/health 2026-01-11T21:02:08.700Z info: --> GET /api/health 200 0ms 2026-01-11T21:02:38.771Z info: <-- GET /api/health 2026-01-11T21:02:38.771Z info: --> GET /api/health 200 0ms 2026-01-11T21:03:08.826Z info: <-- GET /api/health 2026-01-11T21:03:08.827Z info: --> GET /api/health 200 1ms 2026-01-11T21:03:38.890Z info: <-- GET /api/health 2026-01-11T21:03:38.891Z info: --> GET /api/health 200 1ms 2026-01-11T21:04:08.966Z info: <-- GET /api/health 2026-01-11T21:04:08.967Z info: --> GET /api/health 200 1ms 2026-01-11T21:04:39.018Z info: <-- GET /api/health 2026-01-11T21:04:39.019Z info: --> GET /api/health 200 1ms 2026-01-11T21:05:09.087Z info: <-- GET /api/health 2026-01-11T21:05:09.088Z info: --> GET /api/health 200 1ms 2026-01-11T21:05:39.144Z info: <-- GET /api/health 2026-01-11T21:05:39.145Z info: --> GET /api/health 200 0ms 2026-01-11T21:06:09.199Z info: <-- GET /api/health 2026-01-11T21:06:09.199Z info: --> GET /api/health 200 0ms 2026-01-11T21:06:39.263Z info: <-- GET /api/health 2026-01-11T21:06:39.263Z info: --> GET /api/health 200 0ms 2026-01-11T21:07:09.322Z info: <-- GET /api/health 2026-01-11T21:07:09.322Z info: --> GET /api/health 200 0ms 2026-01-11T21:07:39.390Z info: <-- GET /api/health 2026-01-11T21:07:39.391Z info: --> GET /api/health 200 1ms 2026-01-11T21:08:09.445Z info: <-- GET /api/health 2026-01-11T21:08:09.446Z info: --> GET /api/health 200 1ms 2026-01-11T21:08:39.503Z info: <-- GET /api/health 2026-01-11T21:08:39.504Z info: --> GET /api/health 200 1ms 2026-01-11T21:09:09.557Z info: <-- GET /api/health 2026-01-11T21:09:09.558Z info: --> GET /api/health 200 0ms ```
Author
Owner

@0rokska8 commented on GitHub (Jan 12, 2026):

Also just updated to latest/nightly.

At this point I’ll need to let it run for a few hours again to see whether the memory usage keeps growing or stabilizes.

top:

Image ps -eo pid,comm,rss,vsz: Image

After almost 24 hours, I have to confirm that the behaviour in the nightly is the same as before (I changed now the limit from 4GB to 1GB)

Image Image Image

I would like to help, unfortunately I have no understanding of the node echosystem.

<!-- gh-comment-id:3740023891 --> @0rokska8 commented on GitHub (Jan 12, 2026): > Also just updated to latest/nightly. > > At this point I’ll need to let it run for a few hours again to see whether the memory usage keeps growing or stabilizes. > > top: > > <img alt="Image" width="1628" height="362" src="https://private-user-images.githubusercontent.com/192199482/534384434-7f01648d-c1cb-459b-9179-424996e42145.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NjgyNDM4OTQsIm5iZiI6MTc2ODI0MzU5NCwicGF0aCI6Ii8xOTIxOTk0ODIvNTM0Mzg0NDM0LTdmMDE2NDhkLWMxY2ItNDU5Yi05MTc5LTQyNDk5NmU0MjE0NS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMTEyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDExMlQxODQ2MzRaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kNzg2ZjI1N2I3NzE2MGVjMmY1MWZhYTliYWRjNzA4YzU3NzZkNTNiNDRhYmM0MmY4ZGM5YTNiYWQ5MjRjMjRkJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.vGcPd8OxNCcG4UmJCOC5TgXbKw7E8CkiMZeRC0wkmes"> > ps -eo pid,comm,rss,vsz: > > <img alt="Image" width="442" height="289" src="https://private-user-images.githubusercontent.com/192199482/534384440-6b7f340a-8abd-4049-bdf0-d07ed75fa4d3.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NjgyNDM4OTQsIm5iZiI6MTc2ODI0MzU5NCwicGF0aCI6Ii8xOTIxOTk0ODIvNTM0Mzg0NDQwLTZiN2YzNDBhLThhYmQtNDA0OS1iZGYwLWQwN2VkNzVmYTRkMy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwMTEyJTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDExMlQxODQ2MzRaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1jZDU0NzI0N2VkZWUxNjY5MmVjMTI1M2JkODYwMDBjNjkwYzg2N2YyN2U5Mjc5OWZlMjUyMGQ2ZTU2NDE3MGRmJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.YXkfrx3BDF1LruWUV8ibZLiXGvEjnCc7MylF7P4mFOw"> After almost 24 hours, I have to confirm that the behaviour in the nightly is the same as before (I changed now the limit from 4GB to 1GB) <img width="1332" height="286" alt="Image" src="https://github.com/user-attachments/assets/0834187e-22ee-43b2-acd9-bb0daea231ca" /> <img width="1626" height="358" alt="Image" src="https://github.com/user-attachments/assets/fbaec15f-7b6d-49b3-ab19-64967b5f6dd6" /> <img width="424" height="291" alt="Image" src="https://github.com/user-attachments/assets/9d34c790-0d5f-4b03-a8ac-eb4987d8e29f" /> I would like to help, unfortunately I have no understanding of the node echosystem.
Author
Owner

@MohamedBassem commented on GitHub (Jan 13, 2026):

712M is within what I'd call fine (there are other ways to mitigate that one, mostly tuning GC). I'm mostly interested in debugging situations where memory grows beyond 2GB because that's what is not normal. Anyone who has seen usage of 2GB+ can you share a redacted version of your env file? I tried a fresh install on proxmox and regardless of how hard I push it (with default env), couldn't get it to grow past 1.5GB, and left it over night and it stabilized at 1GB.

<!-- gh-comment-id:3743297197 --> @MohamedBassem commented on GitHub (Jan 13, 2026): 712M is within what I'd call fine (there are other ways to mitigate that one, mostly tuning GC). I'm mostly interested in debugging situations where memory grows beyond 2GB because that's what is not normal. Anyone who has seen usage of 2GB+ can you share a redacted version of your env file? I tried a fresh install on proxmox and regardless of how hard I push it (with default env), couldn't get it to grow past 1.5GB, and left it over night and it stabilized at 1GB.
Author
Owner

@Nanianmichaels commented on GitHub (Jan 13, 2026):

I do not run with an ENV file, I run Karakeep with ENV parameters directly on the Compose file.

So here's a copy of the Compose file, with redactions where relevant:


services:
  web:
    container_name: hoarder_web
    image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-latest}
    restart: unless-stopped
    volumes:
      - /dockerdata/hoarder/data:/data
    ports:
      - 3100:3000
    environment:
      NEXTAUTH_SECRET: [redacted]
      MEILI_MASTER_KEY: [redacted]
      MEILI_ADDR: http://meilisearch:7700
      DATA_DIR: /data
      DISABLE_SIGNUPS: true
      BROWSER_WEB_URL: http://chrome:9222
      OLLAMA_BASE_URL: http://192.168.2.18:30068
      INFERENCE_TEXT_MODEL: mistral:7b
      INFERENCE_IMAGE_MODEL: llava:7b
      SMTP_HOST: [redacted]
      SMTP_PORT: 587
      #SMTP_SECURE: true
      SMTP_USER: [redacted]
      SMTP_PASSWORD: [redacted]
      SMTP_FROM: [redacted]

  chrome:
    container_name: hoarder_crome
    image: gcr.io/zenika-hub/alpine-chrome:124
    restart: unless-stopped
    command:
      - --no-sandbox
      - --disable-gpu
      - --disable-software-rasterizer
      - --disable-dev-shm-usage
      - --remote-debugging-address=0.0.0.0
      - --remote-debugging-port=9222
      - --hide-scrollbars

  meilisearch:
    container_name: hoarder_meilisearch
    image: getmeili/meilisearch:v1.13.3
    restart: unless-stopped
    environment:
      NEXTAUTH_SECRET: [redacted]
      MEILI_MASTER_KEY: [redacted]
      MEILI_NO_ANALYTICS: true
    volumes:
      - /dockerdata/hoarder/meilisearch:/meili_data

Hope this helps with debugging!

<!-- gh-comment-id:3743795507 --> @Nanianmichaels commented on GitHub (Jan 13, 2026): I do not run with an ENV file, I run Karakeep with ENV parameters directly on the Compose file. So here's a copy of the Compose file, with redactions where relevant: ``` services: web: container_name: hoarder_web image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-latest} restart: unless-stopped volumes: - /dockerdata/hoarder/data:/data ports: - 3100:3000 environment: NEXTAUTH_SECRET: [redacted] MEILI_MASTER_KEY: [redacted] MEILI_ADDR: http://meilisearch:7700 DATA_DIR: /data DISABLE_SIGNUPS: true BROWSER_WEB_URL: http://chrome:9222 OLLAMA_BASE_URL: http://192.168.2.18:30068 INFERENCE_TEXT_MODEL: mistral:7b INFERENCE_IMAGE_MODEL: llava:7b SMTP_HOST: [redacted] SMTP_PORT: 587 #SMTP_SECURE: true SMTP_USER: [redacted] SMTP_PASSWORD: [redacted] SMTP_FROM: [redacted] chrome: container_name: hoarder_crome image: gcr.io/zenika-hub/alpine-chrome:124 restart: unless-stopped command: - --no-sandbox - --disable-gpu - --disable-software-rasterizer - --disable-dev-shm-usage - --remote-debugging-address=0.0.0.0 - --remote-debugging-port=9222 - --hide-scrollbars meilisearch: container_name: hoarder_meilisearch image: getmeili/meilisearch:v1.13.3 restart: unless-stopped environment: NEXTAUTH_SECRET: [redacted] MEILI_MASTER_KEY: [redacted] MEILI_NO_ANALYTICS: true volumes: - /dockerdata/hoarder/meilisearch:/meili_data ``` Hope this helps with debugging!
Author
Owner

@jesusfer commented on GitHub (Jan 13, 2026):

I can also reproduce the issue with 0.30.0, though I have not tested the nightly.

These are my env vars (secret stuff removed):

DATA_DIR=/data
BROWSER_WEB_URL=http://chrome:9222
MEILI_ADDR=http://meilisearch:7700
NEXTAUTH_URL=

LOG_LEVEL=warning

NEXTAUTH_SECRET=

MEILI_MASTER_KEY=
MEILI_NO_ANALYTICS=true
OPENAI_API_KEY=

DISABLE_SIGNUPS=true
DISABLE_PASSWORD_AUTH=true

OAUTH_PROVIDER_NAME=Google
OAUTH_WELLKNOWN_URL=https://accounts.google.com/.well-known/openid-configuration
OAUTH_CLIENT_ID=
OAUTH_CLIENT_SECRET=

These are my stats right now.

Image Image Image
<!-- gh-comment-id:3744377879 --> @jesusfer commented on GitHub (Jan 13, 2026): I can also reproduce the issue with 0.30.0, though I have not tested the nightly. These are my env vars (secret stuff removed): ```env DATA_DIR=/data BROWSER_WEB_URL=http://chrome:9222 MEILI_ADDR=http://meilisearch:7700 NEXTAUTH_URL= LOG_LEVEL=warning NEXTAUTH_SECRET= MEILI_MASTER_KEY= MEILI_NO_ANALYTICS=true OPENAI_API_KEY= DISABLE_SIGNUPS=true DISABLE_PASSWORD_AUTH=true OAUTH_PROVIDER_NAME=Google OAUTH_WELLKNOWN_URL=https://accounts.google.com/.well-known/openid-configuration OAUTH_CLIENT_ID= OAUTH_CLIENT_SECRET= ``` These are my stats right now. <img width="246" height="263" alt="Image" src="https://github.com/user-attachments/assets/2c90fa54-e499-4c6e-827b-8121fa6504f6" /> <img width="690" height="278" alt="Image" src="https://github.com/user-attachments/assets/31706b98-8ff2-4983-a328-dc55b2178724" /> <img width="707" height="297" alt="Image" src="https://github.com/user-attachments/assets/f7100637-8308-43be-bb4c-92da0d1f626d" />
Author
Owner

@0rokska8 commented on GitHub (Jan 13, 2026):

712M is within what I'd call fine (there are other ways to mitigate that one, mostly tuning GC). I'm mostly interested in debugging situations where memory grows beyond 2GB because that's what is not normal. Anyone who has seen usage of 2GB+ can you share a redacted version of your env file? I tried a fresh install on proxmox and regardless of how hard I push it (with default env), couldn't get it to grow past 1.5GB, and left it over night and it stabilized at 1GB.

I think there is a misunderstanding. As I mentioned, I limited the RAM to 1GB, but as you see on the screenshot it always fill up until the GB was reached and then it started again at around 200MB. until it reaches the GB. It grows about 500MB per hour. I set the RAM limit to 8GB at midday and now we are at 3.3GB, continuously growing.

Image

Image

Image

And the content of my .env file:

DATA_DIR=/data
NEXTAUTH_SECRET=[redacted]
MEILI_MASTER_KEY=[redacted]
OAUTH_WELLKNOWN_URL=[redacted]
OAUTH_CLIENT_SECRET=[redacted]
OAUTH_CLIENT_ID=[redacted]
OAUTH_PROVIDER_NAME=Pocket-ID
NEXTAUTH_URL=[redacted]
DISABLE_PASSWORD_AUTH=true
OAUTH_ALLOW_DANGEROUS_EMAIL_ACCOUNT_LINKING=true
MEILI_ADDR=http://meilisearch:7700
BROWSER_WEB_URL=http://chrome:9222
MEILI_NO_ANALYTICS=true
OPENAI_BASE_URL: https://api.perplexity.ai
OPENAI_API_KEY: [redacted]
INFERENCE_TEXT_MODEL: sonar-pro
INFERENCE_IMAGE_MODEL: sonar-pro
CRAWLER_STORE_PDF=true
<!-- gh-comment-id:3745888258 --> @0rokska8 commented on GitHub (Jan 13, 2026): > 712M is within what I'd call fine (there are other ways to mitigate that one, mostly tuning GC). I'm mostly interested in debugging situations where memory grows beyond 2GB because that's what is not normal. Anyone who has seen usage of 2GB+ can you share a redacted version of your env file? I tried a fresh install on proxmox and regardless of how hard I push it (with default env), couldn't get it to grow past 1.5GB, and left it over night and it stabilized at 1GB. I think there is a misunderstanding. As I mentioned, I limited the RAM to 1GB, but as you see on the screenshot it always fill up until the GB was reached and then it started again at around 200MB. until it reaches the GB. It grows about 500MB per hour. I set the RAM limit to 8GB at midday and now we are at 3.3GB, continuously growing. ![Image](https://github.com/user-attachments/assets/a20f8daf-bacd-419e-b76f-cf03118c7c96) ![Image](https://github.com/user-attachments/assets/de160ab0-698c-42b2-9a14-551e26951305) ![Image](https://github.com/user-attachments/assets/0fbe10e4-6fab-48d1-874c-fb33becbb50c) And the content of my .env file: ``` DATA_DIR=/data NEXTAUTH_SECRET=[redacted] MEILI_MASTER_KEY=[redacted] OAUTH_WELLKNOWN_URL=[redacted] OAUTH_CLIENT_SECRET=[redacted] OAUTH_CLIENT_ID=[redacted] OAUTH_PROVIDER_NAME=Pocket-ID NEXTAUTH_URL=[redacted] DISABLE_PASSWORD_AUTH=true OAUTH_ALLOW_DANGEROUS_EMAIL_ACCOUNT_LINKING=true MEILI_ADDR=http://meilisearch:7700 BROWSER_WEB_URL=http://chrome:9222 MEILI_NO_ANALYTICS=true OPENAI_BASE_URL: https://api.perplexity.ai OPENAI_API_KEY: [redacted] INFERENCE_TEXT_MODEL: sonar-pro INFERENCE_IMAGE_MODEL: sonar-pro CRAWLER_STORE_PDF=true ```
Author
Owner

@MohamedBassem commented on GitHub (Jan 14, 2026):

Wow those numbers are crazy. Ok, I'll try to repro one more time, with a fresh installation using docker this time (instead of proxmox). If it doesn't repro, I can start providing some scripts for you guys to help get some more debugging info.

<!-- gh-comment-id:3748698353 --> @MohamedBassem commented on GitHub (Jan 14, 2026): Wow those numbers are crazy. Ok, I'll try to repro one more time, with a fresh installation using docker this time (instead of proxmox). If it doesn't repro, I can start providing some scripts for you guys to help get some more debugging info.
Author
Owner

@MohamedBassem commented on GitHub (Jan 14, 2026):

Folks, I've created a new discord channel here to debug this further with faster comms. Please join if you're impacted and willing to help: https://discord.com/channels/1223681308962721802/1460952880516432008

Also, I've heard multiple mentions of Pangolin here. Is anyone impacted (3GB+) that is NOT using Pangolin as a reverse proxy in front of Karakeep?

<!-- gh-comment-id:3749024721 --> @MohamedBassem commented on GitHub (Jan 14, 2026): Folks, I've created a new discord channel here to debug this further with faster comms. Please join if you're impacted and willing to help: https://discord.com/channels/1223681308962721802/1460952880516432008 Also, I've heard multiple mentions of Pangolin here. Is anyone impacted (3GB+) that is NOT using Pangolin as a reverse proxy in front of Karakeep?
Author
Owner

@Nanianmichaels commented on GitHub (Jan 14, 2026):

For some reason, that channel doesn't open for me on Discord. Do I need to be in the server beforehand? If so, I'd appreciate a link.

Also, I am indeed running Karakeep behind Pangolin, too.

<!-- gh-comment-id:3749141610 --> @Nanianmichaels commented on GitHub (Jan 14, 2026): For some reason, that channel doesn't open for me on Discord. Do I need to be in the server beforehand? If so, I'd appreciate a link. Also, I am indeed running Karakeep behind Pangolin, too.
Author
Owner

@MohamedBassem commented on GitHub (Jan 14, 2026):

This link should work: https://discord.gg/KqvDactC

<!-- gh-comment-id:3749218803 --> @MohamedBassem commented on GitHub (Jan 14, 2026): This link should work: https://discord.gg/KqvDactC
Author
Owner

@MohamedBassem commented on GitHub (Jan 19, 2026):

With the help of few folks on discord, we've confirmed that pangolin is the culprit and disabling it stablizes the memory. So this issue is impacting only pangolin users.

Now that we've narrowed it down, I'll try to repro and rootcause to release a fix.

Huge thanks to @Nanianmichaels and @kennyHH for the help in debugging this and reporting the results back.

<!-- gh-comment-id:3769723650 --> @MohamedBassem commented on GitHub (Jan 19, 2026): With the help of few folks on discord, we've confirmed that pangolin is the culprit and disabling it stablizes the memory. So this issue is impacting only pangolin users. Now that we've narrowed it down, I'll try to repro and rootcause to release a fix. Huge thanks to @Nanianmichaels and @kennyHH for the help in debugging this and reporting the results back.
Author
Owner

@msylw commented on GitHub (Jan 21, 2026):

Also, I've heard multiple mentions of Pangolin here. Is anyone impacted (3GB+) that is NOT using Pangolin as a reverse proxy in front of Karakeep?

Just found this bug after noticing this happening to me. Running in docker on ubuntu 25.10.

I do NOT use pangolin.
But I DO use traefik.

<!-- gh-comment-id:3779125760 --> @msylw commented on GitHub (Jan 21, 2026): > Also, I've heard multiple mentions of Pangolin here. Is anyone impacted (3GB+) that is NOT using Pangolin as a reverse proxy in front of Karakeep? Just found this bug after noticing this happening to me. Running in docker on ubuntu 25.10. I do NOT use pangolin. But I DO use traefik.
Author
Owner

@ne-bknn commented on GitHub (Jan 23, 2026):

Hi! I'm on docker running on arch linux, updated to 0.30.0 a few days ago and have the same problem -

Image

I do not use pangolin. In my lab I use authelia. Karakeep is behind caddy, but no oidc/forward auth, authelia is not yet configured for it. Just karakeep's local auth.

The thing is, I updated on 01/16, but memory started to leak on 01/17. On 01/17 I enabled lab-wide blackbox exporter prober that constantly GETs /. Disabled it for karakeep, waiting for the results.

<!-- gh-comment-id:3789591665 --> @ne-bknn commented on GitHub (Jan 23, 2026): Hi! I'm on docker running on arch linux, updated to 0.30.0 a few days ago and have the same problem - <img width="1504" height="367" alt="Image" src="https://github.com/user-attachments/assets/bae3594e-589e-472c-bfa0-a27375f56ea1" /> I do not use pangolin. In my lab I use authelia. Karakeep is behind caddy, but no oidc/forward auth, authelia is not yet configured for it. Just karakeep's local auth. The thing is, I updated on 01/16, but memory started to leak on 01/17. On 01/17 I enabled lab-wide blackbox exporter prober that constantly GETs `/`. Disabled it for karakeep, waiting for the results.
Author
Owner

@MohamedBassem commented on GitHub (Jan 23, 2026):

@ne-bknn yes, our current understanding is that it's those heartbeats from pangolin or other services (such as blackbox exporter) that trigger the leak. We believe we have a good understanding of the problem and are working on a fix.

<!-- gh-comment-id:3789635985 --> @MohamedBassem commented on GitHub (Jan 23, 2026): @ne-bknn yes, our current understanding is that it's those heartbeats from pangolin or other services (such as blackbox exporter) that trigger the leak. We believe we have a good understanding of the problem and are working on a fix.
Author
Owner

@nerdware-timmmi commented on GitHub (Feb 9, 2026):

I would also like to present my setup and Grafana metrics here again, and I am looking forward to the fix.

  • Traefik as Ingress Controller and reverse proxy
  • No readiness, livenessProbe etc
  • BlackboxProbe which probes the root url of my instance which is secured by sso and pocketid
Image
<!-- gh-comment-id:3872975842 --> @nerdware-timmmi commented on GitHub (Feb 9, 2026): I would also like to present my setup and Grafana metrics here again, and I am looking forward to the fix. - Traefik as Ingress Controller and reverse proxy - No readiness, livenessProbe etc - BlackboxProbe which probes the root url of my instance which is secured by sso and pocketid <img width="2050" height="260" alt="Image" src="https://github.com/user-attachments/assets/590b3cf5-3605-4331-a3a1-9151db729641" />
Author
Owner

@Nanianmichaels commented on GitHub (Feb 9, 2026):

You might want to visit the Discord server's discussion thread, to see if the devs need extra information from you, since it appears to be the same presentation, so it might be another way that the bug is triggered.

<!-- gh-comment-id:3874049856 --> @Nanianmichaels commented on GitHub (Feb 9, 2026): You might want to visit the Discord server's discussion thread, to see if the devs need extra information from you, since it appears to be the same presentation, so it might be another way that the bug is triggered.
Author
Owner

@nerdware-timmmi commented on GitHub (Feb 10, 2026):

You might want to visit the Discord server's discussion thread, to see if the devs need extra information from you, since it appears to be the same presentation, so it might be another way that the bug is triggered.

But the discord link isn't working anymore :-/

<!-- gh-comment-id:3876013770 --> @nerdware-timmmi commented on GitHub (Feb 10, 2026): > You might want to visit the Discord server's discussion thread, to see if the devs need extra information from you, since it appears to be the same presentation, so it might be another way that the bug is triggered. But the discord link isn't working anymore :-/
Author
Owner

@Nanianmichaels commented on GitHub (Feb 10, 2026):

I got you: https://discord.gg/mJWfNyqW

<!-- gh-comment-id:3876121317 --> @Nanianmichaels commented on GitHub (Feb 10, 2026): I got you: https://discord.gg/mJWfNyqW
Author
Owner

@Kinson261 commented on GitHub (Feb 10, 2026):

I encountered this issue as well, having karakeep behing Pangolin. Up to 7Gb used by karakeep alone.

Image

From the discord link, a temporary fix is to disable the health check in pangolin.

<!-- gh-comment-id:3876369306 --> @Kinson261 commented on GitHub (Feb 10, 2026): I encountered this issue as well, having karakeep behing Pangolin. Up to 7Gb used by karakeep alone. <img width="2103" height="590" alt="Image" src="https://github.com/user-attachments/assets/22202b6a-2540-487d-87b0-b9287902ed7f" /> From the discord link, a temporary fix is to disable the health check in pangolin.
Author
Owner

@momonator25 commented on GitHub (Feb 10, 2026):

I guess this is not related to Pangolin itself as I had the same behavior with my own docker healthcheck for the karakeep container:

image: ghcr.io/karakeep-app/karakeep:0.30.0
healthcheck:
    test: wget --spider -q http://127.0.0.1:${INTERNAL_PORT}  || exit 1
    start_period: 30s

After removing it yesterday evening (09.02.26) the memory usage seems to be stable at around 500MB (which still is a bit for an idling app, doing only some background tasks)

Image

I still have Uptime Kuma http healthchecks in 30s intervals which I disabled now, I will watch the memory usage and will report here again.

  • Starting at 280MB 10.02.26 11:41 after restarting the container
<!-- gh-comment-id:3876782759 --> @momonator25 commented on GitHub (Feb 10, 2026): I guess this is not related to Pangolin itself as I had the same behavior with my own docker healthcheck for the karakeep container: ```yaml image: ghcr.io/karakeep-app/karakeep:0.30.0 healthcheck: test: wget --spider -q http://127.0.0.1:${INTERNAL_PORT} || exit 1 start_period: 30s ``` After removing it yesterday evening (09.02.26) the memory usage seems to be stable at around 500MB (which still is a bit for an idling app, doing only some background tasks) <img width="1868" height="840" alt="Image" src="https://github.com/user-attachments/assets/a6a513bd-9f7c-4a7d-8f16-7b48d8ecb785" /> I still have Uptime Kuma http healthchecks in 30s intervals which I disabled now, I will watch the memory usage and will report here again. - Starting at 280MB 10.02.26 11:41 after restarting the container
Author
Owner

@Nanianmichaels commented on GitHub (Feb 10, 2026):

Apparently the memory leak can be caused by any healthchecks, not just Pangolin.

At least that's what I get from this reply earlier in the thread:

https://github.com/karakeep-app/karakeep/issues/2344#issuecomment-3789635985

<!-- gh-comment-id:3877041234 --> @Nanianmichaels commented on GitHub (Feb 10, 2026): Apparently the memory leak can be caused by any healthchecks, not just Pangolin. At least that's what I get from this reply earlier in the thread: https://github.com/karakeep-app/karakeep/issues/2344#issuecomment-3789635985
Author
Owner

@momonator25 commented on GitHub (Feb 10, 2026):

Apparently the memory leak can be caused by any healthchecks, not just Pangolin.

At least that's what I get from this reply earlier in the thread:

#2344 (comment)

Oh yes sorry I missed that comment..

<!-- gh-comment-id:3877051658 --> @momonator25 commented on GitHub (Feb 10, 2026): > Apparently the memory leak can be caused by any healthchecks, not just Pangolin. > > At least that's what I get from this reply earlier in the thread: > > [#2344 (comment)](https://github.com/karakeep-app/karakeep/issues/2344#issuecomment-3789635985) Oh yes sorry I missed that comment..
Author
Owner

@macros111 commented on GitHub (Feb 18, 2026):

Same for me. I am on unraid with karakeep, meilisearch and browserless-v2.
I disabled uptime kuma and pangolin health check. I have a fresh instance with 3 bookmarks rigth now and memory usage was at 4gb and rising.
Now after a restart of the memory usage of the karakeep container is down to 400mb.

<!-- gh-comment-id:3918362488 --> @macros111 commented on GitHub (Feb 18, 2026): Same for me. I am on unraid with karakeep, meilisearch and browserless-v2. I disabled uptime kuma and pangolin health check. I have a fresh instance with 3 bookmarks rigth now and memory usage was at 4gb and rising. Now after a restart of the memory usage of the karakeep container is down to 400mb.
Author
Owner

@micahlt commented on GitHub (Feb 18, 2026):

I think this still needs some attention. It makes no sense for me to not be able to monitor Karakeep in any way without it ballooning memory.

<!-- gh-comment-id:3921332639 --> @micahlt commented on GitHub (Feb 18, 2026): I think this still needs some attention. It makes no sense for me to _not_ be able to monitor Karakeep in any way without it ballooning memory.
Author
Owner

@Nanianmichaels commented on GitHub (Feb 18, 2026):

As per the dev's post earlier (https://github.com/karakeep-app/karakeep/issues/2344#issuecomment-3789635985), "We believe we have a good understanding of the problem and are working on a fix."

So this issue is being worked on, and hopefully a new version that addresses it will come out soon.

Meanwhile, disabling monitoring is a workaround until said new version is released. When it will be released? When it's ready.

<!-- gh-comment-id:3923280920 --> @Nanianmichaels commented on GitHub (Feb 18, 2026): As per the dev's post earlier (https://github.com/karakeep-app/karakeep/issues/2344#issuecomment-3789635985), "We believe we have a good understanding of the problem and are working on a fix." So this issue is being worked on, and hopefully a new version that addresses it will come out soon. Meanwhile, disabling monitoring is a workaround until said new version is released. When it will be released? When it's ready.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/karakeep#1422
No description provided.