# Self-host Fly Logs management

**URL:** <https://community.fly.io/t/self-host-fly-logs-management/18303>\
**Category:** Questions / Help\
**Tags:** logs, login-only\
**Created:** [February 19, 2024, 10:09am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303 "2024-02-19T10:09:27Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [February 19, 2024, 10:09am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/1 "2024-02-19T10:09:27Z")

</div>

Does anyone run a self-hosted log manager on [fly.io](http://fly.io)? Something to view, search and manage logs exported from fly log shipper.

---

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [February 19, 2024, 11:58pm UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/2 "2024-02-19T23:58:06Z")

</div>

I’ve been searching but I couldn’t find something lightweight to run within my fly organisation. I think I’ll have to build something custom, and put a basic UI to filter and search without SQL, PromQL or similar language.

I wonder if others will be interested. Maybe I’ll share a video of what I build for my usecase, if there’s enough interests, perhaps open source it.

---

<div class="post-metadata">

**Author:** ![rubys](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/rubys/32/16907_2.png) [@rubys](https://community.fly.io/u/rubys)\
**Post date:** [February 20, 2024, 12:00am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/3 "2024-02-20T00:00:59Z")

</div>

Here’s what I run:

> **[showcase/fly/applications/logger at main · rubys/showcase](https://github.com/rubys/showcase/tree/main/fly/applications/logger)**
>
> Ballroom Dance Showcase Scheduler. Contribute to rubys/showcase development by creating an account on GitHub.

Here is the use case:

> **[Multiple Logs for Resiliency](https://fly.io/blog/redundant-logs/)**
>
> Capturing additional logs -- just in case

---

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [February 20, 2024, 11:34pm UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/4 "2024-02-20T23:34:09Z")

</div>

Thanks 🙂 This clarifies it for me. I was hoping not to have Vector in-between. Now I understand how I can just have my own log shipper.

Is there a specific format for the data that comes from NATS? I see some from the example but I couldn’t find in your code of docs something that expresses the properties/fields available in the NATS message data.  
Also, is the log message always structured? i.e. if the app logs an unstructured vs structured log message, does your NATS service convert those to structured log message and pass it to the clients?

---

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [February 24, 2024, 12:03am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/5 "2024-02-24T00:03:52Z")

</div>

I tried this and I got the needed info. I’ll be exploring further this weekend

---

<div class="post-metadata">

**Author:** ![rubys](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/rubys/32/16907_2.png) [@rubys](https://community.fly.io/u/rubys)\
**Post date:** [February 24, 2024, 12:38am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/6 "2024-02-24T00:38:55Z")

</div>

Sorry for missing your question, but I wouldn’t of had much to add: like you I tried it, looked at the data, and proceeded from there.

---

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [February 25, 2024, 10:51am UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/7 "2024-02-25T10:51:45Z")

</div>

Is it possible to access the NATS service from my PC? I tried using Wireguard but couldn’t get it to work. I can’t run my code local to test my changes, and I have to deploy to fly to see how it works.

Do you think it’s possible to connect to the NATS server via a Wireguard connection?

---

<div class="post-metadata">

**Author:** ![pmbanugo](https://sea1.discourse-cdn.com/fly1/user_avatar/community.fly.io/pmbanugo/32/24280_2.png) [@pmbanugo](https://community.fly.io/u/pmbanugo)\
**Post date:** [March 2, 2024, 8:25pm UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/8 "2024-03-02T20:25:18Z")

</div>

Thanks to the links here, I built mine and use DuckDB to store the data. If you’re curious to see what I built and using, check out this video [https://youtu.be/sQT9fQsuNUs](https://youtu.be/sQT9fQsuNUs)

If you’re interested, you can get the source code [here](https://software.pmbanugo.me/products/fly-custom-log-manager-v1?promo=FLY_50_1) (with a 50% discount for the first 20 purchase).

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/fly1/original/3X/6/e/6e8955d00cb218e186ebbe3a6ab06fefdce15290.svg) [@system](https://community.fly.io/u/system)\
**Post date:** [March 9, 2024, 8:25pm UTC](https://community.fly.io/t/self-host-fly-logs-management/18303/9 "2024-03-09T20:25:59Z")

</div>

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.
