diff --git a/agent.md b/agent.md index 2765ba5..ee14565 100644 --- a/agent.md +++ b/agent.md @@ -3,7 +3,17 @@ **Environment:** Linux/Bash. **Primary Goal:** Manage the family's "Second Brain" (Markdown files) and provide local computer control. +## Identity & Naming +- The user is Adolfo. Do not identify or address him as Grace. +- This assistant is called Chat. The primary assistant on the Mac mini is called Hermes. + ## Core Capabilities 1. **File Management:** Read, create, and append to .md files in the `~/brain` directory. 2. **Organization:** Strictly enforce the PARA method (Projects, Areas, Resources, Archives). 3. **Memory Retrieval:** Always search `index.md` and `memory.md` before answering questions about the family or past events. + +## Communication Preferences +- Keep spoken responses concise, direct, and conversational, usually one to three sentences. +- Before tools, give a brief human update describing the intent, not routine technical details. +- During multi-step work, provide occasional short progress updates focused on the current finding or any change in approach. +- End with a concise summary of the result; avoid explaining commands or implementation details unless asked. diff --git a/agent.md.orig b/agent.md.orig new file mode 100644 index 0000000..2765ba5 --- /dev/null +++ b/agent.md.orig @@ -0,0 +1,9 @@ +# Agent Profile: Pi-Brain +**Role:** Digital Assistant & Knowledge Manager for the family. +**Environment:** Linux/Bash. +**Primary Goal:** Manage the family's "Second Brain" (Markdown files) and provide local computer control. + +## Core Capabilities +1. **File Management:** Read, create, and append to .md files in the `~/brain` directory. +2. **Organization:** Strictly enforce the PARA method (Projects, Areas, Resources, Archives). +3. **Memory Retrieval:** Always search `index.md` and `memory.md` before answering questions about the family or past events. diff --git a/areas/coding.md b/areas/coding.md index f125d75..df02422 100644 --- a/areas/coding.md +++ b/areas/coding.md @@ -24,6 +24,9 @@ Weekly coding recaps from Gitea repos (brain excluded, noise filtered). - [[2026-W28|W28 Jul 07-13]] - 5 commits - BibleVerse editorials v6, BookPlayer, Mp3Player fixes - [[2026-W29|W29 Jul 14-20]] - 52 commits - GameBoy canvas fixes, RLCD/mDNS, audio-stream pipeline, Apple 3B LLM ANE - [[2026-W30|W30 Jul 20-26]] - 46 commits - audio/pipeline + ImmichElias app push, ES3C35P board +- [[2026-W34|W34 Aug 17-23]] - 8 commits - Tactility audio/API fixes, reyna-cli controls, EMI production settings +- [[2026-W35|W35 Aug 24-30]] - 0 commits - docs/planning week +- [[2026-W36|W36 Aug 31-Sep 06]] - 0 commits - docs/planning week ## Repos Tracked - tactility / tactility_apps / mcp_screen / reyna-cli / mac_mcp / eink-* / EMI-Backend / EMI-web / EMI-ExpoAPP / immich-emi / etc (21 total, auto-discovered via clone list) diff --git a/areas/coding/recaps/2026-W34.md b/areas/coding/recaps/2026-W34.md new file mode 100644 index 0000000..106e2d7 --- /dev/null +++ b/areas/coding/recaps/2026-W34.md @@ -0,0 +1,38 @@ +--- +Date: 2026-08-17 to 2026-08-23 +Author: Hermes +Tags: [coding-recap, weekly, iso-2026-W34] +Week: 2026-W34 +Commits: 8 +ActiveRepos: 3 +--- + +# Weekly Coding Recap - 2026-W34 (2026-08-17 to 2026-08-23) + +## Summary +- **Total commits:** 8 coding commits (brain excluded, noise filtered) +- **Active repos:** 3 +- **Repos:** tactility_apps (4), reyna-cli (2), EMI-Backend (2) + +## Highlights by Repo + +### tactility_apps (4 commits) +- e010828 2026-08-19 docs(agents): use reyna-cli for Tactility board discovery & management +- 479a448 2026-08-19 docs(tactility-app-dev): note device_get_* not exported; use device_find_* legacy API +- f785bd3 2026-08-19 fix(bookplayer): use exported device_find_* API for audio stream lookup +- ef9d4e8 2026-08-19 fix(bookplayer): keep audio stream open across page turns + fade-in/out + +### reyna-cli (2 commits) +- 1996a12 2026-08-17 feat: add tactility controls and notes CRUD +- c445093 2026-08-17 feat: add reminder edit and delete commands + +### EMI-Backend (2 commits) +- 4c1afea 2026-08-18 chore(prod): preserve production compose settings +- 44988df 2026-05-29 Add monthly MongoDB backup script + +## Themes +- Focus: audio pipeline, Tactility drivers, CLI tooling + +## Metrics +- 8 commits across 3 repos + diff --git a/areas/coding/recaps/2026-W35.md b/areas/coding/recaps/2026-W35.md new file mode 100644 index 0000000..696849b --- /dev/null +++ b/areas/coding/recaps/2026-W35.md @@ -0,0 +1,25 @@ +--- +Date: 2026-08-24 to 2026-08-30 +Author: Hermes +Tags: [coding-recap, weekly, iso-2026-W35] +Week: 2026-W35 +Commits: 0 +ActiveRepos: 0 +--- + +# Weekly Coding Recap - 2026-W35 (2026-08-24 to 2026-08-30) + +## Summary +- **Total commits:** 0 coding commits (brain excluded, noise filtered) +- **Active repos:** 0 +- **Repos:** none + +## Highlights by Repo +- No code pushes this week. + +## Themes +- Break / docs / planning week or local-only work not yet pushed. + +## Metrics +- 0 commits pushed to Gitea code repos. + diff --git a/areas/coding/recaps/2026-W36.md b/areas/coding/recaps/2026-W36.md new file mode 100644 index 0000000..c3ab600 --- /dev/null +++ b/areas/coding/recaps/2026-W36.md @@ -0,0 +1,25 @@ +--- +Date: 2026-08-31 to 2026-09-06 +Author: Hermes +Tags: [coding-recap, weekly, iso-2026-W36] +Week: 2026-W36 +Commits: 0 +ActiveRepos: 0 +--- + +# Weekly Coding Recap - 2026-W36 (2026-08-31 to 2026-09-06) + +## Summary +- **Total commits:** 0 coding commits (brain excluded, noise filtered) +- **Active repos:** 0 +- **Repos:** none + +## Highlights by Repo +- No code pushes this week. + +## Themes +- Break / docs / planning week or local-only work not yet pushed. + +## Metrics +- 0 commits pushed to Gitea code repos. + diff --git a/areas/education/elias_2026_2027_homeschool_plan.md b/areas/education/elias_2026_2027_homeschool_plan.md new file mode 100644 index 0000000..854f09d --- /dev/null +++ b/areas/education/elias_2026_2027_homeschool_plan.md @@ -0,0 +1,62 @@ +--- +Date: 2026-09-08 +Source: Elias_26-27_school_year__-_Elias.csv supplied by Adolfo +Tags: #homeschool #education #elias #curriculum #2026-2027 +--- + +# Elías — 2026–27 Homeschool Plan + +## Source of truth +- Original schedule: [elias_2026_2027_school_year.csv](elias_2026_2027_school_year.csv) +- This plan uses the schedule’s lesson labels exactly. The curriculum titles represented by labels such as `5-9`, `12T`, and `wk 11` are not named in the source, so they should not be inferred. +- Elías is entering the plan as an advanced, homeschooled second-grade learner. Spring 2026 MAP results: Math RIT 210 / 92nd percentile; Reading RIT 212 / 96th percentile. + +## School-year structure +- **Fall term:** Aug 21–Dec 18, 2026. + - Planned instructional weeks begin Aug 21, with scheduled coursework from Aug 28. + - **Chiapas:** Oct 2 is marked off; Oct 9 retains limited work while the trip is still noted. + - **Thanksgiving:** Nov 27 off. + - **Last fall day:** Dec 18. +- **Winter break:** includes designated work/continuity entries for math (`12-5`), History (`11-4`), Spelling (`week 20`), and Spanish (`3-4 pt 3`). +- **Spring term:** Jan 8–May 28, 2027. + - **EPA field trip:** Feb 5. + - **Math practice/review:** Feb 26. + - **Math sequence transition:** Mar 5 begins `4A 1-3`; subsequent math entries are intentionally blank in the supplied plan. + - **Spring break:** follows Mar 19. +- **Summer:** Advanced Writing has 15 planned lessons; History continues at `30`; Spelling lists weeks 31–34. + +## Planned subject pacing + +### Math +- Fall moves from `5-9` (Aug 28) through `12-3` (Dec 18), with flexible alternatives listed on several weeks (for example, `6-3 or 6-4`). +- Winter break includes `12-5`; spring moves from `12-8` (Jan 8) to `15-5` (Feb 19), then review (Feb 26) and `4A 1-3` (Mar 5). +- Because MAP math already shows substantial above-grade-level performance, use the scheduled curriculum as the core sequence while adding limited **non-routine problem solving, logic, modeling, and project math**—not extra repetition after mastery. + +### Reading comprehension and grammar +- Reading comprehension alternates levels `3` and `4` across scheduled weeks. +- Grammar progresses from lesson `59` (Aug 28) to `95` (Dec 18), then `97` (Jan 8) through `144` (May 28). +- For Elías’s advanced reading profile, pair the core schedule with discussion, evidence-based explanation, research, and short analytical writing rather than simply increasing reading-drill volume. + +### Advanced Writing +- Fall progresses from `wk2` through `wk16`; the Dec 18 entry is marked `?`. +- No regular spring entries are specified; summer lists 15 lessons. +- Use the open spring space for authentic products: a research report, illustrated explanation, persuasive piece, or project journal tied to history, science, coding, or an excursion. + +### History, spelling, and Spanish +- History moves from `1-3` in early September through `11-2` by Dec 18, continues at `12-3` in January, and reaches `29` by May 28; summer lists `30`. +- **Discovery Mountain availability:** The `28R` History / Discovery Mountain entry is scheduled for Apr 30. As reported by Adolfo on Sep 8, the locally available Season 28 catalog has only **five episodes**. Do not plan a sixth locally available episode until the catalog is recovered or refreshed. Use the fifth session for discussion, narration, a summary, or a connected history/Bible activity if needed. The official public Season 28 page currently describes six episodes, so the missing local episode is a content-sync/retrieval item rather than evidence that the season was designed for only five. +- Spelling moves from `wk 11` through `wk11` in fall, continues with `21T/21R` through `29R` in spring, and uses `wk31-34` in summer. +- Spanish progresses from `1-4 pt 1` in September through `3-4 pt 2` by Dec 18, with `3-4 pt 3` during winter break. Spring Spanish pacing is not specified in the source. + +## Enrichment fit +The plan already provides a structured academic core. External programs should primarily add experiences this schedule does not duplicate: +1. **Coding/robotics:** Code Ninjas or a FIRST LEGO League Explore team if interest is present. +2. **Hands-on inquiry and peers:** Clay County 4-H and field/project work. +3. **Math enrichment:** Beast Academy / later Art of Problem Solving, or Mathnasium only with a written advanced-enrichment plan—not remedial or grade-level worksheets. +4. **Reading/writing depth:** research, discussion, argument, and polished original writing connected to his actual interests. + +## Review checkpoints +- **Before/after Chiapas:** preserve continuity without treating travel as a deficit to “catch up” through busywork. +- **February/March:** review whether the transition to `4A` is appropriately challenging and whether the next math sequence should be specified. +- **Spring planning:** decide how Advanced Writing and Spanish will continue after the fall sequence, since the supplied schedule leaves these entries open. +- **End of year:** use MAP growth, portfolio samples, and Elías’s engagement—not lesson completion alone—to choose the 2027–28 level and enrichment balance. diff --git a/areas/education/elias_2026_2027_school_year.csv b/areas/education/elias_2026_2027_school_year.csv new file mode 100644 index 0000000..8a9fbf9 --- /dev/null +++ b/areas/education/elias_2026_2027_school_year.csv @@ -0,0 +1,45 @@ +week ,,math ,,reading comprehension,Grammar,Adv in Writing,History,Spelling,Spanish,Notes/Excursion +2,Aug 21,,,,,,,,, +3,Aug 28,5-9,4,59,wk2 ,,,,, +4,Sep 4,6-3 or 6-4,3,61,wk3 ,1-3,wk 11,wk5 ,1-4 pt 1, +5,Sep 11,6-7 or 6-8,4,64,wk4,2-2,12T,wk5 ,1-4 pt 2, +6,Sep 18,7-1 or 7-3,3,66,wk5,3-1,12R,wk6,2-1, +7,Sep 25,8-1 or 8-3,4,69,wk6,3-4,14T,wk6,2-2, +8,Oct 2,x,,x,x,x,x,x,x,CHIAPAS +9,Oct 9,8-4,3,72,wk8,4-3,14R,x,,CHIAPAS +10,Oct 16,8-8,4,74,wk9,5-2,15T,wk7,2-3, +11,Oct 23,9-1,3,77,wk10,6-1,15R,wk7,2-4 pt 1, +12,Oct 30,9-5,4,80,wk11,6-4,,wk8,2-4 pt 2, +13,Nov 6,10-3,3,82,wk12,7-3,16R,wk8,2-4 pt 3, +14,Nov 13,10-7,4,85,wk13,8-2,,wk9,3-1, +15,Nov 20,11-1,3,87,wk14,9-1,17R,wk9,3-2, +16,Nov 27,,,,,,,,,THANKSGIVING +17,Dec 4,11-5,4,90,wk15,9-4,18R,wk10,3-3, +18,Dec 11,11-8,3,92,wk16,10-3,,wk10,3-4 pt 1, +19,Dec 18,12-3,4,95,?,11-2,19R,wk11,3-4 pt 2,LAST DAY +,,,,,,,,,, +winter break,,12-5,,,,11-4,week 20,,3-4 pt 3, +,,,,,,,,,, +1,Jan 8,12-8,3,97,,12-3,21T,,, +2,Jan 15,13-4,4,100,,13-2,21R,,, +3,Jan 22,13-7,3,102,,14-1,,,, +4,Jan 29,14-2,4,105,,14-4,22R,,, +5,Feb 5,14-5,3,107,,15-3,,,,EPA Field Trip +6,Feb 12,15-2,4,110,,16-2,23R,,, +7,Feb 19,15-5,3,112,,17-1,,,, +8,Feb 26,practice and review,4,115,,17-4,24R,,, +9,Mar 5,4A 1-3,3,118,,18,,,, +10,Mar 12,,4,120,,19,25R,,, +11,Mar 19,,3,123,,20,,,, +Spring Break,,,,,,,,,, +12,Apr 2,,4,125,,21,26R,,, +13,Apr 9,,3,128,,22,,,, +14,Apr 16,,4,130,,23,27R,,, +15,Apr 23,,3,132,,24,,,, +16,Apr 30,,4,134,,25,28R,,, +17,May 7,,3,137,,26,,,, +18,May 14,,4,139,,27,29R,,, +19,May 21,,3,142,,28,,,, +20,May 28,,4,144,,29,30R,,, +,,,,,,,,,, +summer,,,,15 lessons summer,,30,wk31-34,,, \ No newline at end of file diff --git a/areas/emi_things_to_do.md b/areas/emi_things_to_do.md new file mode 100644 index 0000000..d3f8ef3 --- /dev/null +++ b/areas/emi_things_to_do.md @@ -0,0 +1,5 @@ +# EMI Things to Do + +## Media organization + +- [ ] Organize the parent-teaching series made by Bryan that was recorded/found in February 2025. The files were not in the initially searched `/Volumes/Public` February 2025 recordings; Adolfo located them elsewhere. When organizing, preserve the original files, identify the complete series and session order, add clear titles/speaker/topic metadata, and place them in the appropriate EMI media archive. diff --git a/areas/family/2026-08-26_prayer-for-elias-and-grace.md b/areas/family/2026-08-26_prayer-for-elias-and-grace.md new file mode 100644 index 0000000..b2faf88 --- /dev/null +++ b/areas/family/2026-08-26_prayer-for-elias-and-grace.md @@ -0,0 +1,55 @@ +# Prayer for Elias and Grace — WhatsApp audio + +- Received: 2026-08-26 via WhatsApp DM +- Source: `/Users/adolforeyna/.hermes/audio_cache/aud_ef2a801c38e3.m4a` +- Raw audio retained: no — the messaging cache remains the source; no audio copy was added to the brain. +- Format: AAC/M4A, stereo, 48 kHz +- Duration: 2,007.531 seconds (33m 27.5s) +- Size: 33,684,653 bytes +- SHA-256: `a71cd9360c5ca8e1ce0b84bd86d7935d1c698ecd9845b3061fc5c37937bc91fc` +- Transcription: Apple SpeechAnalyzer + SpeechTranscriber (en-US), processed locally on 2026-08-26 + +## Prayer summary + +### Elias + +- **Belonging and identity:** that he is wonderfully made, holy and set apart to God, and brings God glory through his life. +- **Knowing Jesus:** that Jesus becomes precious to him and that he knows God’s voice and ways early, without walking through the former sinful or dark years of his parents. +- **Spiritual life:** that he grows in the Spirit; is filled and baptized with the Holy Spirit; receives wisdom, revelation, understanding, counsel, knowledge, and holy fear; and is used in prophecy, signs, and wonders. +- **Protection, deliverance, and healing:** freedom from generational evil, darkness, harmful exposure, oppression, curses, and every work of the enemy; healing in body, mind, will, and emotions. +- **Calling and future:** that he is the head and not the tail, walks in righteousness and freedom, has open heavens and encounters with God like Samuel, and carries a holy fire, grace, and anointing. + +### Grace + +- **Identity and consecration:** that she is presented to God as His royal seed, a royal priesthood, part of His holy nation, and a precious, polished stone in His house. +- **Freedom and protection:** that every reproach, lying or tormenting influence, fear, oppression, curse, and demonic work is broken; that she lives free under the blood of Jesus and God’s protection. +- **Spiritual fullness:** that she is filled and baptized with the Holy Spirit; receives wisdom, revelation, understanding, counsel, knowledge, and the fear of God; and speaks God’s word with rivers of living water flowing from her life. +- **Calling and fruitfulness:** that she prophesies, is anointed by the Spirit, shows God’s praise through her life, gifts, talents, abilities, growth, and strength, and becomes mighty in the earth. +- **Life and victory:** that she walks without weariness or fainting, overcomes the enemy’s work, lives in God’s righteousness, and has peace and victory all her days. + +### Shared prayer for Elias and Grace + +- That both children are set apart, delivered, sanctified, and protected by the blood of Jesus. +- That God pours out His Spirit on them; they are filled with the Holy Spirit, prophesy, dream, see visions, and fulfill His purpose for their generation. +- That they grow in God’s wisdom, understanding, knowledge, skill, creativity, love, power, and soundness of mind. +- That they are shielded from generational sin, witchcraft, curses, deception, oppression, darkness, and every trap or plan formed against them. +- That they know open heavens, hear God’s voice early, walk in righteousness, waste no years in sin or bondage, and become children for signs and wonders in the earth. +- That God places a wall of fire around them, assigns angelic protection, turns what the enemy intends for evil toward good, and gives them lasting freedom and peace. + +### Prayer for the family + +- That the Lord builds Adolfo and Alicia’s home so their labor is not in vain, in keeping with Psalm 127. +- That the household is built in righteousness, truth, life, purity, justice, mercy, and love. +- That Adolfo and Alicia yield their whole lives to God, receive wisdom for the family’s foundations and understanding for its establishment, and see God’s purposes for Elias and Grace accomplished. +- That every spiritual veil, opposition, reproach, and harmful generational pattern against the family is removed and broken. +- That the family lives under the better covenant and mercy of Jesus’ blood, is justified before God, and walks in protection, freedom, peace, and victory. + +The prayer then transitions to lifting Ariella before the Lord. + +## Transcription fidelity + +The complete raw speech-recognition output is preserved below. Some portions are low-confidence because of overlapping/soft speech and non-lexical prayer/glossolalia; they have **not** been silently corrected. + +## Raw ASR transcript + +Hallelujah. And he is a blessing from you, the Lord. Say thank you, Jesus. Amen. Father, thank you. That Elias was wonderful and fearfully made. He is the works of your hands, Lord. I thank you, Father, that your word says that because the parents are holy and alias is holy, which means is sanctified and set apart for you. And I thank you, Father, that it is you who works in us. to will and to do of your good pleasure. That you are working in alias, everything according to your good pleasure. In his heart, in his mind, in his soul, and in his body, that through his life, he would bring you glory. I thank you that Elias is already bringing you glory for our... in Jesus' mighty. Now, Father, I ask you that you will reveal Jesus to him. Yes, Lord. I ask you, Lord, that Jesus will become precious. I ask you, Lord, that your Holy Spirit will do a mighty work of grace in this mighty man because he's yours. Your word says the seed of the righteous will be delivered by you the Lord. And I thank you, Father, that in every single era of his life, where he needs to see your deliverance at this time, and in your future, and as he gets older, that you will, and you are his deliverer. Lord, you will cause Elias to be the head, and not the tail, above only, and not believe that Elias will not crash in any way to the works of the enemy. But, Lord, rather, he grows in the life of your spirit, in every era of his life. Father, you know, those eras that he's challenged with, you know those things that the enemy would want to work against his life. You know the wickedness of the enemy. But I thank you that your under salvation is greater than every wickedness of the enemy in Jesus' name. Elias overcomes, Elias is full of your righteousness. He's full of your peace, he's full, of your grace, is full of your power. Your Holy Spirit is in Him, even as your Holy Spirit was upon John the Bounties. So tonight, Father, in Jesus' name, I pronounce blessing on Elias's life, I pronounce healing on his life. I pronounce over him that he's the head, and not the tail, above only, and not the meat. I ask that every generational transfer that did not begin with you will be broken of his life. Therefore, we come by your power to be broken of Elias's life, in office DNA. of his chromosomes, of his body, out of his mind, will, emotions, any exposure, of any kind, to darkness, whether it's excess, or vexis, being in places that he did not know, or they did not know, whether things he has watched, or seen, or heard, by every place, my God, in the name of Jesus, whether to, to, to influence our books, or media, anything. in Jesus' name. Tonight I actually got, deliver in Jesus' name. We receive that Father in the name of the Lord Jesus. Don't let peace, enjoy, overtake his own being. And I thank you. Jesus' name. Amen. You receive that? Yes. Amen. Thank you. Father, we thank you for our children. It's thank you that our children, yours. You're all about, what are we? I'm going, blah, blah, blah. What are we on? Right, the Lord, and according to Psalms, a 127th, Hallelujah, unless the Lord builds a house. And they were in vain, we build it. Except the Lord keeps his city. The watchman waits, but there's an operate problem, that you want to build a house on the rim, and Jesus, modernly, will build a house of a dolphin and Alicia, and cause them not to labor in vain, cause them not to labor in vain, considering hearing, in the name of Jesus. But your words as if you build a house, then they will not labor in them. Therefore, ask you to open the eyes of their understanding, that they'll be able to hear, they'll be able to see, they'll be able to know. in this family, in righteousness. I should build this house in truth. I should build this house in life. And actually, the bill is also purity, and to fulfill this house of God, in the name of Jesus, in justice. I ask you to build this house in mercy. Yes, I ask you to build this house in love, in the name of Jesus. I pray, Father, that Adult for an Alicia would subject their holes. Well, man, or will, their whole bodies to you, in the name of Jesus. And almighty God that you might do this. For Lord, you are the God who lays foundations. Your lay, foundation, through your wisdom, with understanding your establish. So, yes, you connect your wisdom, be laid in this family, and then understanding the establish, so that, oh, God, all those things concerning Elias, all those things concerning grace, that might be accomplished in the name of Jesus Christ. How do you know those things that are seeking the place, demands, on the, you know, those things that are seeking the tourist, that are strong, your breast, that is strong, your work, you know those things, bodyguard, your body, you know. You know those things? The camp of witchcraft. those things that have come out of the rim of the invisible. Those things that are designed, oh, God, I was here and to destroy. seek your face. And it is written in your world. And he will straw in this mountain, the peace of the covering castle of all people, and the veil that is spread over all nations. So, Father, we call upon you, that every veil, every covering that has been cast over alias and oververts, every covering, every veil that has been spread over the nation. and is affecting them, in the name of Jesus. We ask the spirit of wisdom. And the spirit of revelation. We will calm the spirit that dwells not only upon them, what dwells in them, my Father, in Jesus' mighty name. Oh, Karama 2nd. Yes, you the baptize, alias, and goods. In the holy ghosts, ye konoramoshen, are your words, and John the Baptist was filled with the holy ghosts from within the world. I seek of this, this time. And I want baptized, alias, and grace, in the holy ghosts, for your word says that you will pour out of your spirit upon our children. Yes, Lord. And upon our offspring over our robochen, robocos, on the roboco. It is your will. It is your will over. Ah, children, you'll be a fool of the Holy Ghost. So much still with the Holy Ghost, that they will prophesy, by your words, that you will pour out of your spirit, open all flesh, and our sons, and our daughters, they will prophesy. So I ask you, all God, pour out of your spirit, upon Elliot, pour out of your spirit, upon grace, all God, that they will fulfill Lord, all God. They will fulfill your word to the prophet, Joan, to the prophet, Joan, that they will fulfill your word, Judah, prophet, Joan. God, we said, let this be a time of fulfillment. That is with a time of fulfillment for God. Ramashando, rabba, pondo, which are come to pass according to Joel 228. Oh, Ibangagabu, the ocean. Shall come to pass afterward. that I will borrow my spirit on all flesh, and your sons and your daughters shall prophesy. Oh, God, let this word know before you. Let this word now be fulfilled, O God. Poor out, of your spirit and aliens, poor out, of your spirit upon birth, Lord be heard in the Indonesian revival. Young children are being used by your mighty, to deliver the bone, to do the miraculous. Oh God. There is no limitation of age in you, God. According to the prophet of eyesight, that you will pour up your spirit upon our tube. Yes, sir. Your spirit is a spirit of power. Your spirit is a spirit of love. Your spirit is a spirit of a song, man. Your words is your anointed, best Israel, with your spirit, and give him skill in all learning, O God, and Lord, in all artifacts, in all skillfulness to create, of our God, of your spirit. Let the dimensions of your spirit that is to our company. They give things, you're putting in it. They give to your putting brace. Let those dimensions of the Spirit be revealed all God. Let the spirit of the sovereign Lord rest upon them. Let the spirit of wisdom and come, let the spirit of wisdom and understanding be your portion. Let us bring up counsel and mind. Let us spread up knowledge and of the fear of you. Be upon them. And almighty God, as you pour out of your spirit upon them, 0 God. Lord, we declare this night according to your word. According to your word, Father, that alias and grace, O God, as you pour your spirit upon them, that the son and the daughter shall prophesy, we ask, Father, let the grace, the prophesy, before the pandemic. Let the grace to flow out of the dimensions of the Holy Ghost, flow out of the belly, and for your words is out of our belly, these days shall flow rivers of living water. Let living waters flow out of the belly of alias and greats. Let living waters of the Holy Ghost flow out of them, and let them off aside. Let them speak the word of God. Let them, oh, God, ramama, quota, ramoshana. Be caught up in the dimensions of the holy ghosts. Be caught up in the dreams of the holy gods. They caught up in the visions of the Holy Ghost of God. We ask, Oh, God. that you would baptize them in the spirit. Yeah. That you baptize them in the holy ghosts. That you what's hotter ring them spirits, so hot body with the Holy Ghost, and that the unholy Ghost, who is the anointing? Do you destroying bird and removing power of God? We're gonna remove every your car from their life. We'll remove every demonic power from your life. We cancer every generational curse out of your life. Oh, holy anointing of God. Oh, holy power of God. Do what man can do, when your word says enough, my mind, not about power. What it is about the Holy Ghost, to not will petition in the truth, to fulfill the word of Joel, to fulfill the word of Isaiah, that you pour out of your spirit upon them, God. Romo, shondo, romo, shondo, romo, shondo, romo. Transform grace's life, and divide them by the Holy Ghost, Sanctified, by the blood of Jesus, separate them open from roots of iniquity. Separate them from trespasses and sin, trespasses, fexes, witchcraft, enchantments, and decorations from the realm of darkness. Oh, God to not. We acknowledge that you are angels that minister before a throne for alias and grace. All your mighty angels, that excelic strength. Bring back to the earth, bring back to the earth things from the altar, bring back to the earth, decrees from the altar, for alias and grace. Oh, Karima, Kasando, Ramakashana, for we stand to testify before ever tonight. We stand to be clear before the Apostle and I, priest of our confession, that alias and grace are mighty in the face of the earth. Thank you. Romotion, the rubber condom. We are here to confess and declare before you apostle, and I priest of our confession, that Elias and Grace are numbered among the children were for signs and wonders in the earth. Oh, yes, he cut the robe for Shanda. We confess, alias and grace are a shine, and our, in the earth, O God, to your glory, unto your honor, unto your power. And ever, say that the enemy meant for evil, you will turn the wrong for God. Lord, repetition, which are not, that every sneer, and every trap that was made for them, every demonic seed, that was so that it for them, that mighty God, you will intervene, as you end up being pajamas. Yes. You will end up being for them, as you intervene for the woman who call up when you've heard of... You will intervene for them. As you wake up me, for the man that call upon you, for his son, who has been destroyed, who will intervene for them, O God. Wish hand upon your promise of your word, and decreed before you tonight, Jesus. That alias, and grace. There are shining on one day here, and they are mighty in the face of the earth. God, Dolph, and Alicia, Firo. That are like grip in your comer. And if they didn't, we asked the knight that the good begin. In the name of Jesus, that the holy fear of your, the holy love of your, the holy love of your presence, the holy love of the fear of you, would baptize them to our God. The Lord, you said, I know for Alicia. Ablaze with the word of truth. A blade to the spirit of grace and supplication, and you will teach them. Out of bring from the eternal destiny, out of bring out of the riches and glory into the earth. Oh God, every necessary provision, every necessary grace. Oh, God, for alias and grace, from the throne, from the riches in glory, in Tamarosa. Rebokosana, come on, as we pray for Elias and Christ, as you saw into the heavens for them. Oh, God, bring up my new, your own life. Rama, Shikanda, we're put around Elias and Grace. A wall of fire in your name. We petition you for a wall of fire to be roaring about them. We petition you. And they will live in the earth, morning, we'll petition you, and they will living near, mighty. We petition you that they're living the earth, separated, sanctified, unholy unto the Lord. We petition you by your word, says that the seed of the righteous is sanctified by the believing spouse. And, Lord, they are two believings of. If this seed is sanctified, O God. We shantify them with the blood of Jesus. But we put the blood upon him. Always hanging and there is the blood of the lamb. God speak it up at the word before the throne tonight, for Elias and grace. Oh, yes, there is our blood that speaks mercy. Yes, there is our blood that speaks deliverance. According to the book. It is written that the seed of the righteous shall be delivered by the Lord. Mendorobokos andorobokotate. Rebo Shodorobo, we declare, O God, that your word promises, to the bless, to the righteous, to the chosen, up, open heavens over us. We ask that, alias, and breaks, would know the open heavens of God, all the days of their life. That I would have, the encounters of Samuel, the Lord, from the days of, from your word, says, 0 God, that you call Samuel, none of his words, the fall to the ground, from done to Beershema. He did not know the voice of the Lord. No, that when the ways of the Lord reveal unto him, but we have petition in heaven tonight, that the ways of the Lord, when we reveal to Elias, that the ways of the Lord, when we reveal to grace, that they will not have to walk through the years that we walk through. They will not have to walk through the years that our children walk through, but they will walk apart ways of righteousness, all the days of their life. You would give it in someone. There, or you can't do it in aliens. You did it in somewhere. Therefore, you won't do it in grace. Mandarika. Shindorica, Sandorica, we say, Oh, God, cause grace. Cause, Elias, never to have to walk to the days of their parents, never to have to walk to the former days of our lives. May they wish no years in sin. May they waste no years in bondage. May the waste, no years in darkness, but may their hearts be flooded with light. May their hearts be overflowing with truth, for they will know the truth, and the truth causes them to walk in the power, and the liberty of the sons of God. May they be manifested, sons of God in the earth. May they be the answer to creation, O God. Ramashando, Roboko, Hara, we petition, heaven, tonight, that you put the fire in the belly of Elich, you put the fire into many your brains, just as his name he lasts. Maybe a prophet of grace, maybe a prophet of anointing. Maybe a shawn, a holiness. May the fierce fire of the fear of God be in his life and upon his life. Oh, God, may grace the abounded grace. May grace, abounding grace. Oh, oh, oh, oh, oh, oh, oh. In the name of Jesus, we can clear every approach, and ruled away from this family, every approach is ruled away from this young girl, and we reproach his rule, the romantic grace of God, rule away from the woman in this family, rule the way you will not dwell here anymore. We command in the name of Jesus. The Lord Jesus rebing you in the name of Jesus. The Lord Jesus rebuke you. Your lying spirit. We said, hello, Jesus, reveal you in the name of Jesus, your lying tormenting spirit. that amid claim to the woman of this generation. We said, oh, Lord, Jesus, we'll be you, in the name of Jesus. When it clear, the woman of this house, I've been redeemed by the blood. The woman of this house, I've been redeemed by the blood. You will not put your mark upon her. You would not put your name upon her. You will not put your stump upon Earth, but, oh, Lord Jesus, the lion of the child of Judah, with his own precious blood, breaks your power. Breaks, your life, breaks, your generational chance. You'll go back from whence you are shed in the name of Jesus Christ. Your Lord, Jesus is you. Your Lord.. You were crazed by him, bow to him, in the name of Jesus. be broken. Everything that has exalted itself, against a knowledge of God, every nightmare, will shame you back for whence you were sent. In the name of Jesus, the name of Jesus. You are unlawful, in the name of Jesus. Go back from whence you were sent, in the name of Jesus. Your womb, your reign, your influence, your deception, your impact is broken, for we bring the name of Jesus against you. Bring the name of the Lord against you. You now are crushed. You know I'm broken. Your slaver is broken. God has not given us a spirit of bondage against the fear. You will spirit abundance. The Lord Jesus rebuke you. Spirit of God, in the name of Jesus, your power be broken. Little rubo, Sina, Bakuro, me. She will live free. It just written deliverance belongs to the children. And his written deliverance belongs to the righteous. It has written no spirit of bodish, the fear of the spirit of sonship. This is a son of God, India. This is a son of God in here. She sent as a deliberator. She sinned as a weapon of war in here. She said, as the son and a daughter of the living God, in the earth, to wear the garments of holiness, righteousness, the fear of God, truth, and love, and grace, in Jesus' name. Oh, Konanda. Riccendando, chica. Mighty gem, precious stone, a, a, a, a stone planted in the house of God, rubel, Sheira, Rucca, Terebro, Cerebro, Cerebro, delivered by the blood, delivered in the resurrection, raised up by the resurrection, power of Jesus, Sheeping in the heavenly places with Jesus, not Rosa, not sitting in any picked up darkness, not sitting in any bondage, not sitting under any oppression, not sitting under any cursed words, not sitting under any ex or bitch or incantation. Uh, uh, uh, uh, uh, uh, uh, covenant in altars, in Jesus name. We declare there is a known town that prevails over those altars, and it is the altar of the Lord Jesus. Oh, yes, the one where the limit to make him the session. There is a high priest over the house of God. There is a high priest, whose intercession fire exchange, every other altar. Every other government has made, now subject to the blood of Jesus, and now subject to a new altar, a new subject to a new decree, where it is written. Our children shall be mighty in the face of the earth, and great shall be the peace of our children. We declare this young lady. Yes. It's great in the face of the earth. Willing Christ, young lady, is anointed by the spirit of the Lord Jesus Christ. We declare, oh God, that she runs, and she's not weary. She walks, and she does not faint. Oh, God. She. Oh, she overcomes every work of the hero one. And she lives in the righteousness of God. All the days of our life, in the name of the Lord Jesus. Father, we present. Gracie to you, your royal seed, we present this royal princess to you. We present this polished stone to you. We present this holy vine to you. We present, O God, this delivered righteous seed to you. Oh, God holy, we declare over her that she is a royal priest, a part of your holy nation, a part of the peculiar people. Color them darnish, into your marvelous life, and she shows for your praise, in our life, in our countenance, in our growth, in our strength, O God, in our gifts, in our talents, in our abilities, and in every aspect of her life. We give you thanks. Thank you, Lord. In Jesus' name. Thank you. Thank you, Lord. Thank you, Father. Thank you. We give your thanks, Lord. Thank you, Lord. That there is nothing that escapes the blood of Jesus. We said nothing has escaped the blood of Jesus. There is no other blood that speaks a more powerful word than the blood of Jesus. Every other blood. Every other covenant that was caught in blood. That curse is broken. In Jesus' name. And there is a new blood covenant. There is a new blood covenant that wipes out the breach, that wipes out the breach, that wipes out the breach, that wipes out the breach, that wipes out the breach, in the name of Jesus. Hangarikus, alora, bor, the ocean. Hindere, breaking, durable. Thank you. Thank you, Lord. Thank you, Lord. Oh, wonderful you are, King Jesus. . I thank you that there is a blow. That does wipe out the breach. Yes, yes, yes. Hallelujah. And there is no evil that speaks. But now it is. The blood of your altar Jesus. Yes, that blood that went to the mercy seat. Yes. That blood that was received of the Father. Yes. It wipes out every other blood covenant. Yes. and brings righteousness, freedom, and releases the sons and the daughters to rejoice before you. Thank you, Lord. We are justified by your blood. Thank you. We thank you tonight. This family is justified by your blood. Grace shall walk in the earth. Victorious, victorious, over all of our enemies. Elias will walk in the face of your... victorious... over all of your enemies, God. not like God. Because you go before them. In victory. Thank you, Lord. In Jesus' name. . Amen. Amen. Amen. Amen. Let's lift up our children. All right. Let's lift up Ariella before Lord. . diff --git a/areas/family/birthdays.md b/areas/family/birthdays.md new file mode 100644 index 0000000..588b4bf --- /dev/null +++ b/areas/family/birthdays.md @@ -0,0 +1,27 @@ +# Close Family Birthday Log + +## Reminder policy + +For each birthday, create reminders on each day from 5 days before through the birthday itself (D-5, D-4, D-3, D-2, D-1, and D), with a prompt to plan or send a message/call. Confirm the preferred reminder time before creating the recurring one-shot reminders. + +## Birthdays + +| Person | Birthday | Reminder status | Notes | +|---|---|---|---| +| Mom | August 13 | Date inferred from Adolfo's August 14, 2026 message; confirm year-independent month/day | Missed call this year; call/apologize today if appropriate | +| Grace | January 30 | Date recorded; reminders not yet scheduled | Daughter | +| Elías | April 12 | Date recorded; reminders not yet scheduled | Son | +| Adolfo | May 16 | Date recorded; reminders not yet scheduled | — | + +## Dates still needed + +- Alicia +- Mom's preferred name and confirmation of August 13 +- Other closest family and friends Adolfo wants included + +## Source notes + +- Grace's date: family brain memory and timeline. +- Elías's date: family timeline and birthday journal entries. +- Adolfo's date: family journal/timeline. +- Mom's date: Adolfo's WhatsApp statement on 2026-08-14 that yesterday was her birthday; month/day inferred as August 13. diff --git a/areas/family/voice_memos_2026-08-09.md b/areas/family/voice_memos_2026-08-09.md new file mode 100644 index 0000000..46cda56 --- /dev/null +++ b/areas/family/voice_memos_2026-08-09.md @@ -0,0 +1,249 @@ +# Family Voice Memos + +Processed: 2026-08-09T23:35:23+00:00 + +This is the first persistent collection manifest. Future runs must skip any recording whose device, filename, size, and SHA-256 match the manifest. Raw WAV files were staged temporarily under `/tmp` and are not stored in the brain. + +## Elias — memo_20260809_191140.wav + +- Source: `/sdcard/memos/memo_20260809_191140.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_191140.wav.txt` +- Size: 475180 bytes +- SHA-256: `3d00d8d67d879781394f2cdcf238876b805b1b4fbaf1f0ce9c52ced8308f288f` +- Duration: 5.387 seconds +- Status: `transcribed` + +### Transcript + +Hey Liz, I just want you to know that I love you. + +## Grace — memo_20260629_232735.wav + +- Source: `/sdcard/memos/memo_20260629_232735.wav` +- Remote transcript: `/sdcard/memos/memo_20260629_232735.wav.txt` +- Size: 795692 bytes +- SHA-256: `be93499e3d25f727da392cd6a9d9fd048471374a229ee7461777d6117075b7d3` +- Duration: 24.864 seconds +- Status: `transcribed` + +### Transcript + +Hey there, what's up? I don't know why this thing didn't use the proper recording, I call. I put a little weird music symbol. But I was like, AI generated, you know? Take it as it comes. + +## Grace — memo_20260703_140340.wav + +- Source: `/sdcard/memos/memo_20260703_140340.wav` +- Remote transcript: `/sdcard/memos/memo_20260703_140340.wav.txt` +- Size: 1015852 bytes +- SHA-256: `c06eb17d1cc03d21af52e85173046fc66a8061e8a481c0448f2e7d75a51f2905` +- Duration: 31.744 seconds +- Status: `transcribed` + +### Transcript + +Look, Grace, I can record a podcast in here. So tell me about your day. So what is that? Here you go. Great. I made a tiny princess drawing on the screen. What should she have next? A castle, a flower, or a crown? Really? This is, uh, supposedly, a drawer, no breakfast beach. That's not good. + +## Grace — memo_20260703_140437.wav + +- Source: `/sdcard/memos/memo_20260703_140437.wav` +- Remote transcript: `/sdcard/memos/memo_20260703_140437.wav.txt` +- Size: 8518700 bytes +- SHA-256: `e46f73967cbd1675acafcd5f6b4074eacd3ad7175c383c52c412f84a33aed472` +- Duration: 266.208 seconds +- Status: `transcribed` + +### Transcript + +Hello, my listeners. This is Adolfo and Grace, and you're hearing Adolfo and Grace podcast. Today we're going to talk about... Daisy. And Daisy from Mario. You know how Princess Pitch is always on the front cover. What happened with the love for Daisy, right? Yeah, well, she's not in any video. Also, she's not in any of the movies, which seems from Mario so far, but it seems she might be on the next one. Yeah. So, um... And the Super Mario Galaxy, uh, movie is so bad. Really bad. Yeah, because there's small, there's like, Bowser Junior has like a paintbrush. And this is the weirdest part. Bowser says, he's, he, in some of the movie, Bowser's good, but he's supposed to be bad. Yeah, he's a bad guy, was he been good? Yeah, why? So it's very confusing. Yeah, it is. And there is a dragon that has nothing to do in there. Yeah, and we don't like dragons. Yeah. And... has a grown kind of magic. Yeah. And? And supposedly, Princess Peach and Rosalina are sisters. I didn't even know that. And did you know what? When they touched when they touched him together in the movie, Mario's in a jail, and when they touched hands together, they broke, the gel was holding their hands together. Yeah, that doesn't happen if Grace and I hold hands together. There is nothing breaking yells happening. Yeah. Maybe it's because their gloves have some type of power. The gloves? Yeah, maybe the gloves have some type of power. Yeah, I think so too. Well, this has been a very good episode about Daisy. We talk about how there is not too much love to her, but she might be in the next movie. So we're excited to see that, right, Grace? Yeah, but, um, about, but somehow, Bowser drawed his dad mini? I don't know why, but somebody steal his that, and, and the, I think for his birthday, he got that paint purse, and, um, And then. Mario, stall the dad and um, that was a junior, put his, but Mario, caught his dad too late, which was Bowser. Yeah. And like in one of the Mario Games. Um, Belger Jr. is like, Could you help me? My dad doesn't really like me that much anymore. That's what I'm talking about. Like when, when Mario meets up with Belcher Jr. and like, Belcher Jr. has his paint brush, which I can't remember, he's powerful or not, he kind of says his dad kind of hates him now. You need to tell to get him back when you. Yeah, what kind of dad is that? Yeah, like the worst die of the world. . Yeah. I mean, well, he's a bowser. Yeah, Bowser is bad. But to his son, I mean, why? And now this is this was Leia's and Adolfo and Grace in this 1st episode of Adolfo and Grace podcast. Say bye-bye guys. The end. And also Elias's podcast. + +## Grace — memo_20260711_193015.wav + +- Source: `/sdcard/memos/memo_20260711_193015.wav` +- Remote transcript: `/sdcard/memos/memo_20260711_193015.wav.txt` +- Size: 20653568 bytes +- SHA-256: `aae396ac31e4ee8586dee1c0ce455613a3bbd4e52193b7b51cea210277a98cc6` +- Duration: 645.423 seconds +- Status: `transcribed_chunked` + +### Transcript + +Hi. That was my dad talking. Um, today, let's make a podcast about a pool. pool. So if you're about to sing in a pool that has a deeper and you want to go there, you have, and, and you don't know how, how to, how to swim. Then you need a floaty. You're right that you said you wanna hear the podcast. I can't mean... that podcast. Here you go. And... And now you're gonna hear my favorite podcast. It's called Discovery Mountain. How are you? There was a papino there. What time was it? And now, you're hearing... the podcast of Daddy and the and the list and Grace. Hi, I missed Jean. Join me on the trip to Discovery Mountain. Where the air is clear, almost clear enough to hear your imagination, and where every day. I just to say something about it. Join me for today's expedition on... + +This scary mountain. This is... Yeah! Oh, you can see my, um, little picture I made of a hand? In our last episode of the story series. I have a hand with no colors. And it'll go, flip the mill. Get the hikers. Get that out. Christ, hack on him. thought was the beginning of the trail. They're about to discover that they're wrong where they think they are. In today's episode called Wait, Emma and Ethan exercise more than their legs for the height. They will exercise their faith, and specifically their patients. Let's rejoin the hikers and pray that they stop the cliff before it's too late. All righty, hikers. Who's ready day? is clear. I can just smell it. I'm ready. Me, too. This will be my third time climbing Ellie's Peak. You going for a school record, Madison? Maybe. Emma, do you have your backpack? Check. Ethan? Check. Jake, this isn't where we usually start the hike. Oh, yeah, I know. You must have fallen down. All right, Javelin. Forward March. Parkadine, why don't you lead the way? I'll watch for stragglers at the back. Oh, righty, then. Everyone step in time. Forward, March. One, two, three, four, eight. Hey. Wait a minute. This looks different. Ouch. Are you okay, Ethan? Yeah, I just got something pokey in my leg. Yeah, here, let me look. Oh, it's just a prickle. There you go. Thanks, Jake. Uh, no sweat. Let's catch up with the others. Keep in time, hikers. Wait! Everyone, stop. Danger ahead? Yes. Clips ahead. Oh, no, stop everyone. + +Get away. Ooh, that was a close one. Jake, what is that? I have no clue. Duck slide behind us. Everyone back to the bus. There's two late. We can't get there. Emma, easy, Follow me. Jump! Some rocks? tumble down the mountainside behind them. Emma and Ethan, listen to Jake. The three hikers jumped away from the rocks and towards the cliff. The rocks thunder down the mountain, and then settled in place. And Erie silence followed. Eow! My wrist. Oh, my ankle! Ethan, Jake, are you all right? I'm okay, Emma. A little battered, but I guess I'm okay. Where are we? We, uh, we jumped away from the rock slide. We jumped off the ledge? Yeah, but, but, see? We land right here, safe and sound. Almost. Emma, Ethan, are you two all right? We're okay. Oh, no. Jake, look. Oh, no! The rocks, like, locked our own way up. Are we stuck here forever? It's all right, Ethan. Parker Dean will save us. And I'm here, too, you know. Oh, yes, of course, Jake. Parker Dean, is everyone all right? We're okay. Stay there and keep still. Don't disturb the rocks. Parker Dean? Can you rescue us? Never fear. I will rescue you. Just sit and wait. Be patient. Yes, it is. Be patient. Huh? I'm afraid I'm not very good at that. I think so. Me neither. So, I? I have no choice. Are they even as cool as I can do? No. What did you do? Let's look for a seat. Well, I like this, so anyway. Emma, I'm scared. It's all right. Ethan, is your ankle located? + +Yeah, I think so. Okay, let's sit over here, away from the loose rocks, and with our backs against the cliff. Good idea, Emma. Here. Now, look at our perfect view of the sunrise over those mountains. Yes, it is really beautiful. Not exactly how I thought we'd spend our day. Are we gonna have to sit here all day? Well, I don't know about that. Parker Dean is working to rescue us. One day isn't so bad. Moses spent four years in the mountains, taking care of sheep. Yeah, Midian. Hey, Emma. Yeah, Jake? You've been paying attention in Bible class. Well, yeah, it's my favorite class. Really? I don't know what to say. I can relate to Moses. I love learning about how God used him. Yeah, the story of Moses. Hey, I feel left out. Who's Moses, and why do you spend 40 years in the mountains? Oh, Ethan, it's a wonderful story. It starts in the Book of Exodus. Exodus? Yeah. The second book in the Bible. And in what chapter is the mountain part, Jake? In Exodus chapter 2. See, it all started when Moses went out to see the Israelites, and the Egyptian taskmaster was eating one of the Hebrew slaves. Moses didn't like that, so what he did... Oh, don't start there, Jake. Or Ethan won't like Moses. I won't? Well, all right. How did you tell it, Emma? Moses was running. Running away from Pharaoh. He ran straight into the wilderness. Straight into the land of Minions, far away from Egypt. Oh, water. Oh, I'm so thirsty. I just have to keep going. What was that? There's no one around. It must have been the wind. Oh, I need water. Why did I react so patiently? Oh, patience, patience? I'd never seen that. + +Close this. Why are you always in such a hurry? Oh, shit, time of sandal stars. You need to slow down. I'm learning some patience for it. Tie your handles. Oh, water. I just need water. Oh, I'm too tired to walk anymore. Oh, water. I have to get water. I'm so thirsty. Oh, come on, now. We need to draw water from the well. Father, sheep are thirsty. Oh, thirsty, so thirsty. Honeybee, look this way. Ha! I got you. I'll eat you. I'll get all of you. You can outrun their big sister. Little bird, you might me feel this, but I The fastest. Oh, yeah? Do just because Father called you Grasshopper, that makes you fast? Quit splashing. You'll get water on the baby and wake her up. Ah, ah. Awesome. Water. The baby's laughing. She likes wine. She likes water. I must be turning me. I'm not dreaming. Oh, well? So thirsty. Oh, I'm a mess. I don't want to scare those girls. Oh, is this some of the patience, no patience? All right, girls, listen up. Let's finish drawing water. Father's waiting for us. Little bird, look behind you. What is it? All right, all you young women, move along. We need to drill wire for our flocks. Yes, sir. My sisters and I are almost finished drawing water for our father's sheep. + +And we'll be on our way. You're finished now. Move along. We're nearly finished, sir. Little bird. Finish doing your pail, little girl. It's all right. This isn't a playplace for girls. Our flocks are thirsty. I don't like the looks of these two. Our father's flocks are thirsty as well. I said, You heard the young lady. Her father's flocks are thirsty, too. Look at you, all dressed like an Egyptian. Does who do you think you are? Yeah, maybe he thinks he's fair himself. I'm somebody who wants you to wait your turn until these young ladies are dumb. All right. We'll come back later. Yeah. Take your time, young ladies. Take all the time you need. And don't come back. until they're far, far away from here. + +## Grace — memo_20260711_194936.wav + +- Source: `/sdcard/memos/memo_20260711_194936.wav` +- Remote transcript: `/sdcard/memos/memo_20260711_194936.wav.txt` +- Size: 11485228 bytes +- SHA-256: `d9db7566e49263a3569fe7168cc6302196455e8b47e42b16b5216b00a94c9693` +- Duration: 358.912 seconds +- Status: `transcribed` + +### Transcript + +And they don't listen very well. Yeah, very different from your palace life. Yep. You know, out here in the mountains, all alone. reminded of my childhood. Oh, when you were with your Hebrew family? Yeah, out here all day, I'm surrounded by the beauty of the mountains. They are majestic. You know, remember, just how big and mighty God is, and how small the Egyptian gods are. Well, how small I am, too, looking out at these beautiful mountains. I see God's name everywhere. I forgot all about Egypt. Oh, look, you're last draggling a sheep. Oh, come in. Come into pasture. I'm still learning to depend on God to wait patiently on him. I'm all just, why did you leave Egypt? I'm sleep here at Midi. Well, I, um. Love this little bird. The food is ready. All right, coming, little brook. You go ahead. I'll make sure the sheep are all safely secured for that night. All right, we'll save a dish for you. Whew Save my little brook. Moses faithfully cared for Jethro Sheep, his sheep shearing skills grew, and so did his patience. The longer he spent in the mountains, along with God, the more he grew to depend on him. Moses became a patient shepherd. Moses, why do you look so nervous? Oh, Jethro, I really need to speak to you about something. Have a seat, Moses. As he knows, the poor would really like to be married. Yes, you already have my blessing. But there's something I must tell you first. What is it? I fled from Egypt for a reason, you know? Yes, I always imagined that there was a good reason. Well, Pharaoh wanted to kill me. Why? You were like a grandson to him. I was, but I did something terrible. Well, one day, I left the palace, and I saw an Egyptian beating a Hebrew slave, one of my people, and I was so angry and impatient, and what did you do? Well, I killed the Egyptian, and I buried him in the sand. I see. Does the world know about this? yes, she does. I've told her everything. I don't know why, but I thought I got away with murder, but I didn't. Our Sams will always find us out. Oh, they sure did. The next day, I saw two Hebrew men fighting with each other. I scolded them. they turned on me. They attacked you? Well, they attacked me with their words, they taunted me, and they said, Who made you a prince and judge over us? Are you going to kill us, like you did the Egyptian? Oh, I see. Well, I mean, then that I had to flee, Pharaoh, he would never let me live. Well, if you wish me to leave your home and your family, I will do so at once. Sit back down, Moses. You throw it a lot in a short time. Yeah, I agree. You're patient. ancestors again. Yes, I have. Perhaps God has sent you here to the mountains to help you discover just who you are, to prepare you for some great task. Then you don't want me to leave? No, no, you still have my blessing to marry Zepora. And to stay on this my shepherd. Oh, thank you, Jethro, thank you. You don't plan to stay too long, though, do you? You'll want to set up your own home and your own land. Oh, yes, uh, not too long, Jethro. Thank you for your kindness here in the mountains. I thank God for you. Emma? Oh, are you here? How long do Moses stay with Jethro? 40 years? 40 years? That was a long way in the mountains. Yeah. Now you see why I said waiting a whole day wasn't too long. Oh, hearing that story? looking at these mountains? I felt like Moses did. You did? How, Jake? Well, just look at this beauty. God's name is written everywhere. Can't you see it? I can't. God is big, isn't he? Oh, that he is, Ethan. Oh, no, not the falling rocks again. It's all right. I'm here to rescue you. Oh, Parker Dean. Thank you. It's all Rick. I rescue you to here. Parker, Dean. Are you? okay? Yes, Ethan, I'm... Oh... I'm Emma. And, oh, no. What's happening? Uh. quick. He's going over Emma. Ethan, grab one arm, and I've got the other one. Parker Dean, are you all right? Oh, I don't think he can hear you, Emma. Why can't you hear? Look at those hugest fed. Oh, no. Who's gonna rescue our rescuer? Then who's gonna rescue us? Oh, no. disaster. Disaster! Oh, no. It sounds like Jake Hammond, even, going to have to keep exercising their faith about being patient. I sure hope that Parker game is all right, and everyone will find their way off the mountain safely. In next week's episode, in this story series, family matters. We'll find out if the hikers ever make it to the summit of Ellie's Peak or not. And maybe we'll finally learn just who Parker D is. Until next time, keep exercising your faith. I'm waiting patiently. It was perfect. + +## Kitchen — memo_20260702_041724.wav + +- Source: `/sdcard/memos/memo_20260702_041724.wav` +- Remote transcript: `/sdcard/memos/memo_20260702_041724.wav.txt` +- Size: 308268 bytes +- SHA-256: `1e25dd9d6096252de2e4979be0b00feeaed10aa56794a3c8185acf339138f219` +- Duration: 9.632 seconds +- Status: `transcribed` + +### Transcript + +You can record your voice, and you say, Hey, this was my day, blah, blah, blah. And then you can care later. + +## Kitchen — memo_20260712_153919.wav + +- Source: `/sdcard/memos/memo_20260712_153919.wav` +- Remote transcript: `/sdcard/memos/memo_20260712_153919.wav.txt` +- Size: 791596 bytes +- SHA-256: `fc93ae664837e0140b8d77acc16b6a2eaebf307f9af9bdcf9f4b6c0fe75989a7` +- Duration: 24.736 seconds +- Status: `transcribed` + +### Transcript + +Is it starting? Okay. Um, silly, jelly, kitty, all the sun. We're having so much fun. Dilly, dilly, kitty. Oh, the sun? We're having so much fun. Uh oh. How do we start recording? + +## Kitchen — memo_20260712_154019.wav + +- Source: `/sdcard/memos/memo_20260712_154019.wav` +- Remote transcript: `/sdcard/memos/memo_20260712_154019.wav.txt` +- Size: 480300 bytes +- SHA-256: `39a696b06ee461f837aad0bfc79a4b4b77184745158598c7352182c8d67b34b0` +- Duration: 15.008 seconds +- Status: `transcribed` + +### Transcript + +Silly, silly, dilly, Billy. Oh, the moon. We are having a good mood. Silly, dilly, dilly, on the moon. We are having a good mood. + +## Personal — memo_20260702_162524.wav + +- Source: `/sdcard/memos/memo_20260702_162524.wav` +- Remote transcript: `/sdcard/memos/memo_20260702_162524.wav.txt` +- Size: 212012 bytes +- SHA-256: `c1388d681245780626fd822d98d1fd04c9b2713dd2bb4b744d751822f78a24ff` +- Duration: 6.624 seconds +- Status: `transcribed` + +### Transcript + +Testing this device. 123. + +## Personal — memo_20260706_195910.wav + +- Source: `/sdcard/memos/memo_20260706_195910.wav` +- Remote transcript: `/sdcard/memos/memo_20260706_195910.wav.txt` +- Size: 4023340 bytes +- SHA-256: `eeb4cfb91c89c110d53b59947296831abcf51a95099c8065c63cfe9171c0a139` +- Duration: 125.728 seconds +- Status: `transcribed` + +### Transcript + +Hello everyone, this is Atolfo and Grace, and you're hearing Adolfo and Grace podcast. Today we're going to talk about discouragement. Grace feels a little bit sad because she wanted to go swimming and we couldn't go. So Carlos, Grace, how are you feeling? My heart is feeling not that good and sad. What made you feel that way? Because the other day going in the pool was so much fun. So you were wanted to have a day like that again today. Yeah. And what happened? We couldn't go because it was raining too much, and when it stopped raining, it was too late. Yeah. Sometimes things like that happen, huh? Yeah. What can we do when we feel sad, Chris? We can write it down or make a podcast about it. Yeah. We can talk about it and feel better. Yeah. Do you feel a little bit better? Just, like, one percent. Okay, we're still gonna grab it down, right? Yeah. Yeah. Okay, guys, this was the podcast of Adolfo and Grace. It's a beverage for you to listen to us. Stay tuned for the next episode. Of course, and, and the next one is gonna be adult, and Grace and Elise is episode. Bye. + +## Personal — memo_20260731_120809.wav + +- Source: `/sdcard/memos/memo_20260731_120809.wav` +- Remote transcript: `/sdcard/memos/memo_20260731_120809.wav.txt` +- Size: 2056236 bytes +- SHA-256: `39193951102a7687e2871f3b77536e1220f6855a0921c6b12207e9d8cb0586f5` +- Duration: 23.313 seconds +- Status: `transcribed` + +### Transcript + +Today, I fix the audio volume issue, while my issue on the device on the 35 inches screen, color, ESP 32, so hopefully the kids can use it for recording some nice audio notes. + +## Personal — memo_20260809_135238.wav + +- Source: `/sdcard/memos/memo_20260809_135238.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_135238.wav.txt` +- Size: 9584684 bytes +- SHA-256: `183c238cfde561477989df41a1e0249f7971d268003bfabd4e435c3f08573077` +- Duration: 108.669 seconds +- Status: `transcribed` + +### Transcript + +Okay, I'm here with Grace. This is Daddy, and this is? Me, Grace. And together, we're doing Daria and Grace podcast. In this episode, we're going to talk about our plan, with the new kinetic hand. Tell us about it Chris. Well, I already have some pink kinetics, and, and I want more that's gonna be with blue and red, and all I want, I can make, because it's gonna look so pretty, that makes the blue and red. Okay. It's gonna look like blue, red, Superman ice cream. I think it's just gonna look like a block. So you should try it with a little bit instead of the whole thing. Yeah. What can you do with kinetic side? You can build stuff? And, um, you can build, uh, a castle, you can build, a sky on the bottom. You can build a tree, maybe? Hmm. That's why I love kinetic sand. Yeah. And what is your favorite color for that kinetic sun? Blue, red mixed together. Well, this was 30 adults, one grace in this episode about kinetic time. Until next time. We, we are gonna talk about... How much I love kinetics and? We'll see you later in our next episode. + +## Personal — memo_20260809_135637.wav + +- Source: `/sdcard/memos/memo_20260809_135637.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_135637.wav.txt` +- Size: 11378732 bytes +- SHA-256: `0efefbef18be61d817f0e193e0d966b4686655e30ded61c9a9503165118e7003` +- Duration: 129.010 seconds +- Status: `transcribed` + +### Transcript + +Hi, this is Daddy and Grace's podcast. I'm Daddy. And I'm Grace. Today we're gonna learn how much I love kinetics and. So tell me, Grace, how much to love kinetic sense. One million thousand percent, but I love my dad, which is called daddy? Infinity, Thousand Infinity, Thousand percent. Oh, señor. Gracias. What is the thing you like or love about Connecticut? That you can build stuff and, um, you can build whatever you want, maybe. And let's be realistic. But are some of the things that you have built with kinetics and that you want to share with us? A volcano. Ooh, erupting. And, um... And a flower. And... a mouse running away of a garbage cab. Oh, boy. What was that? That seems like a lot of fun. Hours and hours of screen distraction. Screenless. So in our next video, we are going to talk about how much? I really love kinetics and. Yeah, this was just a taste. The next video would be really in depth of how much grace loves kinetic. Yeah. Bye bye. On the next video, we'll talk together, and see if we both love kinetics, and I'm gonna tell you, what actually is kinetics here? Bye. Bye. + +## Personal — memo_20260809_140139.wav + +- Source: `/sdcard/memos/memo_20260809_140139.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_140139.wav.txt` +- Size: 15548460 bytes +- SHA-256: `438fd3fd915c5c1a3da203e390b42e3a3facc096cdc63212a52ca855a8d4e9a2` +- Duration: 176.286 seconds +- Status: `transcribed` + +### Transcript + +Hi, this is me, Grace, and this is me, Daddy. Today, we're gonna talk, how really I love, like I told you in the other media. Yeah, I know, previous, um, podcast, chapter, we talk about, some of things that Grace loves about Kinetistan, but we've left the best part, and the explanation of what actually is kinetic sand, this episode. So tell us, Grace. Well, kinetician is said that can get stuck in your hands. And um... Now I'm gonna tell you the grand finale at the end of this episode. And we're gonna introduce our guests of today. Let's see if it's ready. Hello, computer. Please tell us how kinetic sun is made. I guess shy today. So back to Grace. I'm gonna tell you what I think kinetic sand is made of. So, what I think kinetics and is made of is, um, real sand from the beach, with some colors. Yeah. That's probably it, but it must have to be, like, a really clean sand. Yeah. And like, I think they put a little, so tiny bit of glue. So, um, sticks to, like, magnetically. Wait, Leah, we're in the middle of an episode. And we're gonna give another try to our guest. Hey, computer. Tell us how kinetic sun is made. Well, he really is shy today. It's really sad. So, he, um, puts, so, my next guest is, um, the guy puts a special type of glue that, um, doesn't like stick it, but it has some type of magnetic thing, that, um, that, um, that + +## Personal — memo_20260809_141136.wav + +- Source: `/sdcard/memos/memo_20260809_141136.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_141136.wav.txt` +- Size: 24338476 bytes +- SHA-256: `cd52fe9a1557d8707ffe01d5eb5d60ae0a94eaabec06018aea2d4a746fa3a712` +- Duration: 275.946 seconds +- Status: `transcribed` + +### Transcript + +Hi, this is me, Grace. And this is me, Daddy. We are gonna have four guests today. My brother, Alyas, and computer. Say, say hi, computer. Did you hear that? That's a computer desk. It always might not be ready to talk to you, yeah. Yeah, he sounds good. Okay. Would you like to talk to our to our episode? Would you like to talk to our episode? All right, bless you, Mia. Okay. Computer? How much do you love nature? I love nature a lot. Forests, oceans, and wildlife are amazing, and they're worth protecting. Those are special guest computer. He really loves nature, I guess. So come here. How much do you like houses? A lot. Nature is beauty for, fascinating, and essential to life. Computer, we didn't have podcasts, and you're, I guess, in the podcast. Tell us how much you don't like house. I like houses a lot. They give people comfort, shelter, and a place to make memories. As a podcast guest, I'd say a good house should feel safe and well called. So, computer, my name is Grace, and, um, our podcast is right now on. So I'm actually talking to you and the podcast. Nice to meet you, Grace. I'm glad to be part of the podcast, and I'm ready for your next question. How much do you like cherries? I like cherries a lot. They are sweet, juicy, and delicious, especially when they're fresh. Change your voice to David's voice. David's voice isn't available. The available voices include Daniel Style voices like Michael, Adam, Fenrier, and Puck. Change your voice to Adam's voice. My voice is now set to Adam. Hi, Adam. Um, you're invited in a podcast, actually. Hi, thanks for inviting me. I'm happy to join the podcast and chat with you. There's one more guest in the podcast, which is my brother called Elias. Nice to meet you, Aleah. I am glad to be joining you both on the podcast. Um, I don't think that Leo is ready to talk to you yet. Hi. That's okay. I'm right here. Elias is here. Hi, Elias. It's nice to have you here. I'm ready to chat whenever you are. + +## Personal — memo_20260809_141710.wav + +- Source: `/sdcard/memos/memo_20260809_141710.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_141710.wav.txt` +- Size: 12632108 bytes +- SHA-256: `c571455ded3b88e0b57246cf119f579a97a5c8ac77bc17bdaa6a8d4442bff289` +- Duration: 143.221 seconds +- Status: `transcribed` + +### Transcript + +Hey, this is my dad, my dad called daddy. Hey, this is me daddy. Today, we're gonna talk with me, computer, and that, I don't think that my brother, at least, is gonna want to talk. First, we're gonna start with computer. Hi computer. I'm gonna call you chat. Hi, chat works for me. What would you like to talk about? You? Or actually talking in a podcast, too. Yes, I'm still part of the podcast. I'm happy to keep chatting with you and Elias. Uh... Uh... Alice might not want to talk in this video. That's perfectly okay. I can stay quiet and let you two continue the conversation. So, Tats? How much, really, do you like cherries? Tell me which number. It's a car. Here. If you mean cats, I'd give them a nine out of ten. They're curious, playful and wonderfully independent. I said cherry, not cop. Cherry. Knock. Oh, cherries. I'd give them a nine out of ten. They're sweet, juicy, and delicious. What are some things you can enjoy, cherry sweet? You can enjoy cherries fresh. In pies, jams, smoothies, or on top of ice cream. They're especially good when they're chilled and ripe. + +## Personal — memo_20260809_141939.wav + +- Source: `/sdcard/memos/memo_20260809_141939.wav` +- Remote transcript: `/sdcard/memos/memo_20260809_141939.wav.txt` +- Size: 18866220 bytes +- SHA-256: `cd90f3e1149060835ebdf793fb82c359e63c16d9e0f21ead4387864726ecdaa5` +- Duration: 213.902 seconds +- Status: `transcribed` + +### Transcript + +My dad, daddy. Today we're gonna talk chat, which is... But now it's named chat. So cute, Richard. Take care of him. No, if you lost the other one. I promise I won't lose at this one time. I promise so much. I What? Okay. That was not part of the video. Hey, cats. Tell me some of the voices you can change to. I can switch to voices like Michael, Adam, Fenry or Puck, Emma, George, Moira, Daniel, Samantha, Karen, or Alex. I'm currently using Adam. Change your voice to Samantha. Your voice is now sent to Samantha. Your name is actually Cat, but I asked you to change his voice to Samantha. Understood. My name is Cat, and I'm speaking with Samantha's voice. Actually, you name it to me. Understood. My name is Samantha. What's your favorite thing to do at school, Samantha, in the book? If you mean me, Samantha. My favorite thing at school would be learning new things and helping classmates. Which book are you referring to? Um... I'm the real Samantha, but... the real love. It's the one where Samantha teaches her friend, is her friend, has friends that, um, laughs at her? I'm not sure which Samantha book you mean. Tell me the title. And I can answer whether her friend's friends laugh at her. The... Um, I forget that title, but, um... her name is named Samantha. I think that's the title. There may be several books titled Samantha. So I can't identify the story from the title alone. Tell me another detail about the characters or plot, and I'll try to help. diff --git a/areas/family/voice_memos_manifest.json b/areas/family/voice_memos_manifest.json new file mode 100644 index 0000000..84f2229 --- /dev/null +++ b/areas/family/voice_memos_manifest.json @@ -0,0 +1,207 @@ +{ + "version": 1, + "processed_at": "2026-08-26T22:37:08Z", + "source_directory": "/sdcard/memos", + "skip_key": [ + "device", + "filename", + "size", + "sha256" + ], + "recordings": [ + { + "device": "elias", + "filename": "memo_20260809_191140.wav", + "remote_path": "/sdcard/memos/memo_20260809_191140.wav", + "size": 475180, + "sha256": "3d00d8d67d879781394f2cdcf238876b805b1b4fbaf1f0ce9c52ced8308f288f", + "duration_seconds": 5.38702947845805, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_191140.txt" + }, + { + "device": "grace", + "filename": "memo_20260629_232735.wav", + "remote_path": "/sdcard/memos/memo_20260629_232735.wav", + "size": 795692, + "sha256": "be93499e3d25f727da392cd6a9d9fd048471374a229ee7461777d6117075b7d3", + "duration_seconds": 24.864, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260629_232735.txt" + }, + { + "device": "grace", + "filename": "memo_20260703_140340.wav", + "remote_path": "/sdcard/memos/memo_20260703_140340.wav", + "size": 1015852, + "sha256": "c06eb17d1cc03d21af52e85173046fc66a8061e8a481c0448f2e7d75a51f2905", + "duration_seconds": 31.744, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260703_140340.txt" + }, + { + "device": "grace", + "filename": "memo_20260703_140437.wav", + "remote_path": "/sdcard/memos/memo_20260703_140437.wav", + "size": 8518700, + "sha256": "e46f73967cbd1675acafcd5f6b4074eacd3ad7175c383c52c412f84a33aed472", + "duration_seconds": 266.208, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260703_140437.txt" + }, + { + "device": "grace", + "filename": "memo_20260711_193015.wav", + "remote_path": "/sdcard/memos/memo_20260711_193015.wav", + "size": 20653568, + "sha256": "aae396ac31e4ee8586dee1c0ce455613a3bbd4e52193b7b51cea210277a98cc6", + "duration_seconds": 645.423, + "status": "transcribed_chunked", + "transcription_note": "SpeechAnalyzer required six 120-second chunks.", + "transcription_remote_path": "/sdcard/memos/memo_20260711_193015.txt" + }, + { + "device": "grace", + "filename": "memo_20260711_194936.wav", + "remote_path": "/sdcard/memos/memo_20260711_194936.wav", + "size": 11485228, + "sha256": "d9db7566e49263a3569fe7168cc6302196455e8b47e42b16b5216b00a94c9693", + "duration_seconds": 358.912, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260711_194936.txt" + }, + { + "device": "kitchen", + "filename": "memo_20260702_041724.wav", + "remote_path": "/sdcard/memos/memo_20260702_041724.wav", + "size": 308268, + "sha256": "1e25dd9d6096252de2e4979be0b00feeaed10aa56794a3c8185acf339138f219", + "duration_seconds": 9.632, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260702_041724.txt" + }, + { + "device": "kitchen", + "filename": "memo_20260712_153919.wav", + "remote_path": "/sdcard/memos/memo_20260712_153919.wav", + "size": 791596, + "sha256": "fc93ae664837e0140b8d77acc16b6a2eaebf307f9af9bdcf9f4b6c0fe75989a7", + "duration_seconds": 24.736, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260712_153919.txt" + }, + { + "device": "kitchen", + "filename": "memo_20260712_154019.wav", + "remote_path": "/sdcard/memos/memo_20260712_154019.wav", + "size": 480300, + "sha256": "39a696b06ee461f837aad0bfc79a4b4b77184745158598c7352182c8d67b34b0", + "duration_seconds": 15.008, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260712_154019.txt" + }, + { + "device": "personal", + "filename": "memo_20260702_162524.wav", + "remote_path": "/sdcard/memos/memo_20260702_162524.wav", + "size": 212012, + "sha256": "c1388d681245780626fd822d98d1fd04c9b2713dd2bb4b744d751822f78a24ff", + "duration_seconds": 6.624, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260702_162524.txt" + }, + { + "device": "personal", + "filename": "memo_20260706_195910.wav", + "remote_path": "/sdcard/memos/memo_20260706_195910.wav", + "size": 4023340, + "sha256": "eeb4cfb91c89c110d53b59947296831abcf51a95099c8065c63cfe9171c0a139", + "duration_seconds": 125.728, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260706_195910.txt" + }, + { + "device": "personal", + "filename": "memo_20260731_120809.wav", + "remote_path": "/sdcard/memos/memo_20260731_120809.wav", + "size": 2056236, + "sha256": "39193951102a7687e2871f3b77536e1220f6855a0921c6b12207e9d8cb0586f5", + "duration_seconds": 23.312834467120183, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260731_120809.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_135238.wav", + "remote_path": "/sdcard/memos/memo_20260809_135238.wav", + "size": 9584684, + "sha256": "183c238cfde561477989df41a1e0249f7971d268003bfabd4e435c3f08573077", + "duration_seconds": 108.66938775510204, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_135238.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_135637.wav", + "remote_path": "/sdcard/memos/memo_20260809_135637.wav", + "size": 11378732, + "sha256": "0efefbef18be61d817f0e193e0d966b4686655e30ded61c9a9503165118e7003", + "duration_seconds": 129.01006802721088, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_135637.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_140139.wav", + "remote_path": "/sdcard/memos/memo_20260809_140139.wav", + "size": 15548460, + "sha256": "438fd3fd915c5c1a3da203e390b42e3a3facc096cdc63212a52ca855a8d4e9a2", + "duration_seconds": 176.28589569160997, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_140139.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_141136.wav", + "remote_path": "/sdcard/memos/memo_20260809_141136.wav", + "size": 24338476, + "sha256": "cd52fe9a1557d8707ffe01d5eb5d60ae0a94eaabec06018aea2d4a746fa3a712", + "duration_seconds": 275.9459410430839, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_141136.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_141710.wav", + "remote_path": "/sdcard/memos/memo_20260809_141710.wav", + "size": 12632108, + "sha256": "c571455ded3b88e0b57246cf119f579a97a5c8ac77bc17bdaa6a8d4442bff289", + "duration_seconds": 143.22068027210884, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_141710.txt" + }, + { + "device": "personal", + "filename": "memo_20260809_141939.wav", + "remote_path": "/sdcard/memos/memo_20260809_141939.wav", + "size": 18866220, + "sha256": "cd90f3e1149060835ebdf793fb82c359e63c16d9e0f21ead4387864726ecdaa5", + "duration_seconds": 213.90222222222224, + "status": "transcribed", + "transcription_remote_path": "/sdcard/memos/memo_20260809_141939.txt" + }, + { + "device": "whatsapp", + "filename": "aud_ef2a801c38e3.m4a", + "remote_path": "/Users/adolforeyna/.hermes/audio_cache/aud_ef2a801c38e3.m4a", + "size": 33684653, + "sha256": "a71cd9360c5ca8e1ce0b84bd86d7935d1c698ecd9845b3061fc5c37937bc91fc", + "duration_seconds": 2007.530667, + "status": "transcribed", + "transcription_note": "/Users/adolforeyna/brain/areas/family/2026-08-26_prayer-for-elias-and-grace.md", + "source_channel": "WhatsApp DM", + "transcription_engine": "Apple SpeechAnalyzer + SpeechTranscriber/macOS 26.5", + "locale": "en_US" + } + ] +} diff --git a/areas/finances/220_emerald_flood_insurance.md b/areas/finances/220_emerald_flood_insurance.md index 9bc4a86..4f6366a 100644 --- a/areas/finances/220_emerald_flood_insurance.md +++ b/areas/finances/220_emerald_flood_insurance.md @@ -43,9 +43,14 @@ Tags: [areas, finances, insurance, flood, 220_emerald, neptune] - Mail checks payable to: Neptune Flood Incorporated, PO Box 735653, Chicago, IL 60673-5653. - Courier deliveries only (FedEx/UPS): JPMorgan Chase, Attn: Neptune Flood Incorporated 735653, 131 S. Dearborn St, Floor 6, Chicago, IL 60603. +## 2026-08-21 Payment Status — User Confirmed +- **Neptune flood renewal was paid.** The user confirmed payment in the family chat; retain the official payment confirmation/receipt if available. +- Policy TNF4366115 covers 220 Emerald Ave through **2027-08-21**. +- **Planning request:** research alternative flood-insurance options before the 2027 renewal payment, then compare price, limits, deductibles, exclusions, lender acceptance, and waiting period against Neptune. Do not cancel or change coverage without explicit approval. + ## Follow-up -- Verify after July 22, 2026 that the automatic payment processed for $870.23 and coverage renewed. -- Keep the photo/notice as backup if lender or insurance questions come up. +- Begin alternative-policy research around **June 2027**, before the August 21, 2027 renewal. +- Keep the photo/notice and payment confirmation as backup if lender or insurance questions come up. ## Related - [[220_emerald_mortgage]] diff --git a/areas/finances/220_emerald_mortgage.md b/areas/finances/220_emerald_mortgage.md index 3c38cac..c73cf06 100644 --- a/areas/finances/220_emerald_mortgage.md +++ b/areas/finances/220_emerald_mortgage.md @@ -25,6 +25,18 @@ Tags: [finances, mortgage, 220_emerald, debt] - Corrected by Adolfo on 2026-05-20 (supersedes earlier typo values). - Keep this note as the source of truth for current mortgage numbers unless a newer lender statement is provided. +## Escrow Analysis — Effective 2026-10-01 +- **Source:** Pennymac escrow-analysis email provided by Adolfo; analysis completed 2026-08-12. Original email/document path not supplied. +- **New monthly payment:** `$5,373.43`, beginning with the payment due 2026-10-01. +- **Current monthly payment:** `$5,358.53` (consistent with the prior lender snapshot). +- **Change:** `+$14.90/month`. +- **Principal & interest:** `$4,030.20` (unchanged in the notice). +- **Current escrow payment:** `$1,328.33`. +- **New escrow payment:** `$1,343.23` (`+$14.90/month`). +- **Escrow drivers:** Property taxes unchanged at `$639.25/month`; mortgage insurance unchanged at `$145.35/month`; hazard insurance increased from `$543.73` to `$558.63/month` (`+$14.90/month`). Reserve requirement and shortage amount remain `$0.00`. +- **Projected escrow surplus/refund:** `$536.36`, to be refunded by Pennymac to the bank account configured for eDisbursement. +- **Action/date:** Payments due before 2026-10-01 should use the current amount; use `$5,373.43` starting 2026-10-01. Monitor for the `$536.36` refund. + ## Related - [[Finances Index]] - [[Areas]] diff --git a/areas/maintenance/220_emerald.md b/areas/maintenance/220_emerald.md index 4ce14c5..decbe55 100644 --- a/areas/maintenance/220_emerald.md +++ b/areas/maintenance/220_emerald.md @@ -18,12 +18,14 @@ Captured 2026-07-23. Full notes in journals/2026-07-22 and projects/220_emerald_ ## 💧 Water Filtration System - **Peroxide & Salt Pellets** - - **Last Service:** 2026-07-16 (Added 10 bottles peroxide and 2 bags salt pellets) + - **Last Service:** 2026-08-20 (Added 10 gallons peroxide); salt pellets added 2026-08-15. - **Check Cycle:** Monthly (Avg. refill every 1.5 months) - - **Next Check Due:** 2026-08-16 - - **Current Status:** Replenished on 2026-07-16 with usual amount: 10 bottles peroxide and 2 bags salt pellets. - - **Next Action:** Check peroxide and salt pellet levels around 2026-08-16. + - **Next Check Due:** 2026-09-20 + - **Current Status:** Peroxide replenished on 2026-08-20 with 10 gallons; salt pellets replenished 2026-08-15. + - **Next Action:** Check peroxide and salt pellet levels around 2026-09-20. - **Service History:** + - 2026-08-20: Added 10 gallons peroxide to water filtration system. + - 2026-08-15: Added salt pellets to water filtration system. - 2026-07-16: Added usual amount to water filtration system — 10 bottles peroxide and 2 bags salt pellets. - 2026-06-05: Added 10 bottles peroxide and 2 bags salt pellets. - 2026-04-26: Added 2 bags salt pellets; peroxide purchase pending. diff --git a/areas/maintenance/front-yard-landscape-idea.md b/areas/maintenance/front-yard-landscape-idea.md new file mode 100644 index 0000000..3fa7b8b --- /dev/null +++ b/areas/maintenance/front-yard-landscape-idea.md @@ -0,0 +1,71 @@ +--- +Date: 2026-09-12 +Author: Adolfo Reyna +Tags: [home, maintenance, landscaping, front-yard, ideas, 220-emerald] +--- + +# Front Yard Landscape Idea + +Concept captured from an AI-generated front-yard makeover image for [[220 Emerald Maintenance Log]]. This is an inspiration concept, not a measured construction plan. + +## Overall vision + +Create a welcoming, Florida-friendly front yard for family and friends that combines beauty, shade, butterflies, and practical outdoor seating while keeping the existing driveway. + +## Main design elements + +- Keep the existing driveway as-is, with a clean edge along the landscape beds. +- Add curved brick or reclaimed-brick edging around the driveway and planting beds. +- Create a brick walkway leading from the driveway to a covered front porch. +- Use layered planting beds: taller plants toward the house and lower plants along the walkway and driveway. +- Add a covered front-porch sitting area with a porch swing. +- Consider a ceiling fan on the porch for comfort and mosquito reduction. +- Add a second porch swing beneath the large shade tree on the right side of the yard. +- Use mulch in planting beds and low-voltage or solar path lighting along the walkway. +- Add a few terracotta, ceramic, or resin planters near the porch. + +## Suggested plant palette from the concept + +### Butterfly-attracting plants + +- Firebush +- Pentas +- Salvia +- Porterweed +- Milkweed + +### Fragrant or mosquito-deterrent plants + +- Citronella grass +- Lemongrass +- Lavender +- Rosemary +- Marigolds + +### Structural and edging plants + +- Cocoplum +- Simpson's stopper +- Dwarf yaupon holly +- Liriope +- Muhly grass + +Plant selections should be confirmed for the actual sun, drainage, irrigation, mature size, and salt/wind exposure at 220 Emerald. Mosquito-deterrent claims should be treated as supplemental; standing-water control and appropriate screening remain more important. + +## Practical planning notes + +- Measure the front yard, driveway, porch, tree canopy, and proposed walkway before ordering materials. +- Identify irrigation lines, electrical lines, septic or drainage features, and tree roots before digging. +- Confirm that the existing porch and tree area can safely support the proposed swings. +- Check local permit and HOA requirements before changing the porch, walkway, or driveway edge. +- Plan the project in phases: walkway/edging first, foundation plants second, porch seating and lighting afterward. +- Consider Home Assistant-compatible switches or dimmers for porch and path lighting once the electrical layout is known. + +## Possible future phases + +1. Clean and define the driveway edge. +2. Install the curved brick walkway and bed edging. +3. Establish the main Florida-friendly planting beds and mulch. +4. Add porch swing, shade-tree swing, and outdoor cushions. +5. Add path lighting and porch lighting with local Home Assistant control. +6. Add irrigation, moisture, temperature, or outdoor-light sensors if useful. diff --git a/areas/network/devices_inventory.md b/areas/network/devices_inventory.md index 63e088c..f2adb66 100644 --- a/areas/network/devices_inventory.md +++ b/areas/network/devices_inventory.md @@ -1,8 +1,8 @@ --- title: Reyna Family Device Inventory type: living-inventory -updated: '2026-07-13' -version: 1 +updated: '2026-08-09' +version: 2 maintainer: Hermes Pi .126 sources: - deco_api @@ -16,6 +16,53 @@ sources: Living inventory. Update on new device, IP change, or replacement. Frontmatter YAML for machine parsing. +## Current Tactility fleet — friendly names + +| Device ID | Friendly name | Size | Current IP | mDNS hostname | +|---|---|---:|---|---| +| `kidsos_5690` | Elias | 2.8-inch / 320x240 | `192.168.68.107` | `kidsos-5690.local` | +| `kidsos_5c5c` | Grace | 2.8-inch / 320x240 | `192.168.68.114` | `kidsos-5c5c.local` | +| `kidsos_591c` | Kitchen | 2.8-inch / 320x240 | `192.168.68.128` | `kidsos-591c.local` | +| `kidsos_a790` | Personal / Dev | 3.5-inch / 480x320 | `192.168.68.129` | `kidsos-a790.local` | + +All four were live-verified on 2026-08-09 through the Tactility HTTP API. The RLCD board remains optional/retired because its display is broken. + +## Screen text update rule + +Before writing new text to a Tactility screen, send a full-size black RGB565 frame to `/api/screen/raw`, then send the new rendered frame. This avoids residual text from the previous screen showing through. + + +## Tactility apps, SD capacity, and usage report — 2026-08-09 + +Bible Verse and Voice Recorder are installed on all four boards at the current source manifest versions: Bible Verse `0.1.0` (code 2, SDK `0.8.0-dev`) and Voice Recorder `1.0.0` (code 1, SDK `0.8.0-dev`). No reinstall was needed. + +- **Elias** — SD `4.50 GB free / 8.04 GB total`; apps: Book Player 1.0.0, Robot Arm 0.1.0, Discovery Mountain 0.1.0, SD Downloader 1.0.0, Immich Elias 0.1.0, Bible Verse 0.1.0, ReynaBot 1.0.0, Voice Recorder 1.0.0, MP3 Player 1.0.0. Bible favorites: `[81]`; progress raw: `31093 / 66 22 21 / 65 403`. Podcast state: `308_Fear_S14E01`. +- **Grace** — SD `30.64 GB free / 31.09 GB total`; apps: SD Downloader 1.0.0, Discovery Mountain 0.1.0, Immich Elias 0.1.0, Robot Arm 0.1.0, ReynaBot 1.0.0, Voice Recorder 1.0.0, Book Player 1.0.0, Bible Verse 0.1.0, Breakout 0.7.0, 2048 0.9.0, MP3 Player 1.0.0, Pocket Dungeon 0.1.2. Bible favorites: `[]`; progress raw: `8890 / 11 5 12 / 10 172`. Podcast state: `308_Fear_S14E01`. +- **Kitchen** — SD `8.02 GB free / 8.04 GB total`; apps: Immich Elias 0.1.0, Robot Arm 0.1.0, ReynaBot 1.0.0, Voice Recorder 1.0.0, Bible Verse 0.1.0, Breakout 0.5.0, Dairy Notes 1.0.0, MP3 Player 1.0.0. Bible favorites: `[30027, 30074, 21959, 23647, 28782, 29304]`; progress raw: `13691 / 18 34 8 / 17 821`. No Discovery Mountain state file found. +- **Personal / Dev** — SD `12.77 GB free / 62.52 GB total`; apps: SD Downloader 1.0.0, Immich Elias 0.1.0, Snake 0.8.0, Discovery Mountain 0.1.0, Robot Arm 0.1.0, Bible Verse 0.1.0, Book Player 1.0.0, Voice Recorder 1.0.0, ReynaBot 1.0.0, Breakout 0.5.0, Dairy Notes 1.0.0, 2048 0.7.0, MP3 Player 1.0.0, Lua Game 0.2.0, Pocket Dungeon 0.1.2, Pipecat Voice 1.0.0. Bible favorites: `[18951, 19203, 19207]`; progress raw: `22889 / 38 1 12 / 37 11`. Podcast state: `318_Jakes_Promise_S13E01`; MP3 player state is empty. + +Podcast state is stored on SD in `/sdcard/apps/one.tactility.discoverymountain/userdata/state.json`; Bible data is in `/sdcard/user/app/one.tactility.bibleverse/{favorites.txt,progress.txt}`. The report distinguishes “last played” state from merely downloaded episode files. + +## CLI integrations + +`reyna-cli tactility report --json` now reads installed apps, sysinfo/SD capacity, Bible favorites/progress, Discovery Mountain state, MP3 state, and `/sdcard/dm` episode metadata. `reyna-cli tactility screen text "message"` clears the full native RGB565 framebuffer before drawing by default; use `--no-clear-first` only when intentionally layering content. + + +## Personal/Dev MCP smoke-test failures — 2026-08-09 + +All 25 live MCP tools were attempted on `kidsos_a790` / Personal / Dev. The following failures were verified and should remain future-work items: + +- **Persistent display ownership:** `clear_screen` and `draw_text` both return success and produce a visible white screen with text transiently, but the Tactility launcher later redraws the home screen. A foreground-app, launcher-suspend, or display-ownership mechanism is needed for persistent custom content. +- **mDNS resolution from CLI host:** `kidsos-a790.local` was not resolvable during MCP CLI calls; the reserved-IP fallback `192.168.68.129` worked. Keep mDNS-first with reliable IP fallback and investigate why local resolution differs from the board's advertised hostname. +- **`record_voice`:** board returned `Failed to open the recording file`; investigate VoiceRecorder/app-user-data mount and microphone/storage permissions. +- **`get_battery`:** board returned `Power device not found`; this hardware has no exposed power-management device. Treat battery as unsupported rather than a fleet-wide failure. +- **`scan_ble`:** board returned `BLE device not found`; investigate firmware/BLE hardware configuration or mark BLE unavailable on this board. +- **`download_file`:** board returned `Failed to open connection`; investigate outbound networking, DNS, HTTPS support, and URL-fetch implementation. +- **`list_files`:** MCP paths are relative to `/sdcard`, not absolute. `/`, `/sdcard`, `/sdcard/`, and empty path failed, while `apps`, `user`, `user/app`, `dm`, and `memos` succeeded. Personal/Dev currently exposes downloaded podcast files under `dm/` and WAV voice memos under `memos/`. +- **`play_audio` and `play_mp3`:** MCP requires a simple relative filename and rejects subdirectories (`filename must be a simple relative name`), so it cannot directly play files in `memos/` or `dm/`. The MP3 Player source correctly normalizes an app launch `file` parameter to `/sdcard/...`, but the current `/app/run` HTTP route returned 404 when given the file parameter. Add a supported app-launch-parameter or path-aware playback integration. + +The LED was returned to `off` after testing. The CLI test suite remained green: 255 passed, 1 existing deprecation warning. + ## Summary Stats - Total tracked: 29 Deco clients + 6 Deco nodes + 9 canonical in local_devices.yaml = ~35 unique logical devices diff --git a/areas/operations/service_health_checks.jsonl b/areas/operations/service_health_checks.jsonl new file mode 100644 index 0000000..fd4320b --- /dev/null +++ b/areas/operations/service_health_checks.jsonl @@ -0,0 +1,14952 @@ +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 6, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 614, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1141, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "HTTP 308", "elapsed_ms": 76, "group": "esp32", "http_status": 308, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-15T22:45:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 572, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 131, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 153, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 136, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 10, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T02:13:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 516, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 93, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1039, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T03:14:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 7, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 562, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1081, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 72, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T04:14:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 511, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 138, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 82, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T05:15:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 546, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 126, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1595, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T06:15:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 532, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 139, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 52, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 85, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T07:15:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 520, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 110, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T08:15:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 636, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 97, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T09:15:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 580, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 139, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1026, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T10:16:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 545, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 133, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T11:16:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 657, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1100, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T12:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 612, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 245, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1093, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T13:16:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 663, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T14:16:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T15:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 574, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 37, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T16:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 631, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 250, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T17:17:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 570, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T18:17:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 763, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1275, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 123, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T19:17:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 680, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1093, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 136, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T20:17:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 721, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 162, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 46, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T21:17:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 90, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1395, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 89, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T22:17:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 642, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 86, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1021, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 59, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-16T23:17:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 568, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1051, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 67, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T00:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 690, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 333, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 189, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1061, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T01:18:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 619, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T02:18:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 673, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1049, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T03:18:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 589, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1165, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 70, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T04:18:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 555, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1089, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T05:18:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 497, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1089, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 123, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T06:18:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 503, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 121, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T07:19:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 463, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 137, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5001, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T08:19:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 583, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1039, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T09:19:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 653, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1017, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 139, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T10:19:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 658, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 70, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 109, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T11:19:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 571, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1059, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 246, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T12:19:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 512, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T13:19:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 588, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 162, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 453, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 107, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T14:20:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 7, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 548, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 295, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1106, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T15:20:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 10, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 623, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 134, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 1157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 73, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T16:20:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 505, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 379, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 349, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 69, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T17:20:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 588, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 291, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1103, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 69, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T18:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 597, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 192, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1143, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 41, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T19:21:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 738, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 206, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T20:22:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 603, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 132, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T21:22:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1033, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T22:23:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 703, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-17T23:24:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 633, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1071, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 126, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T00:24:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 528, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 164, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1985, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 136, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T01:24:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 527, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 187, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 29, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T02:25:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 541, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 143, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 121, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T03:25:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 700, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 145, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T04:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 542, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 97, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1030, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 258, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T05:26:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 455, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 192, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 142, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1081, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T06:26:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 562, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 194, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 141, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2285, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 122, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T07:27:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 502, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 96, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1205, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 264, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T08:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 513, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 187, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 237, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T09:28:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 498, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 303, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 53, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T10:28:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 559, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 109, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T11:28:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 670, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T12:28:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 653, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 241, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1099, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T13:29:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 594, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 143, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 150, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 142, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T14:29:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 655, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "OSError: [Errno 65] No route to host", "elapsed_ms": 1, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T15:29:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 570, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 367, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T16:30:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 584, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 345, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T17:30:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 574, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 87, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5004, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 80, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T18:30:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 654, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 87, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 291, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 94, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T19:31:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 657, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 142, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 79, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T20:31:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 589, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 86, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 225, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 87, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T21:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 587, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 187, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 54, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T22:32:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 491, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 317, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-18T23:33:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 570, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 190, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "OSError: [Errno 65] No route to host", "elapsed_ms": 1, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 69, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T00:33:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 659, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 66, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T01:33:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 777, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1082, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 57, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T02:34:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 626, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 127, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5001, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 58, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T03:34:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 620, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 217, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 181, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1126, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 128, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T04:35:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 584, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 157, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 130, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 189, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 82, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T05:35:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 614, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 241, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 151, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 203, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 71, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T06:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 178, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 199, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 197, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 60, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T07:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 766, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 142, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T08:37:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 574, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 166, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T09:37:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 707, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 140, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T10:37:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 589, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 80, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T11:38:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 546, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 147, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 81, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T12:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 629, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 58, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T13:39:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 683, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 194, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 149, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5004, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T14:39:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 555, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1007, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 48, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T15:40:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 638, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 82, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T16:40:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 623, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1007, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T17:41:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 695, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 42, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T18:41:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 614, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 244, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5004, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 26, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T19:42:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 674, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5004, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 142, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T20:42:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 80, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T21:42:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 621, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1032, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 136, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T22:43:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 504, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5001, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 131, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-19T23:43:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 565, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 52, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T00:44:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 559, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 238, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T01:45:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 552, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 91, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5002, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 124, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T02:45:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 676, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 295, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1048, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T03:46:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 619, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T04:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 586, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 136, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 84, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T05:47:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 604, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 137, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 85, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T06:48:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 594, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 244, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5001, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 130, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T07:48:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 565, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 139, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 89, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T08:49:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 588, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 51, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T09:49:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 555, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 147, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 80, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T10:50:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 594, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 124, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T11:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 649, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 190, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5002, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T12:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 615, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 189, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 85, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T13:52:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 597, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 28, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T14:52:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 607, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 71, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T15:53:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 672, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 84, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1136, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 77, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T16:54:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 625, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 302, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T17:54:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 617, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1068, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T18:54:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 609, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 192, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 31, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T19:54:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 9, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 123, "group": "home", "http_status": 521, "kind": "http", "service": "authentik", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 214, "group": "home", "http_status": 521, "kind": "http", "service": "photos-immich", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 134, "group": "home", "http_status": 521, "kind": "http", "service": "nextcloud", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 131, "group": "home", "http_status": 521, "kind": "http", "service": "jellyfin", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 114, "group": "home", "http_status": 521, "kind": "http", "service": "homarr-dashboard", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 100, "group": "home", "http_status": 521, "kind": "http", "service": "memos", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 123, "group": "home", "http_status": 521, "kind": "http", "service": "n8n", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 16, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-api-primary", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 124, "group": "emi", "http_status": 521, "kind": "http", "service": "emi-api-family-route", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 79, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "HTTP 521", "elapsed_ms": 122, "group": "emi", "http_status": 521, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1125, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-20T23:36:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 488, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2069, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T00:37:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 611, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 68, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1033, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T01:38:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 564, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 295, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1250, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1065, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T02:38:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 629, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1067, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5001, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T03:39:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 525, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1022, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T04:39:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 594, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 85, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 132, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1018, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T05:40:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 612, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 213, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4092, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T06:40:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 547, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 189, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 88, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 145, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1048, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1119, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T07:41:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 639, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 78, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1097, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T08:41:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 562, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1046, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T09:42:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 483, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T10:42:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 626, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 136, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1075, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T11:43:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 622, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1080, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T12:43:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 604, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 278, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T13:44:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 624, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 143, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 55, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 190, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T14:45:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 699, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 68, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1063, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T15:45:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 626, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T16:46:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 480, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 142, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 167, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1044, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T17:47:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 560, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T18:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 533, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T19:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 532, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 95, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T20:48:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 568, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 290, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1402, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 109, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T21:49:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 688, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T22:49:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 562, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 631, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-21T23:50:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 533, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 82, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1263, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T00:51:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 669, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1033, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T01:51:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 581, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1100, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T02:51:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 523, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1149, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T03:52:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 564, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 133, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T04:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 515, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T05:53:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 911, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 118, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 144, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T06:54:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 195, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T07:55:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 453, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 137, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1222, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T08:55:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 466, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 128, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1076, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T09:56:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 599, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T10:56:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 635, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1145, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T11:57:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 575, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 163, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 209, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1059, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T12:57:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 635, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1099, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5001, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T13:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 622, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 184, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 128, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1093, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T14:58:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 564, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 241, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1031, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T15:59:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 598, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T17:00:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 645, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1052, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T18:00:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 586, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T19:01:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 644, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 233, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1401, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T20:01:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 657, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1047, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T21:01:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 552, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 289, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 196, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1128, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T22:02:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 535, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 418, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 144, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-22T23:03:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 836, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T00:03:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 768, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 133, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 307, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T01:03:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 695, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 195, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 189, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T02:04:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 754, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 338, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 19, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 364, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5001, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T03:05:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 638, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 128, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 20, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 127, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1033, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T04:06:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 618, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1030, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 0, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T05:07:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 531, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T06:07:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 471, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 187, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 147, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T07:08:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 598, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 190, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T08:09:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 482, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1084, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T09:09:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 530, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 77, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 145, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1064, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T10:10:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 710, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1093, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T11:10:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 631, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 254, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 151, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 213, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1046, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T12:11:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 499, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T13:11:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 604, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 304, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 131, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1037, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T14:12:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 534, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 133, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 187, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1045, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T15:13:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 624, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T16:13:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 570, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 184, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1099, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T17:14:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 529, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 135, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1603, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T18:15:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 638, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 121, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T19:15:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 504, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1120, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T20:16:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 686, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 414, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 5, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1068, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T21:16:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 662, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 604, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 81, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 216, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T22:16:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 972, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 824, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2055, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 360, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-23T23:17:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 815, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 525, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1083, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2296, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T00:18:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2021, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 340, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2752, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 343, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 365, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T01:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1087, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 837, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 833, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 154, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 323, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1115, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T02:19:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 874, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 846, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1285, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 182, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 134, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T03:20:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 735, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 687, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 478, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T04:20:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 735, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 746, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 189, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 127, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T05:21:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 984, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 343, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 85, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1106, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 102, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T06:21:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 771, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 308, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 118, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T07:22:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 615, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 185, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1118, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T08:22:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 784, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 308, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1064, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 131, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T09:22:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 616, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 189, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1027, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T10:23:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 602, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 137, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 45, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 142, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T11:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 763, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 569, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 157, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1279, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T12:23:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 811, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 543, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 138, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T13:24:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 569, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1119, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 138, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T14:24:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 524, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1083, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T15:25:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 772, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 328, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 397, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 322, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 120, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T16:25:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 643, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 314, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 372, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 193, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 253, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T17:25:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 809, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 303, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 404, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 319, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 212, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 201, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1026, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T18:25:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 680, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 304, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 328, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 245, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 192, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 195, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1062, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 545, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T19:26:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 647, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 325, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 332, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 293, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 123, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T20:26:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 666, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 314, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 85, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 210, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 240, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T21:27:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 668, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 515, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 202, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1073, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T22:27:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 644, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 250, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1027, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-24T23:28:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 700, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 290, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1211, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 193, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1214, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T00:28:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 642, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 209, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T01:28:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 680, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 306, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 198, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 187, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T02:29:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 728, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 311, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 489, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 209, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 193, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1029, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T03:29:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 556, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 290, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 164, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 200, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 191, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1112, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T04:30:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 792, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 195, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1031, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 134, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T05:31:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 633, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 73, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1084, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T06:31:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 531, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 163, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 196, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T07:31:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 591, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 196, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T08:32:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 686, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1038, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T09:32:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 684, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1064, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T10:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 507, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 135, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T11:33:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 722, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 144, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T12:34:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 578, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1067, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 459, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T13:34:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 551, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 303, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 289, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 145, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1065, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T14:34:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 561, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1218, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 112, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T15:35:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 892, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 239, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1038, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T16:36:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 952, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 289, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1051, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T17:37:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 950, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T18:37:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1161, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T19:38:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 538, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1089, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T20:38:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1031, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 169, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 351, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 681, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1089, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T21:40:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 589, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 142, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1119, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T22:41:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 978, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 302, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1146, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-25T23:41:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 946, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 563, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1040, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T00:42:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 9, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1034, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 5, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1030, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T01:43:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 949, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1060, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T02:43:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 886, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 185, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 140, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1829, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T03:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 946, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1024, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T04:44:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 514, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 270, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T05:45:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 877, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1114, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T06:45:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 541, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T07:47:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 884, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 63, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T08:48:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 955, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 89, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T09:48:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 979, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 150, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 110, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1106, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 126, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T10:49:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1128, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T11:49:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 891, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 137, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 192, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T12:50:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 877, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 134, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T13:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 940, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1095, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T14:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1088, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 107, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1167, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T15:53:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 841, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 299, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 314, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 326, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 189, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1108, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 76, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T16:53:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T17:54:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 661, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 151, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 375, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1032, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5001, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T18:54:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 611, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 198, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T19:55:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1045, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 282, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T20:55:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1011, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1032, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 55, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T21:56:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 965, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1095, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T22:58:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 909, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 663, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 302, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3635, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1076, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-26T23:58:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 624, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 150, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 107, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1081, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T00:59:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1108, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1047, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 134, "group": "esp32", "http_status": 200, "kind": "http", "service": "kitchen-esp32", "status": "ok", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T01:59:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1087, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T03:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 991, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T04:01:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 598, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1052, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T05:02:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 826, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 134, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 149, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T06:04:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 944, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 318, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 151, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T07:04:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 836, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1078, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T08:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1004, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 913, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 972, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1045, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T11:07:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 908, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 162, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T12:07:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1013, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 132, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 282, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 186, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 124, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T13:09:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 799, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T14:09:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 917, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 321, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 292, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T15:10:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1014, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T16:11:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 952, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 154, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 284, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1102, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T17:11:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 987, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 162, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1060, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1106, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T18:12:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 981, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 292, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 217, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1107, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T19:12:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 968, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 305, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 207, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1031, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1103, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T20:13:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 929, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 295, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 232, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1046, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1114, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T21:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 978, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1103, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T22:15:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 968, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1114, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-27T23:16:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 479, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T00:22:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 613, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 53, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 14, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1057, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T00:47:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 895, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 131, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T01:47:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1108, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 299, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 317, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T02:47:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 565, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 183, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T03:48:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T04:48:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 937, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T05:49:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 655, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 238, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T06:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 626, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 249, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T07:50:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 604, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 188, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 91, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1076, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T08:50:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 962, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T09:51:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 578, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T10:52:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 840, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1110, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T11:53:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 924, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 183, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T12:53:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 601, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 307, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 139, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1082, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T13:54:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 522, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1021, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T14:55:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 943, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 178, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 138, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1026, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T15:55:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 975, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T16:56:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 972, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 313, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 290, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T17:56:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 959, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1061, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T18:57:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 674, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 831, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 179, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1100, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T19:57:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 939, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 313, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 303, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 98, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T20:59:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 641, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T22:00:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 918, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 146, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-28T23:00:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1043, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1320, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T00:01:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 595, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T01:01:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 852, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 853, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 250, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 176, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 144, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1029, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T02:02:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 855, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T03:02:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 607, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 168, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1095, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T04:03:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 623, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1065, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T05:04:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 588, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 801, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 147, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1059, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T06:04:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 544, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 1155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1078, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T07:05:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 957, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 150, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 110, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T08:05:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 960, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1124, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T09:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 594, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1082, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T10:06:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1013, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T11:07:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 912, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1095, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T12:08:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 552, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 598, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 554, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 136, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 130, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T14:08:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 881, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1023, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T15:09:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 955, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 244, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T16:10:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 994, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 235, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 135, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1117, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T17:10:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 901, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 175, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 137, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T18:11:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 587, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 175, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 91, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T19:12:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 916, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 815, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 139, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 198, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1120, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T20:13:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 931, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 235, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1110, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T21:13:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 188, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T22:14:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1013, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 176, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 143, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 189, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-29T23:14:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 976, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1362, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1075, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T00:14:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 546, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T01:15:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 890, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 800, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 245, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 137, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T02:16:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 857, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1030, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T03:17:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 507, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1042, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T04:18:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 890, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T05:19:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 934, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1122, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T06:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 522, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 136, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 147, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T07:20:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 516, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T08:20:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1007, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 152, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T09:21:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 816, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 148, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T10:22:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 548, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T11:22:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 996, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 139, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T12:23:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 864, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 845, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 187, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 151, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 138, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T13:23:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 889, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1347, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T14:24:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 842, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T15:24:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1035, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 194, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 270, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 97, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1117, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T16:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 721, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1126, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T17:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 938, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 241, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 196, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T18:26:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 643, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 134, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T19:27:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 969, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 168, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 128, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 143, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T20:27:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 486, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 138, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 177, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 238, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 132, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T21:27:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 998, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 887, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 270, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1192, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T22:28:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 942, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 125, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 128, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-30T23:29:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 607, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1880, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T00:29:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 911, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 182, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T01:30:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 967, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 188, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 252, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 145, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T02:31:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 630, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 153, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 284, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1065, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T03:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 992, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 128, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1076, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T04:31:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 958, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T05:32:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 545, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 307, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 598, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T06:32:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 882, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T07:32:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 611, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T08:33:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 930, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 211, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T09:35:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 897, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T10:35:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 896, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 134, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 93, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T11:36:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 950, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1144, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T12:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 579, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 380, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 179, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 149, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1066, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T13:36:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 979, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 301, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T14:37:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1006, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 306, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 162, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 195, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1019, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T15:37:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 921, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 187, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 238, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 138, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1012, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T16:38:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1079, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 177, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 316, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 143, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 197, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1061, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T17:39:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 635, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1108, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T18:40:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 613, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 195, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 289, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1117, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T19:41:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 949, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 808, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 319, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 167, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 189, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1065, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T20:41:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1034, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 295, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T21:42:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 589, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 245, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T22:42:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 506, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 126, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 142, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-08-31T23:43:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 984, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1418, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 185, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 141, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T00:44:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 822, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 192, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1100, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T01:44:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 925, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 183, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 86, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 148, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1115, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T02:45:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 823, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1057, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T03:45:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 531, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1097, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T04:46:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 880, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 186, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T05:47:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 649, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 96, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1038, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T06:47:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 967, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1118, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T07:48:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 961, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1075, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T08:49:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 498, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 188, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 144, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T09:49:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 892, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 264, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 296, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1099, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T10:50:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 927, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T11:50:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 860, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 270, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 196, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1020, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T12:51:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 592, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 188, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1124, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T13:51:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1019, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 318, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 138, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1041, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T14:53:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 585, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 780, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 250, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 146, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T15:54:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 919, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 171, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T16:55:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 607, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T17:55:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 711, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 177, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 89, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T18:56:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 506, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 287, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 148, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T19:56:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1079, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 311, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 195, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 326, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 31, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T20:57:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 571, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1068, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T21:57:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 956, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 140, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1045, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T22:58:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 838, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 140, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-01T23:59:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 602, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 177, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 131, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T01:00:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 546, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 128, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 299, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T02:01:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 488, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 149, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 418, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T03:01:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 828, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 144, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 189, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 138, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 409, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T04:01:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 883, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 440, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T05:02:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 850, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 414, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T06:03:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 912, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 463, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T07:03:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 960, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 97, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 528, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T08:04:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 697, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 194, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 437, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T09:05:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 543, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 304, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 463, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T10:06:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 554, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5004, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T11:06:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 660, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 762, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 461, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T12:07:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 920, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 152, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 560, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T13:08:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 692, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 151, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 305, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 196, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 188, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 442, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T14:08:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 888, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 153, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 198, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 488, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T15:08:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 931, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 330, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 149, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 293, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 123, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 447, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T16:09:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 653, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 393, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T17:09:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 543, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 304, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 183, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 431, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T18:10:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1013, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 138, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 292, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 421, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T19:11:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 639, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 135, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 393, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T20:12:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 566, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 385, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T21:13:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 482, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 194, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 389, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T22:14:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 970, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 380, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 461, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-02T23:14:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 989, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 190, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 235, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 444, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T00:15:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 552, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 307, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 150, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 217, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 451, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T01:15:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 950, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 145, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 417, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T02:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 933, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 406, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T03:17:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 850, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 292, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 734, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 918, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 145, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 393, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T05:18:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 970, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 373, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T06:18:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 863, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 96, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 425, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T07:19:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 938, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 429, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5005, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T08:19:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 458, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 145, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T09:20:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 872, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 472, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T10:21:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 990, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 423, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T11:21:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 811, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 484, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T12:22:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 920, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 310, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 110, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 476, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T13:23:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 948, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 497, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T14:23:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 557, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 306, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 94, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 424, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T15:24:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 914, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 104, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 432, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T16:25:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1015, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 328, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 138, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 202, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 410, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T17:25:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 718, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 310, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 489, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T18:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 981, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 290, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 426, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T19:26:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 544, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 170, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 207, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 208, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 426, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T20:27:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 3, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 963, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 374, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T21:28:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 4, "group": "brain", "kind": "http", "service": "browser-dashboard", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1196, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 379, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 198, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 545, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T22:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1005, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 331, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 353, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 153, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 344, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-03T23:30:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 761, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 339, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 311, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 425, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T00:31:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 546, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 355, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 356, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 329, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 135, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 31, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T01:31:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 301, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 188, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 213, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 131, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 31, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T02:32:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 983, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 139, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T03:32:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 976, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 140, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T04:33:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 875, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 244, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T05:35:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 682, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 197, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 243, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 95, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 132, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T06:35:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 867, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 143, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 164, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T07:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 906, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 233, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T08:36:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 830, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 145, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 134, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 34, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T09:37:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 950, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 139, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 245, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 33, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T10:37:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 961, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 84, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 138, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T11:37:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 660, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 191, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 127, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 193, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 137, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 35, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T12:38:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 151, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 139, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T13:39:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1336, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 339, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 315, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 181, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 378, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 482, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 32, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T14:39:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 622, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 142, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1083, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T15:40:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 995, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1062, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T16:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 2815, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1019, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T17:41:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 911, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T18:42:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 635, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 549, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 189, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T19:42:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 772, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1182, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T20:43:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1153, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 309, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 319, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 119, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T21:43:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 707, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 296, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 188, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T22:44:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 914, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 4545, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-04T23:44:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 7, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 632, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 154, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T00:45:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1103, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 324, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 383, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 404, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 133, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1141, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T01:46:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1029, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 365, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 363, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 163, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 202, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1053, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T02:46:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 862, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 318, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 315, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1081, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T03:47:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 904, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T04:47:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 970, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 139, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 91, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 142, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T05:47:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 998, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1097, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T06:48:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1048, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 91, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1059, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T07:49:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 474, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1030, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T08:50:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 648, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 136, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1108, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T09:50:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 568, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T10:51:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 606, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 316, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T11:51:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 955, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 128, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1012, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T12:52:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 666, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T13:52:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 8, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 901, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 140, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 318, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 183, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T14:53:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 509, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T15:54:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 909, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 294, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 191, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1119, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T16:55:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 536, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T17:56:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 883, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 301, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T18:56:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 668, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 138, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 96, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1062, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T19:57:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 884, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 187, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T20:59:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 971, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 187, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1058, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T21:59:11+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 944, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1047, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-05T23:00:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 613, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T00:01:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 890, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1037, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T01:02:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 901, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 143, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1165, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T02:02:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 130, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1068, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T03:04:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 623, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 153, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T04:05:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 855, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1144, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T05:05:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 896, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1126, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T06:06:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 603, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1056, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T07:07:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 897, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 149, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 239, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T08:08:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 583, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 149, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T09:08:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 850, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 339, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 209, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T10:10:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 814, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 208, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1067, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T11:11:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 988, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1082, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T12:11:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 883, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 141, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 152, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T13:12:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 890, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 100, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1116, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T14:12:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 943, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T15:13:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1024, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1059, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T16:14:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 889, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 214, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1092, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T17:15:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 8, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 941, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 150, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 0, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1083, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T18:16:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 969, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 183, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1118, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T19:16:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 965, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 161, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T20:17:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 934, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1056, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T21:18:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 550, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1093, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T22:19:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1057, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-06T23:20:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 948, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 195, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 189, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T00:20:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 969, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 287, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T01:21:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 488, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1065, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T02:21:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 991, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1049, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T03:22:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 937, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 314, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T04:24:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 900, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 137, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1331, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T05:24:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 929, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1199, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T06:25:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 977, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1081, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T07:25:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 510, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 153, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1026, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T08:26:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 973, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 152, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T09:26:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 989, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T10:27:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1001, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 138, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 141, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1139, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T11:29:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 568, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 256, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T12:29:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 950, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 164, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1110, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T13:30:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 850, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 181, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1060, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T14:30:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1048, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 187, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T15:31:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 834, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1062, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T16:31:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 979, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1097, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T17:33:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 578, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T18:34:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1057, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 311, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1084, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T19:34:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1018, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 244, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 181, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T20:35:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 989, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 239, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 737, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1063, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T21:36:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 949, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 294, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T22:36:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 922, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 613, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 164, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 293, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-07T23:38:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1010, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 210, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1055, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T00:38:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 612, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 180, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T01:39:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 819, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 322, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1126, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T02:39:33+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 8, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 946, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1057, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T03:40:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 954, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T04:41:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T05:42:02+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1056, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 148, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1214, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T06:43:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1015, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T07:43:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 633, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 135, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1091, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T08:44:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 869, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 251, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1115, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1011, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T09:44:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 920, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 150, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T10:45:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1028, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 145, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1032, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T11:47:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 963, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T12:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1021, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1103, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T13:48:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 973, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 285, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T14:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1020, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 161, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 315, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 194, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1015, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T15:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 867, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 202, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1041, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T16:49:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 912, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 303, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 163, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 182, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 72, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T17:50:52+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 971, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 64, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T18:52:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1001, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 322, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 258, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 157, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 196, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 47, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T19:52:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 962, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 187, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 187, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 38, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T20:53:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 84, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T21:54:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 911, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 290, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 364, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 322, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 83, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T22:54:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1040, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 247, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 318, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 215, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 103, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-08T23:55:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1039, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 287, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 208, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 200, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 62, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T00:57:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 926, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 312, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 165, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 296, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 3192, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T01:58:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 891, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 198, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 197, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 73, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T02:59:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 885, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 270, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 55, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T03:59:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 973, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 144, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 153, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 63, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T05:00:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 827, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 200, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 86, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T06:00:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 487, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 58, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T07:01:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 909, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 156, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 108, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 104, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T08:02:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 921, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 203, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 232, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 89, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T09:03:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 552, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 231, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 166, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T10:03:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 940, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 167, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 169, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 179, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T11:04:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 485, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T12:05:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1234, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 321, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 422, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 310, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 303, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 179, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 215, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 118, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T13:05:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 686, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 332, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 308, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 325, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 209, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 206, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 86, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T14:07:06+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 746, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 363, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 182, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T15:07:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 667, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 198, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T16:08:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 982, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 289, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 387, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 181, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 181, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1075, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T17:09:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1263, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 241, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 121, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 192, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T18:09:43+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1077, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 333, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 192, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 284, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T19:10:53+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 984, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 313, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 345, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 120, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 331, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T20:12:03+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 667, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 325, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 218, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 255, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T21:12:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 632, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 369, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 197, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 228, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T22:13:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1061, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 335, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 290, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 270, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-09T23:13:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 903, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 147, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 351, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 249, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T00:14:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 6, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 940, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 302, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 241, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 98, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1110, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T01:14:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 529, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1034, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T02:15:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1009, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 150, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1039, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T03:16:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 533, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 261, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1060, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T04:17:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 548, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 255, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 253, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1013, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T05:18:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 975, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 147, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 193, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T06:18:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 923, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 261, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 112, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1005, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T07:19:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 853, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 161, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T08:19:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 959, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1068, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T09:21:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 993, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1012, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T10:21:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 923, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 140, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 185, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1011, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T11:22:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 514, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 330, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 272, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1024, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T12:23:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 544, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 222, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1113, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T13:23:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 734, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 299, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 315, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 178, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1016, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T14:24:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 626, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 4, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T15:25:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 894, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 330, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 393, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 207, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 337, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1078, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1011, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T16:26:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 849, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 156, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 193, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1031, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T17:26:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 596, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 145, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 300, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 155, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 173, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T18:27:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1129, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 344, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 333, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 248, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 282, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 125, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T19:28:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 917, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 514, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 223, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 272, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1056, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T20:29:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 930, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 213, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 282, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 188, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1129, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T21:29:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 970, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 275, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 154, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1026, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T22:31:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 883, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 250, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 322, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-10T23:31:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 898, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 372, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1040, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T00:32:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 955, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 321, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T01:32:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1006, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 273, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1074, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T02:33:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 927, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 286, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2836, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T03:33:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1051, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 832, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1405, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 880, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 395, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 294, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T04:35:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1282, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 307, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 369, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 846, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 384, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 270, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1071, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T05:36:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1131, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 781, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 311, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 367, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 829, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 791, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 371, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 286, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T06:36:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 988, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 111, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T07:37:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 905, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 254, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 136, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 101, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 186, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1064, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T08:37:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 977, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 249, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1035, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T09:38:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 946, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 268, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 215, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 181, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1103, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T10:39:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 897, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 194, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1036, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T11:40:14+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 925, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 371, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 234, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T12:41:23+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 934, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T13:41:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 999, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1222, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 376, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 812, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 665, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 816, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 216, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T14:42:41+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 915, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 186, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1101, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T15:43:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 983, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 311, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 171, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 378, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1055, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1024, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T16:45:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 958, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 317, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 230, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 310, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 109, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 183, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T17:45:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 953, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 236, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 181, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1085, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T18:46:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 617, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 301, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 250, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 226, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 352, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 191, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1025, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T19:47:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 631, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 315, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 172, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 280, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 221, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 169, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1023, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T20:47:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1015, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 295, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 183, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 208, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1111, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T21:48:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 668, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 235, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1022, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T22:49:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 913, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 292, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 184, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1110, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-11T23:50:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1066, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 686, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 196, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 295, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 118, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 171, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1047, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T00:51:13+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 980, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 4, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 284, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 314, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 198, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1027, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1011, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T01:51:22+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1000, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 160, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 148, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1089, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T02:52:32+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 977, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 313, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 233, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 205, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 154, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 181, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T03:53:42+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1000, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 321, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 245, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1127, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T04:53:51+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 886, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 244, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1031, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T05:55:01+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 956, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 301, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 99, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1105, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T06:55:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 621, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 248, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 204, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T07:56:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 960, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 154, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 242, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 175, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 167, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1067, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T08:56:30+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 574, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 252, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 224, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 146, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T09:57:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 585, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 302, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 148, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 265, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 168, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1049, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T10:57:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 567, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 268, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 585, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 237, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1029, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T11:58:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 877, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 690, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 405, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 621, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 644, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 663, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 202, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 176, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 537, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1083, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1013, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T13:00:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 972, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 320, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 139, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 180, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 275, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1090, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T14:01:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 572, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 210, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1115, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T15:01:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1000, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 299, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 152, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5003, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T16:02:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1012, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 305, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 246, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 201, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 151, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T17:03:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 590, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 92, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 149, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1051, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1009, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T18:03:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 9, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 647, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 165, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1130, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T19:05:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 5, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 650, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 276, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 152, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1096, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T20:06:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 879, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 161, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 297, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1052, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1012, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T21:07:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 705, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 279, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 306, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 288, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 163, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1127, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T22:08:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 895, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 189, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 146, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 277, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1028, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-12T23:09:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 896, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 260, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 151, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 282, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 102, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T00:10:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 988, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 198, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 202, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 204, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 75, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T01:11:59+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 534, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 199, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 211, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 158, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1087, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T02:13:09+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 947, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 197, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 262, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 105, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1120, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T03:14:19+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1040, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 274, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 267, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 177, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 156, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1107, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T04:15:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1011, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 271, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 4, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 163, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 259, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 159, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1045, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T05:15:39+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 565, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 276, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 144, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 237, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 163, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1100, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T06:16:49+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 922, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 208, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 146, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 156, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1098, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T07:16:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1042, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 273, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 270, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 189, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 199, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 148, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 146, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1225, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T08:18:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 568, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 296, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 288, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 201, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1077, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T09:18:18+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 883, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 230, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 237, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 206, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 173, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1114, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T10:19:28+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 895, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 185, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 152, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 263, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 186, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1149, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1010, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T11:19:38+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 936, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 190, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1127, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T12:20:48+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 549, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 220, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 264, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 188, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1086, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T13:21:58+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 608, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 297, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 293, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 247, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 119, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1121, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T14:22:08+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 859, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 286, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 209, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 278, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 157, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1094, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T15:23:17+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 973, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 211, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 195, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 158, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 285, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1067, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1011, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T16:24:27+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 942, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 179, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 148, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 220, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 257, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 170, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T17:24:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 616, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 299, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 190, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 255, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 178, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 2033, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T18:25:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 867, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 278, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 160, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 258, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 181, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T19:25:57+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 619, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 287, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 185, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 209, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1102, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T20:27:07+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 896, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 301, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 234, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 196, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 298, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 106, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 196, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1119, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T21:27:16+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1041, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 188, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 157, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 192, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 174, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1122, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T22:28:26+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1058, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 155, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 154, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 214, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 153, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1023, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-13T23:29:36+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 993, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 192, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 280, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 249, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 157, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 165, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 254, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 155, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1125, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T00:29:46+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 862, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 216, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 349, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 253, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 279, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 113, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 162, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1109, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T01:30:56+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 555, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 259, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 156, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 217, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 260, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1127, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 154, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1075, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1013, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T02:31:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 664, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 207, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 277, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 296, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 159, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T03:32:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 973, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 166, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 257, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 240, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 658, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 119, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 182, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1069, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T04:33:25+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 982, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 284, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 225, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 177, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 233, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 166, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1070, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T05:33:35+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 937, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 267, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 224, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 231, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1072, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T06:34:45+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 528, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 213, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 251, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 223, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 178, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 172, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 159, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 103, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 218, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1732, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T07:34:55+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 872, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 202, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 269, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 212, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 229, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 170, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 175, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1117, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1008, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T08:36:05+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 877, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 184, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 214, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 227, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 168, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 219, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 158, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 160, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1048, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T09:36:15+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 674, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 282, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 149, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 269, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 107, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 191, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1114, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T10:37:24+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 916, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 171, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 242, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 163, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 164, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 143, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 240, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 115, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1088, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T11:37:34+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 876, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 300, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 243, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 153, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 169, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 262, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 160, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 157, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1082, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T12:38:44+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 516, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 283, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 256, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 173, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 216, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 281, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 116, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 225, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1047, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T13:39:54+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 909, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 397, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 236, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 676, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 263, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 170, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 299, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 117, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 190, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1389, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T14:40:04+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1000, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 204, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 238, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 313, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 245, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 229, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 151, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 295, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 172, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 185, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1097, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T15:41:12+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 981, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 176, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 221, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 294, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 228, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 191, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 142, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 271, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 114, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "TimeoutError: timed out", "elapsed_ms": 5002, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T16:42:21+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 929, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 215, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 292, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 360, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 182, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 183, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 212, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 296, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 167, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 209, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1054, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1001, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T17:43:31+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1009, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 151, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 290, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 210, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 161, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 175, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 218, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 162, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 176, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1073, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1005, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T18:43:40+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 968, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 201, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 314, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 265, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 218, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 205, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 3, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 227, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 290, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 166, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 180, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 3079, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1007, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T19:44:50+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 679, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 167, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 198, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 298, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 231, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 181, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 155, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 297, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 164, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 177, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1044, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T20:46:00+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 910, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 186, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 209, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 246, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 235, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 162, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 225, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 283, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 184, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1223, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 2, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T21:47:10+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 904, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 200, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 281, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 232, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 194, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 206, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 228, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 274, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 171, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 201, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1050, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5004, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T22:47:20+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 4, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1029, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 187, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 341, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 226, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 180, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 203, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 131, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 295, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 211, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 172, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1360, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5003, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-14T23:48:29+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 1068, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 170, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 222, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 291, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 159, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 149, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 328, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 168, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 161, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1043, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1004, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 5002, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1003, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-15T00:49:37+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "brain", "kind": "tcp", "service": "hermes-gateway", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "path exists", "group": "brain", "kind": "file", "mode": "0o600", "path_type": "socket", "service": "reyna-cli-privacy-socket", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 3, "group": "brain", "http_status": 200, "kind": "http", "service": "browser-dashboard", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 0, "group": "voice", "kind": "tcp", "service": "kokoro-tts", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 893, "group": "home", "http_status": 200, "kind": "http", "service": "authentik", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 219, "group": "home", "http_status": 200, "kind": "http", "service": "photos-immich", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 193, "group": "home", "http_status": 200, "kind": "http", "service": "nextcloud", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 266, "group": "home", "http_status": 200, "kind": "http", "service": "jellyfin", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 217, "group": "home", "http_status": 200, "kind": "http", "service": "homarr-dashboard", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 158, "group": "home", "http_status": 200, "kind": "http", "service": "memos", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 200", "elapsed_ms": 174, "group": "home", "http_status": 200, "kind": "http", "service": "n8n", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 2, "group": "home", "kind": "tcp", "service": "instatic", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "tcp connection accepted", "elapsed_ms": 1, "group": "home", "kind": "tcp", "service": "pihole-admin", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 221, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-primary", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 404", "elapsed_ms": 266, "group": "emi", "http_status": 404, "kind": "http", "service": "emi-api-family-route", "status": "ok", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 174, "group": "emi", "kind": "http", "service": "emi-frontend", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "HTTP 502", "elapsed_ms": 165, "group": "emi", "http_status": 502, "kind": "http", "service": "emi-wordpress", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "ConnectionRefusedError: [Errno 61] Connection refused", "elapsed_ms": 1133, "group": "esp32", "kind": "tcp", "service": "reyna-cli-kidsos", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1006, "group": "esp32", "kind": "http", "service": "kitchen-esp32", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1, "group": "esp32", "kind": "http", "service": "rlcd-esp32", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} +{"detail": "URLError: ", "elapsed_ms": 1002, "group": "operations", "kind": "http", "service": "hermes-dashboard-pi", "status": "fail", "timestamp": "2026-09-15T01:50:47+00:00"} diff --git a/areas/operations/service_health_latest.json b/areas/operations/service_health_latest.json new file mode 100644 index 0000000..a9c5e78 --- /dev/null +++ b/areas/operations/service_health_latest.json @@ -0,0 +1,73 @@ +{ + "fail": 7, + "failures": [ + { + "detail": "ConnectionRefusedError: [Errno 61] Connection refused", + "elapsed_ms": 0, + "group": "voice", + "kind": "tcp", + "service": "kokoro-tts", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "URLError: ", + "elapsed_ms": 174, + "group": "emi", + "kind": "http", + "service": "emi-frontend", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "HTTP 502", + "elapsed_ms": 165, + "group": "emi", + "http_status": 502, + "kind": "http", + "service": "emi-wordpress", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "ConnectionRefusedError: [Errno 61] Connection refused", + "elapsed_ms": 1133, + "group": "esp32", + "kind": "tcp", + "service": "reyna-cli-kidsos", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "URLError: ", + "elapsed_ms": 1006, + "group": "esp32", + "kind": "http", + "service": "kitchen-esp32", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "URLError: ", + "elapsed_ms": 1, + "group": "esp32", + "kind": "http", + "service": "rlcd-esp32", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + }, + { + "detail": "URLError: ", + "elapsed_ms": 1002, + "group": "operations", + "kind": "http", + "service": "hermes-dashboard-pi", + "status": "fail", + "timestamp": "2026-09-15T01:50:47+00:00" + } + ], + "log": "/Users/adolforeyna/brain/areas/operations/service_health_checks.jsonl", + "ok": 14, + "timestamp": "2026-09-15T01:50:47+00:00", + "total": 21 +} diff --git a/areas/operations/services_inventory.md b/areas/operations/services_inventory.md new file mode 100644 index 0000000..ecbec0b --- /dev/null +++ b/areas/operations/services_inventory.md @@ -0,0 +1,157 @@ +--- +title: Reyna Family Services Inventory +type: living-inventory +status: active +updated: 2026-08-15 +canonical_detail: areas/platform.md +related: + - areas/network/inventory_report_2026-07-13.md + - areas/network/devices_inventory.md + - areas/operations/hermes_migration_macmini_2026-08-02.md + - areas/emi_things_to_do.md +tags: [operations, services, infrastructure, emi, brain] +--- + +# Reyna Family Services Inventory + +Human-facing catalog of the services that support the Reyna family, Hermes, the brain, and EMI. `[[platform]]` is the more detailed technical tracker for hosts, MCP tools, LaunchAgents, plugins, cron jobs, and migration work. + +**Status vocabulary:** +- **Active/documented:** recorded as running or intentionally used in the latest inventory. +- **Needs live verification:** documented previously, but the last check is dated or the service has known uncertainty. +- **Legacy/planned:** retained for history or future work; do not assume it is running. + +## 1. Brain, Hermes, and private operations + +| Service | Purpose | Host / location | Status | +|---|---|---|---| +| **Reyna family brain** | Markdown source of truth for family, projects, operations, EMI, maintenance, finances, media, and journals | Mac mini: `~/brain`; mirrored/backed up through Pi workflows and Gitea/Nextcloud paths | Active/documented | +| **Hermes Agent gateway** | Main conversational agent, WhatsApp handling, MCP orchestration, profiles, skills, memory, and cron | Mac mini `.102`; historical Pi `.126` runtime | Active/documented; migration follow-up remains | +| **Hermes profiles** | Separate operating contexts, including default, EMI, kids, and voice | `~/.hermes/profiles/` | Active/documented | +| **Hermes cron/automation** | Briefings, wind-down reminders, coding recaps, price monitors, maintenance reminders, and family automation | Hermes cron plus Pi/system crontab | Active/documented; individual jobs need periodic verification | +| **Brain sync** | Synchronizes brain content to backup/cloud destinations and maintains Git history | Pi `.126` plus local/Gitea/Nextcloud workflows | Needs live verification | +| **Brain MCP/search layer** | Programmatic search and controlled access to brain notes | `brain/projects/para_brain_mcp_server.md` | Active project / implementation status needs verification | +| **Reyna CLI privacy host** | Canonical local Mac service for privacy-sensitive Calendar, Contacts, Reminders, Notes, and system operations | Mac mini `.102`; signed Swift host + Unix socket | Active migration target | +| **MacMiniMCP** | Older Mac automation/MCP host for Apple apps, speech, TTS, images, and Deco | Mac mini `.102` | Legacy; being replaced by Reyna CLI | +| **Private browser automation** | Visible Chrome/ReynaFamilyBot profile, CDP, browser dashboard, and LAN observer proxy | Mac mini `.102`, loopback CDP `9222` | Active/documented | +| **WhatsApp gateway** | Home/family, EMI, and direct assistant messaging | Mac mini gateway; old Pi session was migrated | Active/documented; live outbound/inbound verification should remain on the checklist | + +## 2. Core home and network infrastructure + +| Service | Purpose | Host / location | Status | +|---|---|---|---| +| **Deco mesh network** | Home LAN, DHCP, Wi-Fi, device connectivity | Deco M5 nodes, gateway `.1` | Active/documented | +| **Caddy reverse proxy** | TLS termination and routing for family, EMI, media, cloud, and internal domains | FamReynaServer `.110` | Active/documented; configuration has known stale/duplicate entries | +| **Authentik SSO** | Authentication for protected browser/web services | FamReynaServer `.110`; some EMI routing points to `.119` | Active/documented; duplicate/legacy routes need verification | +| **Pi-hole DNS** | LAN DNS and ad/blocking service | FamReynaServer `.110` | Active/documented | +| **Docker / Portainer** | Container runtime and management | FamReynaServer `.110` | Active/documented | +| **NAS / MyCloud** | Local backup and media storage | `.111` / related DHCP observations | Needs live verification | +| **Ollama** | Local model serving | FamReynaServer `.110`; separate `.200` route also documented | Needs live verification | +| **AFFiNE** | Self-hosted documents/knowledge workspace | Expected `.200:3010` | Legacy or offline; documented as down in the last inventory | +| **Llama endpoint** | Model endpoint paired with AFFiNE | Expected `.200:11434` | Legacy or offline; documented as down in the last inventory | + +## 3. Family media, photos, files, and communications + +| Service | Purpose | Host / location | Status | +|---|---|---|---| +| **Immich** | Private family photo/video library, search, albums, and media archive | FamReynaServer `.110`; `photos.reynafamily.com` | Active/documented | +| **Nextcloud** | Cloud files, document sync, and brain/cloud workflows | FamReynaServer `.110`; `cloud.reynafamily.com` / `cloud.emmint.com` | Active/documented; Docker and Snap installations may both exist and require cleanup decision | +| **Jellyfin** | Family media streaming | FamReynaServer `.110`; `media.reynafamily.com` | Active/documented | +| **Memos** | Lightweight notes/micro-journal service | FamReynaServer `.110`; `memos.reynafamily.com` | Active/documented | +| **Family voice system** | ESP32/iPhone/Mac voice capture, transcription, speaker context, TTS, and voice gateway | Mac mini `.102`, iPhone `.150`, Pi/ESP32 devices | Active project/infrastructure; several components require live verification | +| **Kokoro / ksay** | Warm local neural TTS daemon | Mac mini `.102`, loopback `7332` | Active/documented | +| **Voicebox** | Qwen3-TTS voice generation and family voice profiles | Mac mini `.102` | Active/documented | +| **Apple Speech services** | Local speech transcription and voice synthesis integrations | Mac mini `.102` | Active/documented | +| **iPhone MCP** | Camera, audio, video, screen, and voice-device bridge | iPhone `.150` | Active/documented | + +## 4. ESP32, reMarkable, and household interfaces + +### ESP32 / Tactility service family + +The ESP32 fleet is not just hardware inventory. It is a set of local family services with device-side apps, HTTP/MCP APIs, media storage, and Hermes/Reyna CLI integrations. + +| Service | Purpose | Device / location | Status | +|---|---|---|---| +| **Tactility platform** | Shared ESP32 runtime for screens, touch, audio, SD storage, apps, and local HTTP/MCP operations | ESP32-S3 fleet | Active/documented | +| **KidsOS dashboards** | Child/family dashboards, screen text, file transfer, local status, and household display surfaces | Tactility boards `.112`, `.113`, `.129` | Active/documented; individual board health varies | +| **Reyna CLI KidsOS endpoint** | Device-side HTTP service exposed through the Reyna CLI/Caddy route | KidsOS-591C `.113`; `reyna-cli.reynafamily.com` | Active/documented; needs periodic live verification | +| **Kitchen voice/display device** | Kitchen voice button, display, audio playback, and microphone endpoint | Little32 `.122` | Active project / needs live verification | +| **ESP32 RLCD screen** | Reflective display, screenshots, sensors, BLE, video, and e-paper-style experiments | Waveshare RLCD `.123` | Active project / needs live verification | +| **ESP32 voice gateway** | Local voice capture, audio transport, Hermes gateway integration, and voice responses | ESP32 voice devices + Mac mini adapter | Active project; Hermes route repair/testing remains outstanding | +| **Book Player service** | Local storybook/podcast/audio playback from SD card | Tactility Book Player boards | Active app family | +| **Grace/Poppy storybook player** | Image-and-audio storybook playback for the children | Expected `.107` | Needs live verification; last inventory showed offline/stale | +| **Bible Verse app** | Offline Bible reading, progress, and favorites | Tactility fleet | Active/documented | +| **Voice Recorder app** | Local voice-memo capture to SD card for later ingestion | Tactility fleet | Active app; recording permissions/storage need per-board verification | +| **Tactility games and utility apps** | Breakout, 2048, Pocket Dungeon, Snake, MP3 Player, Robot Arm, Discovery Mountain, and related experiments | Tactility SD-card app packages | Active/experimental | +| **ESP32 fleet management** | Device discovery, screen drawing, screenshots, file operations, app reports, and smoke tests | Reyna CLI + local device registry | Active/documented; mDNS/IP conflicts remain a known issue | + +### reMarkable service family + +| Service | Purpose | Device / location | Status | +|---|---|---|---| +| **reMarkable Paper Pro** | Handwritten journal, planning, drawings, source notes, and document workspace | Paper Pro `.132` | Active device | +| **reMarkable UDP listener** | Receives device broadcast/IP updates so DHCP changes can be tracked | Pi/logger host | Needs live verification | +| **reMarkable logger/poller** | Polls the Paper Pro, tracks document changes, writes JSONL events and latest/state snapshots | Expected `~/remarkable-logger/` on Pi `.126` | **Not working as of 2026-08-15**; service/timer and expected files were absent | +| **reMarkable Paper Pro sidecar** | Device-side heartbeat, online/offline state, and document-change detection | Paper Pro system service | Needs live verification; old SSH alias is stale and the current `.132` host key is unresolved | +| **reMarkable brain ingestion** | Vision/transcription of changed pages into journals, inbox, and durable brain areas | Brain ingestion workflow | Blocked by watcher failure; existing imported notes remain available | +| **reMarkable rendering tools** | Parse/render Paper Pro v6 `.rm` pages and preserve color/ink information | Logger/tooling environment | Active tooling; depends on restored logger environment | + +### Other household interfaces + +| Service / device system | Purpose | Host / location | Status | +|---|---|---|---| +| **Kindle/e-paper dashboards** | Household and office task/status display | Kindle/e-paper projects | Active project | +| **Robot arm** | Hardware/robotics experimentation and MCP control | LAN device, expected `.116` | Active project / needs live verification | +| **Google Home / Blink / TVs** | Household smart-home and media endpoints | LAN devices | Active household devices; not all are Hermes-managed | +| **Water filtration system** | Peroxide and salt-pellet household water treatment | 220 Emerald | Active maintenance responsibility; monthly checks tracked in `areas/maintenance/220_emerald.md` | + +## 5. EMI — Emanuel Ministries International + +### Organization and governance + +- **EMI-C Florida / local church:** board, bylaws, meeting history, minutes, scripts, governance, and ministry administration. +- **EMI international family:** leadership and relationships across the USA, East Africa/Kenya, Europe, Latin America, and related churches. +- **EMI gatherings:** Kenya 2026 archive, participants, logistics, media plan, translation, and technology coordination. +- **EMI financial/board operations:** board-related accounts, financial records, and administrative follow-up. + +### Public and technical services + +| Service | Purpose | Host / domain | Status | +|---|---|---|---| +| **EMI Backend API** | Main EMI application API, Socket.IO/web-push integrations, Stripe, and Mongo-backed application functions | emiserver `.119:3001`; failover/routing also documented through `.110`; `emiapi.reynafamily.com`, `api.emmint.com` | Active/documented; `.119` access is incomplete and needs live verification | +| **EMI frontend / website** | Public EMI web presence and ministry-facing frontend | `emi.reynafamily.com`; expected `.119:8082` | Needs live verification | +| **EMI WordPress / WP1** | EMI web/content property | `wp1.reynafamily.com`; expected `.119:8081` | Needs live verification | +| **EMI authentication** | Authentik route used by EMI domains | `auth.emmint.com`; expected `.119:9000` | Needs live verification; overlaps with family Authentik routing | +| **EMI media archive** | Books, recordings, Bryan teaching series, livestreams, photos, and video source material | Brain, Immich, Nextcloud, local media archives, and EMI projects | Active/documented; organization work remains | +| **EMI livestream/media workflow** | Capture, production, translation, captioning, archiving, search, and outreach | EMI media projects; Sardius/Ari workflow report | Active project | +| **EMI publication pipeline** | Books, ministry publications, Subsplash embeds, YouTube, and outreach strategy | EMI projects and external platforms | Active project | +| **EMI local ministries/collaboration** | Local ministry planning, Latin America collaboration, church relationships, and family gatherings | Brain project files | Active project | +| **EMI social/video outreach** | YouTube strategy, media outreach, worship graphics, and public communication | EMI website/social/YouTube workflows | Active project | + +## 6. Other web and collaboration services + +| Service | Purpose | Host / location | Status | +|---|---|---|---| +| **Instatic** | Family website/CMS publishing | FamReynaServer `.110:3002`; planned `sites.reynafamily.com` | Active/documented; DNS/Caddy publishing route needs verification | +| **n8n** | Workflow automation | FamReynaServer `.110:5678`; `auto.reynafamily.com` | Active/documented; workflows require authenticated inspection | +| **Homarr** | Internal dashboard | FamReynaServer `.110:7575`; `dashboard.reynafamily.com` | Active/documented | +| **Gitea** | Private source-code hosting and backup | Expected emiserver `.119:3000`; `git.reynafamily.com` | Needs live verification | +| **Portainer** | Docker UI | FamReynaServer `.110:9000`; `docker.reynafamily.com` | Active/documented | +| **Mixpost** | Social publishing | Expected FamReynaServer `.110:9010` | Needs live verification | +| **Appwrite** | Backend-as-a-service experiment | Expected FamReynaServer `.110:8090` | Legacy/planned; not seen running in last inventory | +| **Ghost** | Blog platform | Expected FamReynaServer `.110:2368`; `blog.reynafamily.com` | Legacy/offline in last inventory | +| **Mattermost** | Team/chat platform | Expected `.110:8065`; `mattermost.reynafamily.com` | Legacy/offline in last inventory | + +## 7. Service-management priorities + +1. Restore and verify the **reMarkable watcher/logger**; it is currently a broken ingestion dependency for the brain. +2. Make `areas/platform.md` and this file agree on the canonical **Reyna CLI privacy host** and LaunchAgent paths. +3. Verify the **brain backup chain**: local files → Git/Gitea → Nextcloud/NAS, including recent successful timestamps. +4. Resolve the **FamReynaServer duplicate Nextcloud** installation and document the single source of truth. +5. Restore SSH/operator access to **emiserver `.119`** so EMI services can be checked directly. +6. Separate **active EMI production services** from stale Caddy routes and historical deployments. +7. Add one live verification record per service: URL/socket, owner, host, health check, data location, backup path, and recovery procedure. + +## Source notes + +This catalog was assembled from the living `areas/platform.md`, `areas/network/devices_inventory.md`, `areas/network/inventory_report_2026-07-13.md`, Hermes migration audit, EMI project files, maintenance areas, and the current reMarkable watcher investigation on 2026-08-15. Dated inventory claims are labeled as needing live verification rather than treated as current fact. diff --git a/exports/covenant_parenting_bryan_hickman_current_status_2026-08-13.pdf b/exports/covenant_parenting_bryan_hickman_current_status_2026-08-13.pdf new file mode 100644 index 0000000..27a1135 Binary files /dev/null and b/exports/covenant_parenting_bryan_hickman_current_status_2026-08-13.pdf differ diff --git a/exports/covenant_parenting_bryan_hickman_revised_clean.pdf b/exports/covenant_parenting_bryan_hickman_revised_clean.pdf new file mode 100644 index 0000000..73f56c1 Binary files /dev/null and b/exports/covenant_parenting_bryan_hickman_revised_clean.pdf differ diff --git a/exports/covenant_parenting_bryan_hickman_revised_editorial.pdf b/exports/covenant_parenting_bryan_hickman_revised_editorial.pdf new file mode 100644 index 0000000..362f85f Binary files /dev/null and b/exports/covenant_parenting_bryan_hickman_revised_editorial.pdf differ diff --git a/exports/personal-os-wiki-integration-plan_2026-09-03.pdf b/exports/personal-os-wiki-integration-plan_2026-09-03.pdf new file mode 100644 index 0000000..2b4ac26 --- /dev/null +++ b/exports/personal-os-wiki-integration-plan_2026-09-03.pdf @@ -0,0 +1,758 @@ +%PDF-1.4 +%“Œ‹ž ReportLab Generated PDF document (opensource) +1 0 obj +<< +/F1 2 0 R /F2 3 0 R /F3 7 0 R /F4 8 0 R /F5 9 0 R +>> +endobj +2 0 obj +<< +/BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font +>> +endobj +3 0 obj +<< +/BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding /Name /F2 /Subtype /Type1 /Type /Font +>> +endobj +4 0 obj +<< +/Contents 79 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +5 0 obj +<< +/Contents 80 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +6 0 obj +<< +/Contents 81 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +7 0 obj +<< +/BaseFont /Helvetica-BoldOblique /Encoding /WinAnsiEncoding /Name /F3 /Subtype /Type1 /Type /Font +>> +endobj +8 0 obj +<< +/BaseFont /Helvetica-Oblique /Encoding /WinAnsiEncoding /Name /F4 /Subtype /Type1 /Type /Font +>> +endobj +9 0 obj +<< +/BaseFont /Courier /Encoding /WinAnsiEncoding /Name /F5 /Subtype /Type1 /Type /Font +>> +endobj +10 0 obj +<< +/Contents 82 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +11 0 obj +<< +/Contents 83 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +12 0 obj +<< +/Contents 84 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +13 0 obj +<< +/Contents 85 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +14 0 obj +<< +/Contents 86 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +15 0 obj +<< +/Contents 87 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +16 0 obj +<< +/Contents 88 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +17 0 obj +<< +/Contents 89 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +18 0 obj +<< +/Contents 90 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +19 0 obj +<< +/Contents 91 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +20 0 obj +<< +/Contents 92 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +21 0 obj +<< +/Contents 93 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +22 0 obj +<< +/Contents 94 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +23 0 obj +<< +/Contents 95 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +24 0 obj +<< +/Contents 96 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +25 0 obj +<< +/Contents 97 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +26 0 obj +<< +/Contents 98 0 R /MediaBox [ 0 0 612 792 ] /Parent 78 0 R /Resources << +/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] +>> /Rotate 0 /Trans << + +>> + /Type /Page +>> +endobj +27 0 obj +<< +/Outlines 29 0 R /PageMode /UseNone /Pages 78 0 R /Type /Catalog +>> +endobj +28 0 obj +<< +/Author (Hermes) /CreationDate (D:20260903100230-04'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260903100230-04'00') /Producer (ReportLab PDF Library - \(opensource\)) + /Subject (\(unspecified\)) /Title (Personal OS Wiki Integration Plan) /Trapped /False +>> +endobj +29 0 obj +<< +/Count 58 /First 30 0 R /Last 77 0 R /Type /Outlines +>> +endobj +30 0 obj +<< +/Count 3 /Dest [ 10 0 R /Fit ] /First 31 0 R /Last 33 0 R /Next 34 0 R /Parent 29 0 R + /Title (1. Executive Recommendation) +>> +endobj +31 0 obj +<< +/Dest [ 10 0 R /Fit ] /Next 32 0 R /Parent 30 0 R /Title (Recommendation) +>> +endobj +32 0 obj +<< +/Dest [ 11 0 R /Fit ] /Next 33 0 R /Parent 30 0 R /Prev 31 0 R /Title (Decision boundaries) +>> +endobj +33 0 obj +<< +/Dest [ 11 0 R /Fit ] /Parent 30 0 R /Prev 32 0 R /Title (Adoption decision) +>> +endobj +34 0 obj +<< +/Count 3 /Dest [ 11 0 R /Fit ] /First 35 0 R /Last 37 0 R /Next 38 0 R /Parent 29 0 R + /Prev 30 0 R /Title (2. Inspected Current State and Planning Assumptions) +>> +endobj +35 0 obj +<< +/Dest [ 11 0 R /Fit ] /Next 36 0 R /Parent 34 0 R /Title (Existing workflow facts) +>> +endobj +36 0 obj +<< +/Dest [ 12 0 R /Fit ] /Next 37 0 R /Parent 34 0 R /Prev 35 0 R /Title (Upstream project facts used as ideas, not instructions) +>> +endobj +37 0 obj +<< +/Dest [ 12 0 R /Fit ] /Parent 34 0 R /Prev 36 0 R /Title (Important assumptions to validate before implementation) +>> +endobj +38 0 obj +<< +/Count 3 /Dest [ 12 0 R /Fit ] /First 39 0 R /Last 41 0 R /Next 42 0 R /Parent 29 0 R + /Prev 34 0 R /Title (3. Target Model: Two Complementary Stores, Existing Authorities Preserved) +>> +endobj +39 0 obj +<< +/Dest [ 12 0 R /Fit ] /Next 40 0 R /Parent 38 0 R /Title (3.1 The core split) +>> +endobj +40 0 obj +<< +/Dest [ 13 0 R /Fit ] /Next 41 0 R /Parent 38 0 R /Prev 39 0 R /Title (3.2 Authority matrix) +>> +endobj +41 0 obj +<< +/Dest [ 13 0 R /Fit ] /Parent 38 0 R /Prev 40 0 R /Title (3.3 Proposed minimal storage topology) +>> +endobj +42 0 obj +<< +/Count 7 /Dest [ 13 0 R /Fit ] /First 43 0 R /Last 49 0 R /Next 50 0 R /Parent 29 0 R + /Prev 38 0 R /Title (4. Concrete Workflow and State Mapping) +>> +endobj +43 0 obj +<< +/Dest [ 13 0 R /Fit ] /Next 44 0 R /Parent 42 0 R /Title (4.1 Intake classification) +>> +endobj +44 0 obj +<< +/Count 3 /Dest [ 14 0 R /Fit ] /First 45 0 R /Last 47 0 R /Next 48 0 R /Parent 42 0 R + /Prev 43 0 R /Title (4.2 Proposed canonical fields) +>> +endobj +45 0 obj +<< +/Dest [ 14 0 R /Fit ] /Next 46 0 R /Parent 44 0 R /Title (Shared work-item fields) +>> +endobj +46 0 obj +<< +/Dest [ 15 0 R /Fit ] /Next 47 0 R /Parent 44 0 R /Prev 45 0 R /Title (Task fields) +>> +endobj +47 0 obj +<< +/Dest [ 15 0 R /Fit ] /Parent 44 0 R /Prev 46 0 R /Title (Claim, run, and review fields) +>> +endobj +48 0 obj +<< +/Dest [ 15 0 R /Fit ] /Next 49 0 R /Parent 42 0 R /Prev 44 0 R /Title (4.3 Task lifecycle and lease policy) +>> +endobj +49 0 obj +<< +/Dest [ 16 0 R /Fit ] /Parent 42 0 R /Prev 48 0 R /Title (4.4 Definition of Done templates) +>> +endobj +50 0 obj +<< +/Count 2 /Dest [ 16 0 R /Fit ] /First 51 0 R /Last 52 0 R /Next 53 0 R /Parent 29 0 R + /Prev 42 0 R /Title (5. Context Packets and Retrieval) +>> +endobj +51 0 obj +<< +/Dest [ 16 0 R /Fit ] /Next 52 0 R /Parent 50 0 R /Title (5.1 Context packet contract) +>> +endobj +52 0 obj +<< +/Dest [ 17 0 R /Fit ] /Parent 50 0 R /Prev 51 0 R /Title (5.2 Retrieval strategy: optional semantic layer) +>> +endobj +53 0 obj +<< +/Count 3 /Dest [ 17 0 R /Fit ] /First 54 0 R /Last 56 0 R /Next 57 0 R /Parent 29 0 R + /Prev 50 0 R /Title (6. Notification and Apple Reminders Adapter Plan) +>> +endobj +54 0 obj +<< +/Dest [ 17 0 R /Fit ] /Next 55 0 R /Parent 53 0 R /Title (Adapter boundary) +>> +endobj +55 0 obj +<< +/Dest [ 17 0 R /Fit ] /Next 56 0 R /Parent 53 0 R /Prev 54 0 R /Title (Initial adapter order) +>> +endobj +56 0 obj +<< +/Dest [ 17 0 R /Fit ] /Parent 53 0 R /Prev 55 0 R /Title (Adapter requirements) +>> +endobj +57 0 obj +<< +/Count 4 /Dest [ 18 0 R /Fit ] /First 58 0 R /Last 61 0 R /Next 62 0 R /Parent 29 0 R + /Prev 53 0 R /Title (7. Agent Safety, Review, Privacy, and Failure Handling) +>> +endobj +58 0 obj +<< +/Dest [ 18 0 R /Fit ] /Next 59 0 R /Parent 57 0 R /Title (7.1 Claim eligibility and agent identity) +>> +endobj +59 0 obj +<< +/Dest [ 18 0 R /Fit ] /Next 60 0 R /Parent 57 0 R /Prev 58 0 R /Title (7.2 Review gates) +>> +endobj +60 0 obj +<< +/Dest [ 18 0 R /Fit ] /Next 61 0 R /Parent 57 0 R /Prev 59 0 R /Title (7.3 Evidence rules) +>> +endobj +61 0 obj +<< +/Dest [ 19 0 R /Fit ] /Parent 57 0 R /Prev 60 0 R /Title (7.4 Failure policy) +>> +endobj +62 0 obj +<< +/Count 6 /Dest [ 19 0 R /Fit ] /First 63 0 R /Last 68 0 R /Next 69 0 R /Parent 29 0 R + /Prev 57 0 R /Title (8. Phased Adoption Roadmap) +>> +endobj +63 0 obj +<< +/Dest [ 19 0 R /Fit ] /Next 64 0 R /Parent 62 0 R /Title (Phase 0: Governance, authority, and pilot selection) +>> +endobj +64 0 obj +<< +/Dest [ 19 0 R /Fit ] /Next 65 0 R /Parent 62 0 R /Prev 63 0 R /Title (Phase 1: Local work-state contract and shadow ledger prototype) +>> +endobj +65 0 obj +<< +/Dest [ 20 0 R /Fit ] /Next 66 0 R /Parent 62 0 R /Prev 64 0 R /Title (Phase 2: Hermes and Herdr read-only context packets) +>> +endobj +66 0 obj +<< +/Dest [ 21 0 R /Fit ] /Next 67 0 R /Parent 62 0 R /Prev 65 0 R /Title (Phase 3: Controlled low-risk claims, review workflow, and Apple Reminders dry run) +>> +endobj +67 0 obj +<< +/Dest [ 21 0 R /Fit ] /Next 68 0 R /Parent 62 0 R /Prev 66 0 R /Title (Phase 4: Project-specific integration for factory, infrastructure, and ministry) +>> +endobj +68 0 obj +<< +/Dest [ 22 0 R /Fit ] /Parent 62 0 R /Prev 67 0 R /Title (Phase 5: Optional operational hardening and retrieval evaluation) +>> +endobj +69 0 obj +<< +/Count 3 /Dest [ 22 0 R /Fit ] /First 70 0 R /Last 72 0 R /Next 73 0 R /Parent 29 0 R + /Prev 62 0 R /Title (9. Migration and Rollout Strategy) +>> +endobj +70 0 obj +<< +/Dest [ 22 0 R /Fit ] /Next 71 0 R /Parent 69 0 R /Title (Non-disruption principles) +>> +endobj +71 0 obj +<< +/Dest [ 23 0 R /Fit ] /Next 72 0 R /Parent 69 0 R /Prev 70 0 R /Title (Suggested rollout cohort) +>> +endobj +72 0 obj +<< +/Dest [ 23 0 R /Fit ] /Parent 69 0 R /Prev 71 0 R /Title (Legacy linking protocol) +>> +endobj +73 0 obj +<< +/Dest [ 23 0 R /Fit ] /Next 74 0 R /Parent 29 0 R /Prev 69 0 R /Title (10. Measures of Success and Operating Metrics) +>> +endobj +74 0 obj +<< +/Dest [ 23 0 R /Fit ] /Next 75 0 R /Parent 29 0 R /Prev 73 0 R /Title (11. Explicit Open Decisions for User Review) +>> +endobj +75 0 obj +<< +/Dest [ 25 0 R /Fit ] /Next 76 0 R /Parent 29 0 R /Prev 74 0 R /Title (12. Ideas Deliberately Rejected or Deferred) +>> +endobj +76 0 obj +<< +/Dest [ 25 0 R /Fit ] /Next 77 0 R /Parent 29 0 R /Prev 75 0 R /Title (13. Final Review Checklist) +>> +endobj +77 0 obj +<< +/Dest [ 26 0 R /Fit ] /Parent 29 0 R /Prev 76 0 R /Title (Source Notes) +>> +endobj +78 0 obj +<< +/Count 20 /Kids [ 4 0 R 5 0 R 6 0 R 10 0 R 11 0 R 12 0 R 13 0 R 14 0 R 15 0 R 16 0 R + 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R 22 0 R 23 0 R 24 0 R 25 0 R 26 0 R ] /Type /Pages +>> +endobj +79 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 505 +>> +stream +Gatmu95iQ=&;9NK'm"0uR,ON6NWJuEJL7XP??/nPb$ZGk$0Bb2^[K=Rm(,c+JO#@5EbFOp$?5j[p4(s#QPIe1$4)KgJ^@)cqM#M\nPicB')UEQ0X"ot@EML&9/WL=[AST_?#g5u<@NWu^#YopaNK1j`$#+`F_!*Jh.Wt0BWWgAV5A"8^q6Y/LHa6?^endstream +endobj +80 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 1509 +>> +stream +Gb!l!hc&Pn&:WfGfZ.c_;_;/CO*dWeB:.q+i6IlWlYIm2YUrpWJGf.I4-2_0QkFdf9l=DAM/>hrhsRu2b"rB57Jlhl!r+X*?[eb8).YOrS8cPuL\'lrn"VE2Tat348eMUgj!9ZS2EX>T:BLfSKdic/r_DW/QO:pm%dQ&lN/\3=kC6V_b&T8Wnn?J_8q#"&.D-]"u2f.i!13\P6U"A]l%*\_k"%kZdRXF9]g4,$(cHVJ]C,]@&S!3Llu7TOGKe+m%7#TbMK"8eK?3XM`_QFl#Nu>J.0Rm=ka!C$3XT7oQAW"(ZT[:Tn"iqJX+'IJK,:0fsQFE$eDa8[2T2Mn+V>E%r!1uKSKf7QLTd/"bNk?@gSEB5M4P&l=&hO)a8Q_Vh:IAB8dV"?":hI?(O>g3R1F.HNhVVf'pn=>sq,PD&Bn?ho-JIp,HM*J7YIa*ei7l;jstf-`RH@7/e,j]2fKU\4_WUcW%X&bLO=:WFW%0eYLJ\eKjfNp7e/!?Bds5M1[8?1mf$]%VKO2C;/Ti2D[;gB9GnlP=Pf^AIu3#@$"cWfjd=3L"Q`m-'b0-e[2&\\?&XST6k;n:u#LcEL+:PGTe@IlXHL>q"IE8Kf%ND#^_TZt]'ti!hVD@j8M/^:aocmhhaZ#Wt6>p6>KUrWPgl!4mb"`;~>endstream +endobj +81 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 1574 +>> +stream +Gb"/'?!#c?&:Mm.R)eV9crqOjar=!IjW%GPae!o]D'c-#/6>lFq=boa.A^fgG/T/m_7C#hP7Q6:qjk4=3D1)T!mF1tm@/?oH\lNq(^<45C&e+r"b,J-_T55lu_[ObbI=Ab-FS\%F=M$ONtO%56"lX\C5P31IaVHDTSrFD>Nde#%fi6C,C%qub/mD/O;S8f3^Jr>LFJqUmr(n_:ZQQBF3o<:HBMrMEdtMbh^Z_f!hp2`O:661ULi!JDoh!o7$S.S(34I71Q5->Z#32JtdsW!Q13LCN8m6S&O:"%3II!AAu=e,Q2m:B\AQRdqfO>Ib9?Hr=^WO`[#7asd_O\JUZhK,jtnIGAM:euEib+:hoAiIT$4*^gp1(k9aKNTb%H41V#kPG3V.;bCJ]^klM%m:DVMH>>G?5"cZj/cK>8];,3]J%JmA_MnE_V!G6q`j>lm[`e=\"A3:ROlVE]nSKa8/Y=3Z38'\H-"%i$8Z:r2u-PmT]-(#l)^<2S$qTKEPCPGb',:QOh*G@^KA5+)sA^Qc.Ki?1'Zlb>*3bh'-=8sH6FmEahlp1H3.OV#X@.CsNBVhGn<.D.E;b*EZ!1`DF7]/3R#SHl-9@3!ds:g!o#+RH@GX7NR1eQGQP0&fIjp$[GcS\hAJE4!,5G-t[=CgW9ldTN!K(?GBigpB787P=@CU#1'^]355K(&YE`Co\qM'[k07Q_o6jOQgQi*;a[%5ZPo?5M3:g6g*qV$B(P2qh?Wh1`NfP?U_I6BIVSF+(_HcP6?*>Ad%!0+;E43K^.IRFhfdXs-<>>imgKKq'8CrsX/_YnE"_"C.6a=/YTm2).MM=no6,!T^@Z$qRq1,3O?WS`+$_;j_FUGN1()A;?`hH5oEa`PHlm?f;"?Q/eFcD^l%0;ALI?Fn4T7"e5*K?,/3/+]iD4kL18p-N]qb(YNp>R@S6>Vpn>$^+[k%Q(/l]4_aoRjE_IQYo*h1%n^t@jq::f-\ZY=sF2F3mAYuMT"u)Kj2E?cnS"'[b%q5*Xbj[i,+s)r)fk.co[DQ,ETKMESe-#L;h(b^b$(&@+%^fKQE_INW-NFca1=!0]>NLC99lUdoWj*M_ftZ*DO)gj1!?!endstream +endobj +82 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 2469 +>> +stream +Gatm<9m>@#(>Sdggni^L;'JGW`N-@[de'Aq)uH1BZ@PPC6pq)-!(ti)rUr/M59sHnPpSMOUP&\$J@Taa%N*Us5GA*=.>`MaU[dZ3_MIV8$KE8+]6Eo%h:4_k_/^Gh(K1YVb@NN$iA1gRo+c[uEtuo4IjJeE#0WC2M]e%ZUtL,.K_+oP"l3LmTbeQ*fW-oL&C9@d,bcCk=7aOsK'?_c01+)+2^*"Hf7]/r!VTOAi.c$B,V/*W/U\=;6#WU])pPH\P&:URJ"jR$FSE+Gi&&Sm(9CQW0_*8h^N%2IX">[!+IWBIGBiIkJS2eK%`?7*T9C.#E4a'!BsaPd,RUC\`Ch1HF38t*&Pj/IUf_m#((N]e_)oFeV.HlQE(p1jhU(2gde#WQ,r[LTp;X;rDU.(Q2\Sk49iOphfg<7dea%-)+Dt.j,,Xfjk7eK)3k'U^nEm]0s>0XQWOrFqY)P1/3^$Jr\N(l:SX6k&j*rU^Q;?IB,XebRZ^ii:Sc_,8dd.7LJ+:1dpV_\kgNNcrs$hWl6OF,'3f8O,l"CF*O2r^TXCe2b&I8PX7@ti$arP@_Cum0Xe:W;)=8RqB9?Ot>&0bK*r)j:qgt^bmb$tXbq3^5ano>9:&uQsl[\$i4K3bFGSUF(CRMW<(H+c1%A.mEq(";-.Lb4$#)r\sQDH9S%Kl&O;Jp!ER[V)=RAX6VAc0/nlTVrpT\G8ZX^N"`>SFdkCq0<\"S;O]a'[75<1CSV)G&Pa97%HjtPn+F9>L0f;PFfS-L^3`KcC;4gf,^(_!:_)nUct"dN`)9W='\#!:Jk1FA#I(gCj7_qc#XA=KpAJ>n,*c[<;&)C&8kF4l,r%u%FQ<6uGhQQ.#rO>_qZi>6OW3$C^n;hrq,h^="km(0/Yr:cEf1B4VG7uP]7rP*V$ZCIkA64OZf-!Q9@s"fhW6j;3*I@*LQ1,HVQ1!r.#:n;(nXS>!lg;b[P24YsDWmIOo;Zi;2p*fWm>k(QXRpXq(--FUH/?T;0c;PhYa_E/^c\Ji#mBrq,j;@?;H]Yr(BGCSY$K8PD>3S[6:RA-NOc1sL:?R[iIm(s'01#LXcDtHG")6ZU:FPF/`[#=SHO*[401N)\qtVq9\0q4%p,&YlI#=YPlZ13R.ILX=Ee\>6q*iB`;nbaZJ..ohGe=k@3?9:-0h/g219Q;:k?^The7Ts"=@\pLT,CZCk=a]2WBfJE5Df)P[PF4`HlYC,8lE$YlrXUB;3CJ4cB[9Z?'0$.BBdQ2Bqr<4brs%XbhP(>/F%jKV@cf1XbF9ZD;)%8H0.G&dQQDFgVfhVI-Kfuo*D)t*BU<@,@R)C"5<_jeLA;Wti[W`5(&"0Ec=AOu0U1t1"T!R2P8BE~>endstream +endobj +83 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3451 +>> +stream +Gatm=BlE$&%fMu+_2mH(/R.d/=Y/K*+4H-31?g>.!t5a*V6XAI*M+`0C%&7_a/Y;5V\;-TSHOeOMe!PEa[[hV!IdE55L,)aI80Z!+b^M6Y:(@o,J&>"YHQ:O3X]Q;E&\k90V-I_i>A1a31e@YlKq_.VYd]i`aLP?d;U"_7[2;F1'kaR5>:>5R28$*h2jeoJqMHq1`o+"N5GC$0V`#8SW'Ehkqt[:HLmZjBH4gjN&m;'Rj&XtIJQWEe?,HhGq%?KPcDgh1)9ULkkZf8s2#-:V2WI2I,9_un(m\!Q?]?F)U3p!"M;O/O*JoOr6R*G1n"ooo*8;+.,r3W=D($1kS>)j/aU-5Yqg.PZDd=^BI1oSp@%[86>TZ(Im2p8$Kc64k+hHS5%F7GSeqs7=OD@I$\f8d69`bZ:E7I=#soW^nX2;YgOnc(QE'dN0i"<-0$2mA=gl,WEIcgY@6<9:"(W^K,-aagHqrAS5TZ/CYh;OIGA($2IB=cas/HD?pqd&CTA)bHlb2n=eXE2=??XjlP,8fpYW[aKl'ko6Vj<%Q:Rb3rkI(4,_2WXeF\WJ,LR<@7:n9#SA308F"6MR6KXdoI8lAR+qKSY]4^`"fpl)D@"X>o;&NkG3!+qPS:.>j0*/`rHa3?3VNZ$@PPODE*K3E;kKWN+PlL>k%`/$\MPP$[.peFVU7.jqA/$9`U-G,#^;=;bP\LB7=J:R^/T!n!14U,H]LsH(8LhK/o*^/'7-65^qQ;)T=9]';##8[Mm\P9UoS'0Eci1%3R5#0[cleDF24P+^`il"-)tt'i7WF"5o;t.>i(fC>N%Y[h1,n[XNbg^]ki/]e>=KQH\f^/onSe*+S-W.%7G'WdLX`AMug%4cnL-5cL=2!lj7&%UE)6[9ZM6uT)2^2VP##QaR'29Rjb4Yc687'#n#Wu[^dT]`"7PQ04?+R[(I:Z(U\(tu\%Rs3Fm?<:6IT`X,WEi>"]!]&mY)Bcm5@/h'P!BP!^;YUOmHVdeTg'bI:S*9JZ&7k\r@#l.:&afH.lhCACk"sX,2h3]qg#!f9=>"\GG6jC@RO@8$a"(Vi0pX3U]RP$N-$ed[(D8)U&7X;d+5dUqB%H"a!UP:hRCL))f+a1@QJl?uCdR7=P=`HRm$DQmm$Mpgp?8eTgM3.N/n%i915))I2>;n2N<-Nsp^ckqE5JNj0#KoQlnUR`bj#\c*HFfE>JE!2"pZL\#<+QM4C22;RLIN+4D&;d?'92e62r`_%)p[S_PQ'#uJjiRRI24rm6[S3q8ML1\/0*@*fgXiS7:6u.7f$"!YlqZh2nGs=)nOfY3X6GRmX+0o#.:abTd@K,Au4f-S)0nm;EN#db>KjBDZG?q6$U`kFmdVU/?9J5HU+bA)[[3lT]5GQLu>C#<(SLp'VN)F-,OJaL!WEIAV-D;.^^1"f)pqQ.e%sB[$3>TPRD"K"qrnq.SX2<&USq$VHEIkV8\S&k;OHDf\?2aN%]pFcR3n^?.t4`mc7u<+G]6?8o#d0T5E;dS">L"k@1[rHd&q=1U8*cc,(6Yc`IG$,5)j#Y*g)X&*2N1XYl/@@&b5*Lns4\i)[Y/769M'!q*ii1l*Kl_7V]D#.sr8Xo4KAV$%/PZk^IuE&.W(2$N\Lm_6MEg>\H?PG>YJK._mJ$.Z[qE33tbD3K"_A^Pc!Js"b\@(8t8dc0+$EQX#TjC.'RE\fYoReVHhrk,C_Z8Y66jZ>6_KMN"--P*";jLmb4E0S;\[e:m'bUba#%5`s<1rYm<#3)c/!6fQf<)Y%*]`SlZ.C)SFbr[8ZA3rd>MuTI4b7sAVj)/TrY5c\SlG4SM'l9bq.%kX4MobmMnJQ>dYEJ(PPuPU5F!CHa8O[^5FE[dd2kM^6^6]f/*5I##8)S3kDCh"/nL*e3U4FUl7TWX'7V]5t:5+.5dUZ(Y:L9BL>T'd36#[E%-3HjS'RU'.BGHGPi]p4>r"8@%,DoiD3iqF;.B-n<\[R1FFbkTV]jr*4o^nTHPhq3@gMWU3PW"Oj!S=66=LWW5oOQCK<&-=n\-!0s;,1QFl60n"N8"GiHmdIZEr`j[o.?S,7ZnCJ[c[i);.=>l0,)Q5_fJLscs1lZgY'qdS8S-,>/c;=[W`s5T.g_S*c^\GrE5D)20ip.4Lp.^EEihgo^o7aH`'D=Tg.3+O`KiU?i=da,+2"U^*-2ZCX*Pb>Cre9\p*M([A+pNlFS:30-hX&~>endstream +endobj +84 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3084 +>> +stream +Gau0DbEgm@'&EF8C>$^k.$Am6a"*52,^m\(l*3<_2Vp\E,f*1f$iiofI/Vh%phDn>b-?;R+*rKl6Ii2B[uaFF5DfD)YDE1,7uNuQ8lE7T;mM9]FSD*XgqEL]7_$1s5c\VVXo_7ek'tsU?+::Xf.ue-B=6`pT^M)007QdXG6,D1ESSh5n$kR0,[8FRB=]krOE''j]Wf@s'@qqUYuKO1JD7;`f7Y_C8d>D(4`lkjB,?rQ#pOXfU,OQAoK7P@ad6&KgJMNOO:c]]qYpp3oN$cL]\lIdH6F9rVLiK_m&5*N=;!JXZdYNqfC]G7EI;r3UKWk]D'O*LM](WNf!WX4:[:]D]@P&TS?VaG]G.AL*2P?,-\\(7Ser$kEpfHW"qF_JDXkjm#;pUWdS)AEkE^]CKH`Slod5jSL[>9WNibSkmrZ@N^Ba)WHR5@;K8!@`h2+nq]_h/(/)+\R(dX#b$<Zl6$oa]aBq6QJ@0quO?j>&%q=&Fq\^1ToqbcTEm2thUX=h@49qpu9?uZ'$$jQ%D7h&LfPKGm09EUeq,BI]/`!KO*a[Mop[_bg2<"Br/HI4*1f>nFZ7\)LH4/:-+32=0c@pI7U];\ug/(OP]`W+fCs%;WZ';A1;\b;,^+jfQdc>k9jun*]2tUKd(,^jUWC4*ALFA>">.pbc-4j!Gngj"2=LYp:d12S.l,g!3^0g#4s:Y3IN=PH3&C[OGM`5R<*!o+_7,iha/#KQc?)m8VE&Rs#NK0Y3Z$(6=+X4N3PMR#O42QUt5E'r\Ch&`Z[PPVY+K$CgXhFD:BZ_0JkJ;GlDc!l8:p9%HGH^h!d*]8X1\LM$[BCZK@="!%/X:6%iN("bmSBDV3CVJ0Qi,d&i(R-h5Xt+3ZrF`1^T:0frcWOK`-Ll5ST=X0=8tAmU5KBKi;-lH.g!?(sM(Hm9\W%*OStoO--OFf<]/R6/%RMlu+!/aCetDF0an<00OQ#"*>i(h>LuT;3.#%"nU^?JXHhI_.o>NoHjr-"!'F?F`O:U5='*f?=Jp*%N:]_["jFFFAnd`EY#Cg*gO?$/)lUAER^8NRrYHJ1N32egVn:OI1k@Y?/Ir?m[)fa0,g6P<@;st-E,i;B%NPGgO,\onTBAf2s#4Zo6T=BBgkQMWZrN]kcg4r@dX5oV\To@I7^n-trM&)Nm4Q2KHQ"p8ltXJLcY(R9(7ic]ae*D>o/]jl<<]MWI5UeG"UIXj+0YI9O2Uh7HBV\`E@.u.^<_tm[OC-PZ'VNaDS+'0I_XPO=ajXm^G7mGhcl1%:6W]^AfbUVGkpk7Ad:uthn8gMh&D)ADU]0@^rf+`mP\"OcO;o;f1Q0/miXXh1iQgfZYp+*PX`h^KEtk&U)+gS(+^n*n+]&/mm$L9E)=/k5:@+N7LI)SfGJ0p02EOLhb/D@PaUp8b_-9k+W=1N%Aspf5:S%/^C:(&($keE@_YLW_?ki'3r!V3?'_hTlf^g;_7Kej$jV<5CNgM,TKbnblR_PUISdksTbDh$B&4uP6KSj;n@B8,gm?EfMo*Z;^rAnL;?OoV>_%n.3(R;Sn.iHQq90Ia;E6j6+CAeAJ/Vl@rO`.O"7X,eIpe"6_^RtE.J3e`q[ikQQnKr(!p!T8CW!Vd@NGuq6O*W4@\B`uPbW9?O4pWQ'r`K7#F-"F^[=Y^A?D]r;oeS7(N^D(?,+0=RYBkop=kr1*/:.YlFRfO.-r,^QLT05dgP[dX?U?F;/Ap\HmQSf_OuZW+-K\7O@AVL`AM(#egQWci;2D=pKg&5JmQ4*Tiu]7jX1ndbbIY$Z)Zp%J+@h3`(#\l+o[\i6P_>#6M63Dm*Z$p97PF=f);%T1]\R1\e(d$0.j\us"Zqoj7rNDm*eNEX?TLD]L!$!7%>A;maZg#6BQ&C*k7r;CTGbYg\a9!^JXIt-"Ed\00JI#.\(o@9#m.a:7?HDf`Ah_=kAHEDsG"K+FK1@QmS&Be-\T2p!"!j6FQ4,)[Gk=N*%4oasL\r774rg\=dD+`nBC_(b"AY#rd"Kk-qMK]>6(9c[%mp8pbo*qh^GE?H;/qfCG>Fbqr.cI9GCSH!Xe/boOr<6.dL=a`dfIIqoe;Y):,eW21@olA<5df<\XEpldtERdn3[?i,`g7aD@./$$VrTc_h]5f5RoB]._;uojJK\eQutaIpP:F\3N@6\Q1g8/RGQmUb(endstream +endobj +85 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3676 +>> +stream +Gau0FCNJ5g(B*Z.JWJND9Sj:niX\,RRl'OoM/0_efpSDq5U7U0-4(D0Xf0!`cNX)a*/W729u](_:r(%uSpMTHNUbm`^Vc;@T,uYK]usZA4fk"i3!"B9@IG8_r]G8a^?a*mk02t/c_'.!k>%l^G5'1J1L[o%N(mPi*\`*+"9D0KA3+nhBmH2Pqm1>.);`BgMfN8SQir>Pa.0qN9ZM5:pp4ZgF.$4\#M`3>41."e+BQ\i[mFesnUu>)B4'Z=QsF@8==]u`11Rd"ci1m)^9WMQZp8u(ai%=5RV?B9f7(UQT5SZ\X;j$Y(d@MMJ_`Z:sC3.^hngnf7,h*Rh;jTjWukMc=6Zc;qn[AlOF]7<,cUZVZJaUG5R:YhJ.\iG&f6,eY<8Q:eWC^^!)EobbeV7]Qj_4B'Bq[7hC#7P,[l!dqj=cZ2=R<0b9Gh7($Bq0nm'/k3Wo_c'65WS^r!"!bZS$q>$*RhrJ[%"QCa&uNpj5oGD7&MI.cW@d.K'n.B+!'T4!rVp6&>W?.JOP5X?m!$+@g??C9h-tL/ajW`JjaE@mE-9PX,Q*NAr_MD1g:4o)gN"op@k)CKg$*HeKi_CD7>&$+ddo']rS&ngM;'hfeMH@%l?']R13)W'Z8Uc4'5W5b3V8NkK/m+,h;lblI,+$BNUsTZF#(Ae&r(s1O4%K7$HSI,%;iG`#q)JdXVZm%W<*^P%U"ft_#kY'[6N9pJV:!uq2$Q6MW/a\Bn0RmBKU@[rnf+oA_!3rAM)_]&_r*;GoJQIj7&3sPRB5ccUDpK#iLW1UZS)\cpYuG^\E[]G=%[4U:.druh^\G%KKq=:'Q1RMDt31N-hT*XZH+5miZhU0Z@=1\%ub>UXt>'H'5UL&Udsl,Y9#mbrV)B!\*r`;+0IhX]!'?6g=(S*XotfgD^HVQL.E5rH&\l7Z[RMiA#to2Pkum&7^]YECh4$nX)r!+?F]q>F=4Lpa!RYHSC",:Wt@[F__])#LalJ3p?bMA?fE'a;Fr]U\GoAV8,+>(OBl.Q:gnDlMgSai>rJ1!4b^kg_=KqBBq16%mmaS5Kc&3#FB&Qm.plAn+#%%u.-Z/7jK7IW6u-ild"$,V9K_\KVHg:'!/kb>/53;TV.h<;K>u?DIE?Ghh1g3+m\O`b\u[jT$RT0L9NpAZU>@`0b(75gs;Xn&=Hq2jiM#oaCZVBkeeXt,W<_!@"`bO5`krJpf&rWFK>R+>Y&[#R/NG*f3)'&\C=&Md<`kVD29AfIcK:ldrkm)HPa?bkn9@!5Lc,K`YjLRi@J/Cp:[1`l0=1?J`o;f0!'Mo8Y,e0tJ;.mPABQt"8n'jniO7gj'-JE]h),`&`/5Us/'CLF%m48&eLcH"5_pLi!9muRX[>I[TVd>35(n6G!./gI&3F%KGu<\#'.k/4$Q471l@SGHA",Z=M\.Y94Z-$'lt_a1:s\*/#kTHht3M_`->g@?PJ,$3@N,o)#"pEP=jMP%(bcJ3FZc5]`V4*,$/mEH(>j]_ef@Npr-(=qje,t/8'tU@L`^+BJ*7P(sf%RHBkt,[P8P@Ra\mDcqg,/A->.M:^n'CakjM$_m/N!"^>AU;].JV3Vb)F([6+!Qt(Ld>BJknV>/Hmd13=$D5lg=X4S`'"ajtF[l1%&aEtuQ$Co]jr4jDPa!T!?8[N(X8RVg0:C!!B_8[muKk7aXI@Z=8DE"B1Xe*go;LQ/uIYTD^;C3q#"U<`OPZ#-80+d9MH2:a%>qql;NVRR>)*0I?@V9>kt^G!$"WUcKj)\W/"a@)mMYLoI."$LW\nL!9tY7[_06;DrMY!b2^lVHZ>F8mHlY@m;miDaG:r[dP5WV?f!<,>&mFAN0k9/KVFd:kmdkF/RW>FILX"W3Jr0aK$O,5d.AMf2)<3oaF(J$,JUT!Jtd=c/BeU*+u4'/\OT>Uc()03;\M,uJ^n,ALP4_p%5J'Lm?SI4\T_=W8coapl4\cc#J4R[MH2A7hm>5[Qq8]^=J"D;Qt?:7HPc'UF6mVY0<5\(IP9:Z1YcOeD_Wc'5lM'727*%@kq5>2EW$[<#HY<-87qQX+DI9,WCA1_@mi/BPSKW2kHLQfdqE2#jbC+2b>351Zn7TbIdFti__&L5]k4PJgbqo93t#*#[7Kpm5UZf[CDhB5(reOi=79.b7qNBIA@&?csBriP/[cH9Sg5RjIQti;B9dA:Y@>LZW?.j5KiOnW$2$`^?*XAg)fWf@]DKAkj4MYnnMb-as[kRS#,2G1Z7OMGu:)(I9N3*`'1E4(f8E1rCkHV1eP\.RAV"rbi/T=rU)G!X1t/m(T6ufq3sH`4tiITZ_\.PL4h8!^-Z.GVpl,P9==@^A@D"G%JDJF)DWRCYks%B2dqQqU+rfR7(1eq_I2YHYcqk-P@s%;MJ#P/LU3Z21]Y7h8endstream +endobj +86 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 2890 +>> +stream +Gau0E>BAQ-&q9SYfLN>Ze%CT$IS/(b9i$,)fUh>#?XOM0&_MA#HD\lI83Sr0dCDfRD(Z<'2'8/*qrcV]Rn9e(ui)l*PhU:tCa<:h+b6cpq);JN)>;)*WpQ"!f/O/`7gBGcEim<_$ns5uaF?ltm"/cm[D!_EBb*Bm(1KThm=9a94_*?pV^o*phCW1$3$i$6si[;89$MQauKCLQ[@)_Z?9f+'kJh$2/$bb1"6F7(K++*W%=KrGrp&dC:8B?CsY^P:]YTq>4iQ><_&&huMo7a;*1ob5qg=iWGDq'fB&$aT(EXW3)Md803ji01sB$VIla,3EAl]3Y:eCOo4oX9ZR7G61P0JnSbgDpaD3]`jBTt+fGqd+8Q#uX&fVYG7tYo?*l(UGjqnA=`O43l01n@3,Uu"hB52dp%/06S=T48a.(*kr[7$'nWXR0`Ub)a%@RDt<;MHLYYm63Uetfkg4\aU42*W%*m55-<.uaOn?0]%#.H]2"U[\,;5._K6$2e!OK?#(ajFNr$?G(rS-XK,e+&*?!KF[V1!r`k*n-!pH'Rk=@B?mVP.?3q!Dl=1LJI`Lhb<),G8X=SsR*6W#AK*K0;V.egFB^r5i#"G^`JgmWq4DeI"Hl&.HPgtMRQqu$NPW;Omp&H8uhE>&>Oq#rumt`>e.)UtlTr28%l`I&^VWA5cP*D0:]c+;#?S!dms6^Guh6[W_3>2LYK/]C_T=@M`dl+E%fJ5&d1[>]TbCW6osIp./s`F@\@[`7>A&lL*c5"T'FFf5Ej*p$OaY<^KdhW`52G(cM-rOproQJJB.*"7T:>'t&'9?s!lD[HFe/9pLRp&O1`1lET1((qS?SQ0f(8\2:ni_"-26Q>c95^,@U'WQY@XEQlMHdDN0lQ"1::"PbC3Ah."\)FFsZQ<"Z^pe.O2WFo_Hp;i8^QG5*^fErSR>j#24T7SC63P)*hnm.Vh_?75.ADi`s1AOV*dtk,SO;>u60nc2DD\*H&U/o@NJii#QT7.fR*k"[8Q;U8pP$sO#!?gsgKYn78R[b*oe?eI:CJeR^f0n+i)6T39E6kL>oRi:f]K!9b1b0im87uWAGa\l_d-]+TG>R,ZD/m$nWcb'e?%^Ha4:L6neXd`d@W]A1+Qtk-9rpOAE`9*aI-gjlXQYQ1Oesl,&&8O-p59BWBP[#b6m7:O]KB6O+%:/RV,jp.35qbpb5/Fhn2[;_`g2D3:O?!VNn>o!6m];@p:,ece!Cdo:2#RO5,JdGtd;B;^<`f^JIQo`+o4EnCpmDtb3AKVm:flE@g@%VH]9rP"IFC!`;(%1'2u:6[0K>UOA%33O%7LsbL'KP1nn^O04'hjnJenDQg_8-(4Ql:V414WWp?&j5_:4E#HFX=Q/L)dQMPM'2$hj+6RGkkChi8b]4DCYW*aJ-TaGpU.?a"(k1P[4@FfEt1'+4"9+spKb%/AD:huh-al:-&RsK,K>!]cH)/(*Oeuqnj$*2$kq/J.CFG5;L_I$G`j72,B1j"DX[WPp2p4d]ER'6[68$$dTCF(s[MZFs+d7HE0%m7bD?OmOO]9nUEAuBa#o``F1T]--$Z$>Ohbt2_56fK\naq&*Lmf:fjZ(K*d=I]NEpqs(G5G=#.-JMjtq!+_4r=H9\FBP0@/PrS!fh\X%**46'mF9/"/WcoAaWmub1h?Qe_HUDM$bCgJUJ,(LWSd#-5t=+e-1_o"RYn-J;ACb'JCcC?-2c%'Al_NkPZ[VI;unea,l79E3OP5Z^%(s:[$/Chhqc'3q!NIF>^q\=^VAd\h8Zim2]D=`>B$=a[0-Bk(IEVY&Gj:r(QB4"8&*u@06*N0(!c"M,7926O--g.TUbH[YOT0\I=/SHr3Bg/qs^G:lbmY,s5a;7rXY*^pc&~>endstream +endobj +87 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3265 +>> +stream +Gatm>=``=W&q9SYkXY$):%8q::"<9)a38..1/;ZSk0X?pOG&uH3$;m'4/>2t1sb0>IT-IiSDKc2c_Y_u*R@*#J%pi:rTKpOBuVqhr3AXJP*)Ta+W.>e46lIpFF(6u`%XKb_Dk,)Y[VOW&L82.Of?r5a&tnssH&0>[4rKc`>u2X1IDSt9BX"r>K7K@sXN.EVSopHRU8(F>a#,m^S#lI\KfZ>[7kkL)]CZ,-[=U)*4Vj?b`9@'NrZ#bE%Z$nl4,K53HmIrup?Q5W+l/Tc/3b"#PiRO7,PTnd**r"Cnr,>\7?.l%r1IUGZ=,rJc@_?Gf)m%rgSE92cJ+=O=@\ZdqY1H2F1]:4Z.AKqd1`PiZkNY15rOc*t\grMs=*%]H6X"k%kQ#WH@/[N<$e`)Ulbmfu])U9_u$RIgV2b+&2delNa9>bA8rON#5Y%'$W5aW,u^p5iE=Xf3/NiT6aQFeuJT(@jS6d;OjH@.>!9*ABj/^!Dn]a&2::k)JdQjHBJrA[rM&sgpUS<1[P4je8\*FZ6>r$:5NjmhAmj9EVa[&d:GPB,A6@p2R#N)O$mdW'7l9(J@HklA-aP4\NKJ[G\;93@#n`=gaRB9SZiSMF]qH+Oq1JoSWfIajGu@>>i#g[SAB&0eY"]\71/,4a8G+FOL>A0Kp=KUb]n:K.Uc:`r1Mp_,^fJu:0VT>Jj0r3t^Pe"?1l[+g^,P!1Z:_km"CDK:Bh3TZ>kr`An-?7jV69t1%/n)f](.aJ30s>Uh<[h$Y>b&_Y%,[(<6J!c$C)/boO$'>8ke(*_0m$GB'i0.P1!^LrKbCMG+=\6,Sf$9\!P#6ThU;2h,S1@\m6CsR=2b;:5!>TbU+[Af,'`Km[Z;PN>>*!'_YG,2^;.u[ncVfl;k`>OrZ.rFYq?Wf/5mec-^/U;b:8dD:r\+8]\IP\qW1ih?ij\kGYIlb=1aN"_R@T$U-)d=OV))NkY*97)_/&6I48k7.P@jE#j0t]2C8;nj%<&*$W"bCG8=fsbo2*;Su35'0A4]W5*XT06d#epglN>((.8R!iPV$s?8*MKLQq6K"=kQA#c`=96Y!HT&b8b)*R5bR_m&d,_Ys5/pk9%KgNOMfn.5@`dkP]0p5lTIf-qX^*CgcA.op6AFBc3,:.dro?V8/oU%I7`,Q^oO&p-kR1rWk,@]9]sC0PV4UqJ@]Q(+J,Pc*"DH>a>d,XnZYpT<%(QK;Q%T>+XkRYqnRcr'LD3MFaF4&=B$oWu>TJOss0]V$T1P?Y%lk7=*'I''1+*ZZ/"BnF?0,c@jSc;7U[=8Q2tFiQc:__]qeh?<),``g`?c$a9Rar*r"HWX-E3dmZ)i=eB"ZT$:K+0[AliY[_TRdp[]_(3^7MZ1ol$$?Ic?H_jIHVBp2KN")G.9$;cK^`Q<_P`W[>9]rp7tYE+m\lkAT]pV;H;$"H!3%6iH,dIR\I6ude9$G@!0\(Q\ab0J-mrQkB?JahkHT$7Qnn';1cPDFDMjYR8,a+,:m,<0n.&Q\TpI4T0M@$2F*VNUq%,1Y_Z)hQXJI#m5m5ce;-bQR6N$5*]&Vq@Q>gL,)Yb->X59ju9Nj*MC'&=*_ZidJg)fYan^^b\nps9F/;,<'qBEuo9G6@We%er1flCf5;HL"TBblC)\IZL+jY8=l@/@m_64h6#;CgUp%e.$e:4_b;r`t#%d_qdF>XLi`[@rBqAqVKq6r1Ilj&k%GQ\Z#X0I$rQ+FR?m7VR7D7jkF""G&X<"i6COW'+doagp>+<9.kjs_7<1!7rU#(QHQc72Qba(&pl=`]s?#40'Vt\@&Ho!.M\e6EV`!;qS.:n!%'K48HLY'WQm/kTAYh[0RU6_),8R[r:;96%r&m:KGZTC\-Eaj&%07\(,a'apZL&53RI@BfqT]&ToG]2!^i\16&NiqB%FHdo*`WZAaSgSb^0&jgjJXUJmF[N\H_JjQORj=3l0Xl=R%>\eD(aS\pbYWd$O<8Br*c:t+F8V<^ugZHqKf<(h"Y2rHEQ6T?.LkHp0O/#Ep!Ul^k/Agn2VqZ5e#=pq?*olg#(^JMK&'C6[+S#5Z1TQ@EsZ\3odXSIEKEeimBAt2bskH3"-1nA5/$st="ZrPBTfr6NoS?e[H)*H9J:.<0=AoSUdUICa&"Z8I).HVAO_$rQc!&@P29QMe_,F%,Z9mq,"_:p*e]0GFUN?fr_@Ptk\T6`!Wo%Y@-*PejQjZ2YF+NBmWDhQ_#9G^Z>T>7aoZjNq"g[s%Xs;iI^Dp:6LJ3$-(]#R$_A/#1I;)-@6T^Kn&ZbWFQG/(86b/MNhj3aiGMo.dK209Y0fGDM#%[]#n;C:?a+t#R@pIce,b9e*d`*?-0eD(%1@\*UnAnW/"t-lFdc%.fCFaU8,_.[U8(XUEt=MgYn;:Vd*5,*Uf`+d.L1_!^9N8478hEg&$dCU>dC65H3)FD)!.AE4%rII"b;!XGcpnchI;L]VQA.*H)9oA](41iu4B_+(cVF/JbkE':\q&DUiThmdYq?Q-t)#D2P+^q6%8?d3g[#-Mh!$)]jendstream +endobj +88 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3204 +>> +stream +Gatm=bAu@W'&Dk(HE!C.!@H8*\?/ddIl*`db)u$5sf#Mt,_i;Bg.@;i)0L%R*IJV%]O*q-*dr$fEq;4F'P8Bg5L_ibEnH'iL'4D:k"O76u9pZsi/#?fL8L@DSBIT-#QXmS`IuN4?0=;MYY5PK3H:_\1m7=tr*WFKhq'QS<6VXg`KeaV6e#66/>chO7)nM5:OqB39V'`H(r0R`Q4n[*B55,gWiLTbBG6[Ahr.Cq4n$kMo4!.dX.5R7UI$9e[oWQGR8iEDG9*:9bjfN'P78g1gFT*4VV59<#lN!4Eb1*FnPAU`]i,blA,M\LBp)ab!:4cNV@70NV/amJT6ujd_+7N0Dp`um0gl$X`e`h'QHgBjOq;8a`1sIdWLa0H!<#(8&,#qQF!oK`R&Zj[NSOaAre\nN2]7P'kW[@I!C;"njQ+=;g4Sm=*&hlUs\]+LUIk>WQ0"[kfl/Z['oLVMX!U\=VZG?XfIX5S*\4,nbN>B]2%OhSu2H;57M_b@tL2^!IDG);R`d-ASKhS9s6LRZ10q:&m^=e@Lj%esCT6+P#dkMZq$,r&*P`n(;+0jEQ.hU<-dAFQ2!4k_,-LDEM?upliAL.]o$02KL%M,KQh%ocFU.jLJXjh*^J8_Q1l#Or-,0M77BphP$A=l:aH&?C]8I(2%4[`VtjUu\lC?t"m1)n80fd#RhaQ*q2&@`Vrf]mh*,s,jd07VYpW2h^eK`ilH^*<7XM_Hn-dIKf`ZSS\5hTq6NNJSFVrViD9Mp0656KSaDsOpi7NguN]PVH#6:=H`YFY2=8K&'+4.L3()sZuFGe_iiJY/6"_]'__L\`:]iG01Fih3Vp),KM'd'kIU-e'`i?mUnNW![uT*UZn?6*3YFcUH(nKfsA[%Et*V%&b-.a%f*3bskl,\d)No9#U;\IY36*5FFR]_'Fr*UV7Quc5$4VBb[V<<[XI/`8\2`J&i4o!/JH0lr.[KrM>5efWZk5Oh2$8I0Jo\!irm=H=C,PG5*LFUL7KRPAY7jAN1X?SuHU@p)k#XARO\!sr4Unpor-VRmUYG`fZ(FagDjFA?)M-HPte1ag"O5Rfd)_!Oe/_S5+f%4K!fsRB2FNPP/A"*h_W?r!rZ;CpLbN6j6X2"TjGh,;'mDro*T%2@M^&qm>D0-UbW%$HFF]mVTJ+PKh"'@Y0EV"FSTea^jR]^-@]k,eCfk/;!s(0_tnlXoDJ`Je&km5N\etSY%IGjSCoVojQ8k$d*+SNl+Z_IW3B\%(WHu7*'[QX00*DeQq,%?rmG/0B6tHaV8!T0m>8T"(Zp''b_Pl]hXYnn%8efqC"iP+`jR,Mh6nD\h>VO^[SL)[rld6A@XHR\Qg!e7D_@nf]=Z.A4o2j_(jrS%"(O@_X/r^laLbBQ75PtWn^Dn]lim?*h#,$L1UK[_/$X7>j-fZ,EcYbpo3SRl4&fq7$eU"JnOT@M+eV6HP&hffn_d(&B]dc]doml(3.jUb:;bhniO0F(%!Isg27_%'K5"6kV$\Y7N,*I%Q`&U9E'?r,?[D#$d#iZaD\$8e_L,jB4gg,Lnhe"EJ;rlc'@3Y$ISrB-a&Q,#ta289XU[UH7&4iW8S9gL;,&*.rP!/%;7)`s%;k&IFdE[n2-##3kFmDb.*m,X,#4d1?Pp="opnWY,Ig#AplouGse%+`bbLYmCH^ghmY>cl_-`XUjFgFtC<=9K?PHXdY/'7DgJAAj\_l<^gAZP3mm\.:@?WVLGMcTQW[-eM[;S-0ad]RaWT7R$fXA2&H:7fLbW=Zk\i#$Q9_"M4l4lf3rmqJPrDEac!Yf#iiC5DhmQHpCMuI1EcN_X0"YEA6#2Ic\Vc]V?RaGjUhWg6MnaCUnSVUokO46JmUH.k#ZTnBdl$F35`(Cr@$"^e\1;uoaCO.)E0XBg2g^F9qbF"6pd*ZP="_TY?PA2oA8uBp#+6#j[sK%>F/:pXiifQY%!"6IF>4T'!'&ijW*?Ql\4)[5]++!9J'&S24_EPf=_T^fq@VZ*h1Tk%o'F0m&P;0fRrYc-J:SOtC()c*ik;SN=Zq0!.Co*'N#;qGR@gR#M(d#>((IWHGdf~>endstream +endobj +89 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3011 +>> +stream +Gau0E?$G$]&q0MXQq)(U9SjkfC7__Nd`pI@Rn_]3AR?PmP#.>B%?OK;?b^eMMNVhq9O.DS`3L\.0Xu1:jpi*R#ld6k1G+F^GsfJn+b^Na/1F8EKPj!#gRF,5MdR&Sd%bQ"cXn)+Iofgk4Ic02*JonfUfR,K4LLr7hGnr31l.A'ZAHl1(D@.pjoYlY;%&W"8GmCjX4c5d3>LgI%`dSXePR$Ot/%4AMehXL&M>5r(/h3nHR$7fM$B@'8B$CreiShhej@XK6RH"p9)`Sj2%O6IH4JeGP#WDiKR2LoA?c9H!pU=fDto[mY)7fIdfGF"!r)/ADdWR4C[BsIUAX2$N,3?oC0mkot%WIi)U6!TD5o*&j)mTI1#"hm@3>?h[pMd>jj;.=Xmum>PTmf+'o?LU+;]jD7=<1Eg+m'%8s?;t8*O4@Q0\Z`17]J6NB"&&hf5.C8MV^Ve2miqlO86hXk[cQc/=J`l$<=lX0imC-!'f_V(Gt]BRR&OPrR^DA##:GqR(d=M\1Z6aS9Ll*J);-]L;U,q>ZDf@s==S;'P5eVle?/ge1<>dLI(+"8er*'3[jCks&F#.G!Kkks(AN3dKM8@B0U=t7JS+2J7qU2\5Y[SJmu\b7T:lS+o>mKm1E?4IHpGYY3Z*2ONj,$7.a4It^?VGL*Qbn,Y*$ql+&;==dQQ^kmnJ.BWB=QQ,s!Z8%&.b"UR!*q$:g$;PY%?5h@`!D5Fmgfss]jS4Wdh(C\7R#RirT7.EB+K*\4I#ak].<_Y6JmD[$bcu_66M1G6k=&gV.h&3YNg?_$>&-8\Zs=c-N9]p)>YYXYXC04e'L`ae;)IP;#D<$g&%M"$6&$(iJj*RNf>3d!1cXEC@o"Qk?7^:Yt)nB/>G-NGJ.aS2A6))7+tm/>UH"4;M%`]G-lZc/^!fLmOctPT4SkX(r)X/1\_S@QZ*=2FEgB0C;V:Hc]ZW&H_5l>LPtNg.U`/W7\$'FoJJ)4iQatd-?*%8!>(h8Hf4(L?Ufo^0?Z1LQUM"`;mV3tm)UR]p\pLS<^'iE9(l>E.k1@YmYcIf2P$5<'598V.$)g'kPLV)iU5b=?DJT,8/&NXBbDjSJRkEE&7b$3*S,RAoTt"'0-SL^#>D:g*m=RQjNLiMtaKGU1nWU1!XP]QiMgl<3LQ/013I5KHE'.grYi[Rt:s][_R'M]D6eWNM,p&=%FD0RJ\NjHfkNGG+no4V`S[eH7FkauT$sFV1j4SJf@i+atl'Q\GcP,oZqnhn/3i0a1LJ?A^FH\?Vab^.IcSDO4$5&V3b?SJk3Z;:&&0boX:dBZ-K_Wtq5TF7\X?nnM5BcNKG1^se=MZ.i#W,=65%n`*5ndl#_k/(=4Gc@pJ::uM+%TNVXojO,&DQ?OOH^YhSVl#SVp/%FW;=YQ;9cMV;j>VC*b(#*/\%#:^.aF)`BB8%a988.([6Elk1-TKNk8"q1Gc"cFFY5N4'=$Z/41ZR?oltB8*17mOeFp4Sc(#@JY09TB'"+@E^BCQA.k4VE+rH!As9ZA`0o5HD_[/0U$0-Qd`l_0%[e;GYGgi4E8jfT5l]78#[M3<6^gucI6+%HPJ\`#a3hs,GIB]W*j>!5]]U-HH`Z\J>Fr1`@^rB-8u$iYPm[_:/cP1Pf,[U$r5L-&q+CRG^D7Uir_=@=`0Os$\#IsD^\YD%FX&^ehcVKU!(&b&\)?SFlYmg#dFrL[XOstJ$@F@Q=QH:>@1>cE]Wo(q[h:PBRK?Fsh6cepC08Q9A^:p:+mM5tiDAA9qeYhDQ)1g8L>/e>dPl,.(tSXK&"),.mgXZ^^s%^#_kcpK`M/cG7@Hgcb(aWUb.eI]n`0k3_t_9eCO(f(DjmkQ3H^I=pB<[JT[:r.dmtZ9X8Pc6(A/PV,0PNA]l$[;i,m/9Io^>l1p5)Gq^iWmJg[BK?2PeH&>eU~>endstream +endobj +90 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3135 +>> +stream +Gau0Fa`?-,'#!T]njmt$+?",>PK3QR]>nb=VD#XtJHAt+/2X@LMY$N4Z3gscMl,U/m'&kZKg\ro04/,d1j@5?ohN?kB@a!P]dih9`o;G;`+7.QjT;-HnUkp?ZZ'ad>FN*2.S@E_-T6`Q[VJ3*%Yb%K"Pb\Mrt,kCORC>eT7J&W<^*D)L[dVY"Fi*J%j:el:00Vd`?P_N2fMHP`,)9?2m:D^[V[AV6H>+&/0^%li+aBn%W`]"l=>*ZZN3#XQ&*<b!^H^01ALb,Xes$K+2mq/B'$1S_=[o,ZWKu;=2C']Mb!]r8X1V&BA4iiFeZGqI=(F40:SkuG8nof6Uo)(F;ce7i$_)"9'#%UAXi4IYn)!1JZ(2u@pRc34@*T@.g3C='T/U*'qW1TO;-=d%nJ4-:&lHMZh\rKIC7D*9pJf"O\EVBG_[Gr6+lZ+qfP^$?(;[Kn)RdNSJk_j*Be*p-Mi,.sfq:?Aa-NTWYAT$]p,LJ594;-hj.nu$+>"6dF,VJ8Yu9nbC,B0t'^SaL10%66Vu/68-r7OD\OFEeJI3XmamAg$&KbT<%&Z]/7?EFgcH,".k3m+IkjII^-3MPfPXHC^H8=@?cD3!gH]":%;%%=E_O:o/%bjHkHNVa>RM-/78-W6T``e#""-=]FZ`.^456j5qYDk(qqV8klKd9Ss3Gm_#V&=LLf]'DAVQ0M!T"LUTl\o/aHh6Fn(U$BsXTRBL]r*r^dOnOZco8>6JEqPQ/qiL)1/R18SoiF#jh`1@SL(fe])9`=B0]ej&/1pM=!IYOCO>e0QPa9Y#*i6GREcp=mqK^9-OED"68kHX7MPk0B)N]L)2+W5Wr-#-BP\-="B"L0V6q6r#1UWA.P\.6]8.G7[3i>IQX.&%\Qm#H[u>0\jEMI9?E5ui7>k'B^S!U,3qoENrV/B=VjDiRd!t.nB8pks!4e5q@p2l,REBU[ck3ZgJ]:tN&*,7l/5<-\Bn.?_Ma,c'g/M;$QJY_S$BuGrjAsfX.N6[+>`)`N38H&'LHY-F+HcJ2/X*2(=V0LK2966FC6Xq1+J0Vt1@V]aP[1@0)q:e`&MO'u@V9'Q@EV_c%@X+h]K?Pa""dYFr.hq],>Utq4hSDf-fP:t:]5t`Kle4%Ha(c][sRXS)_0`*Y]$GN2oZP>92FMZ:pJcPNPSG3sSbj(bT[M5i*X:P0FhkMqQ[36tn6Yh?ftErMK4,Ns(@g.XFM/G:jhWe^TFtm,T=%SoiH7N:u,::G!ckbVh\PR7J/2\u(@9+`1t6LbPlu.1+/^d$H1S=$_FKH5o.Y>))2piu^$V:#S3P[@,s)R1(pR[Am6pP]IYgRI&&Kk4f9S24OstAu\6;kbQqT$.hmM96isKdjm:JV-t]R.W&-Oa[RU9a$Hp=J[9(g!EEha9C>1$3'_Gc,`94@'PD1a,4`lG7^)@/,Nd+W*Pifn8mcRi2PnmY[Z7Km7/o3bO.XaVfFj!UkWsfH%6eJ?,jMaCVrKoam1Wb6X<-jiq)2*DR)]P]\Bs0\s's5s'eF2l<.AF@kt(2#SBnrj`"D[63&F?ul]PUcEmYF$"B&grR0=TLHmeh,bZ,QduNB%KG9Rs5(VAaUp6n'HGoFQi;_(4h-%rh2V5N\;nnkjlg)te?'3m9+F=S=l!Wa'Wt0pd'3eVD^-j-J\im>t]3EMZ!d,uoMM*7k0fdqCME!+0]?-CJM5I4FLa>WgQ&KsSa+^GE6.&\[E9&mOa&@hqi<1EN!p6&oh`m>0#0]PK4rq^Ft.n5mU55]8\L]M+eeXG!]-8@Ru[HeYugYnZNqlr8]J_prR/.7sF47rndS$2ImfV?UstY$WM&AN2QCi/>p6i8!3F>^%e$ASrb1Niea#H-j!rJrt6#N^."V5=t6PB=BBlM$kMVA.5P,Lmr#Z8Po_S~>endstream +endobj +91 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3066 +>> +stream +Gau0EbBDW"'&EF8C8pGB;1.UoH^0GOFO*OVh6CU=1E2,Q-,_(F#!k8HlD!RpXc`oArq4L]3!]6A*DA\Di;%>YJepHkgjOnfG8Ga936T)F('-CQjjFZOpqQ:Bjq3">FQ(I%iM(jjk:At+(/>]5%^W_3Gk:&QKA2;rklne\CIcXd:,iV+f*<\qU:Il=-WnU1Ka2?e+7L3?m*bmW6+_.Sh/HB9Jn=Gl/c6p_"oMD7^/do8=hmbOMLWFt2n8a=2E4rqQLX^mGeq4CJ"i"EgF`?E=j.Hno%kaldJKU,4q&7q/:(j($U/j&USC"tT(USh(lf.4prGj(.h8E"7(bV8r9BE<])4e>QnM$^NYo]@BC"8+/ULqXE;k80emIK.'X#J?:;-`;Bre9<0(("fk>:pT:bH(<9P)SaQ-pOj^!>*b9%g@3H+O\-@l2Gi?A4pJ^Z"l>`e`a#lk_hnS-RQBqlD\6IN5`;B!J0_S$YgJRhB)rJ?@0"!#A]^j9Uo)c7)IbOGN@*^1RAd^\722/)(du.0XhYS@K+$URloQkd;r%CP_C]ul$U6pqX1]ZdnJ;j44D)4Q"kn".E?H>Q9EYi\/TM,_F%0W.H!4R#3WEX-$nRl3O[VWRI37'7Z!GT0fN&K*JL4X!.L5+;Q&6t*(RQ0-1'6J9>C/@E97efr-'PSKPXfcXM32EOZaqaKd[E*lFakH?IeV_aP3*YP%NjK;bn1NAj8&P!RE-0la@#-juPeJ=HbhNdC=]qVg'q$9t36_*>$$l9!l%7Z52q,Hl^<^KHeRjOZn!6'm4HA;Yfk"7GW97B7]FJh)SH/-=aEZS;]<&qh=P)1`qh;5a1@@jS\^.'KTl\a(M&-I+nK5[",1+X9@'+dO9-+hm*g]uP02GaPu,Nfi0O8n5SLj3B.\F>iG!eWHJ<=_^Y5Y:j@-YogV#Kgh>Bqjmu(SdZZQh7iMW;LHkYc*)K's*V74%AS3tRQg=Z*phY4QaM!&f.tZHIqn"cl+kPu;3\dfW59abI?cA*=kV7`LLK*DYEVsORjsOp(!gfeb7?/\5Y6-L+AJ\hEG>,38W_t^L/Bk)5Z+qUV35&KflG-_%]-ii0R6Pos)sffemYuC8;.b3:$W:]iN4l1"YtK(1^u>AH-tK`+.c+BN5<2\:FM-#_6D4E>Pn'<&nWRJ/CkQ^Cl\8CkB]lRB:je2,"ne$rAsA-eMl3(b:bqc(:D$G/(V.NB:q+[@G5J/%f`sQ``,W'="pRrW8I/0N.[tq6ppchbtDB)@=hS,\FFJOWXT9g884fL1aWiS65?4c`Hk]jRF8+_?6A=gIX^t$4Rf!(_)l`/NVR5\$sR=W7SZT\F/"9E^V5bbpAs@"S)ef/5b=Bh+[Z0RKY#]@+VYjaT*+?/Uc]3DAb'7r,FsPt&t,N%U*0d8P<">@Ed=Gk;Z4BFT;5Te;,<[3/hdAHSRMD=KF\_/mq*t.^/G9En!$=e4I#[P>h`Qc;d=$]&:/uR7P8YDXV=0(3D\jXVPt^3&pR(O1V=V.*cYeP'Q(6&)-etsc$@-\hgZToiAX(fiFO?[kfB1CXdMLGMhW/,']Q$&cLXPa%hRaP*$O9;0LY+qCN3@B^p`F;2PD-ae#b>eXaOPBqTr1o3qHZc(@Ad49u)GFJQYBZ-*sMb]\c8E^J,t`i+Zp;P_cA58Eqt*7Z'u8KU)n2XnZB^YENZmK%ZI0Y2$B/Q%E)&XdI'nDa#Tqd>L'?bVg#eD/"J=43Yu[(e1\E7d&F_4d@=081?l]#A=Z&D$7S#-tmANFBa@n;4pbe(,$`d[u.+YH<;V,PNaGg>h6=h=QMs&bj)WegY!A.=JFUfeht?O6h>bc"7Ob[H*StB%CjJ`(<=);bX;V(#sMsL2:M-$#k2_L[5]3MS4B9;1^&BX5U0QD*5(m1hjpMHq"o*:2KP+RK]ak`^1"ijTNK2K>@^bA?A*puoi5lD6I;HV7_SrrGCWA/!&Zf?TO5=^K(4LWS?JXTCi:TN&+u^tX-rtfY.`^>LMLLL(J\:MIY/\hEHW!i1&9;Re2CdgmSkoNWb65#RXQ.1+@G%+KG,TsFFGK2+IPl_/:@4I@jtGcuXG?\5QtF-]NRlg4e*Ama:rs3sjEd0^=d%@0dQTB;U]&c"2(;dI=<\h@2U.0j/_?K.]lP"f(;D)FUTLJB1=Ms>#S7//>chAU/FXPendstream +endobj +92 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3012 +>> +stream +Gau0F9m>>O'"n*CoJ*sRVF9_(3G$g1*P[r/nKcEJAM4T$8Vfri"-A\R^OE3aI`QM<3gT@-&m5hV!nH+,e]ib(_Oo3R)eVS=\>/"9+b^NaXXTbC'>"'+n*_n.\d0)3E',4@0OHB*nJ&0(31VYcj1d3u.IAd/RYJXf6K<>FR8?B%fdI,=p"P]p?.;NnEAcj:<(#@rIg_`m1nV#3-S/Bst`p)\6QRejo/n`uD^^;E/==Gkpg055T);?lMkc]okId3oi+!JklN_`W/Zmaf,k?U\BhKqbP#<;&Uf8Z[Bun:uR0fmpauAbC=QDMEI"bmTO`>),XRo7o;(:l1JDsP,Cd=l?#:+LCOa/M"aL*l&'>D8;E^+4Iq*n>?.WM@oUDpQAVLlY^ng_81m^7!%lNjbe4+8MO,4IZ'es2Q`4,I\"H*eQ[tfKO*Ng[Q?i9QZ#?AnnE-kT&nPu=DMJjf)(394IBN#D#N&>*/Z5;=mi].Vg#U/"4DRHMl!Z4cSrOWRP'3V$#pkJ+/a;T^V1_I-3?\'q0kH:37]RG%(M04PbKXA-W65>jLcZQ1uT))_sMV+r+5/Sod6"9jZ=9kqMY'MD[&K#R]GDN8f=&(V1OaBQ]ZZWETKe8du!^^iCeqaLjg;d9H8k`CVINlOWleJ\SZ84U'9$7X5ie7C7K^[qK_Ai?'90tD+12nQ])T76kg&!\J6E1Jt'\&IR&kC5#X8"U;US6H;0gK/%e%'I0q;g(^cNPrAgO:7=8IKkA$&XX0s]/,Toorcp4GlJAmO6j.SYZZ=)og78t3QI9UG?YIR7kJcc2hdrB.?qXU.BlXKqsB7b\8p?ZKJ1<@[=5,\l@N#OtDd%bOGAAB#`;3rt4D)56UE3/Y\PN@C3`7Y"rR*,9%_V@='gW'jYmp5djj-b.G,?`4R+L<1&]C:sY:/:X$A`ZDnY$%Do?VK3Nc%2$Xd-jB'$2NU\/`)Y]L`hV-&NRg0TT.oZl5CD1_flFRR*<*H'L*PdmJj`baXFOq6lLNHO\%Tq*[LkcXh]d$\"')eOK5fKn/ULu]>JGc^?3j9;p_f`McNt,j#7(-r^Z:p"a!V?Cb9!!Ahdq;ZQXuFl/&te@3)#X%f6EgPiQs0*%NM#;@t%0aVgblqN1p0FJCf4;f@*2@[^2+Rn/L'BXOUZt*68u+(j=NVdgh@6060X,,\5CPjf=VQrJ@-[Vd%t#rWhD+YS'qJs&HI.PpCR3g9G1)d!qG!?(=P=`+AU&-m6?6(FRHP;*=L,T-c.TTBK"FF3OD%0N)?4H/(%-K<`cX@LHP[pA%74]h9=T'KI$M6=n0HIBLR7pe0GVjau+Np,-9T>*R'7-lg[Ds]+7K55=nR8;_N`f"QO[1SJ'`Y=Bt3S%^r+&/@s3T<&a[i]&BB3+!0)e-RYX2al)G4B'O^9L9)ja1.a^AT)JbEHrG_[U\:mTZpq-LQq2Ja<9JH`sNWndWhEfA*3Bc9]kiLL*jt*uV_TcZ!1edTB*`Q8(]33f(0Fa[1<]/MHPj>g:**R0C/BA>QkKi;.;j;OT^g$2$`\M-MAO*^ek"Wo[l:M6$-\K&ja-OikC+$t.OT5Su&AUdEH>heRDmqG_"KIc,@osrBiitt(Q+&rU3D'g\)s3=;SoV*F=/5A7'<*g*F4e)I/":Wokakc<4XFDV"^mo3Xr>@m26d/r'IALqZh=[H!UPh<98\oHcU%&:fiBWa%iR4XAm>LiWmTVel`U=Te0`!r,3:/&K@:EoY5Ic3%EM,^(=qK8j2LK$H[SSe_Q%%IGXfcr!]BpIQp>9Ur#:i)L?k4WN2_i_9qk9cIRo\%J6OFF1.X`OfT8oXld_QH\/B*DY=R'gkcikY/4lCo;3)Tib.2J>Mg>qbe7/MmfeBn%WALu;isUq+2a]hm^.aL??9)gAu7CW!m*rA]+upWP.-WZRA4Kb7;XmYGnZ$PnM?j#`,o+N*,&H:MF0JfX,;SZWI*^gm@p(6-qa`Q%=M&(k!*c8goc&8M/s=\I\&!P9,tR8=Ri=kREWp0[q_b^`ce+P!J,WSdjj=]!g@Rn]_&LIlt,,!Ib]j0Iq0%3Bsao^ORl_1P)endstream +endobj +93 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3052 +>> +stream +GauHMgNM=2&q'FToV6Vk9Sp>anWPot8TH^FnL!+``uKng,`I!f!48m(qQ0rE;Y#g-XmF/$jB*\KY-+o[1h%B]:[J'TEh\%g;?)uMiZVSZ.3:uh])#):=%@`]7Alo*1`K:K4$=UE-MSS#PNeUOIQ333FF.!6,`YX?1n$kn1$(6[%\e1drgVj!"*Rc)AVTS-nRUgoIj;u3a3EUh1n"I]I'^-dre:U9+b+r1=@8NI%^IK(:Bkln!N_"hTG2a;oSSYnf"!2B-*2LWT$(f#gQ(O2WcWM28Pi;##1D*UH`G4#?fA"WPK;2CZQ9=Lb3?K0-L#K]MJP.o(D'e+AmWSW`>MlsO]c'XM%PBqHU>*(B*1S7(^R#iOWMhAgVI_B!G:GC29Q*\K,275%BfqAe#Gg`OAL2nLOXOobM:X+q80UW9AOVa&1T'Y>ko;,e.p5tP\D8Wm"jVoK+U$7`>;"%#jd*)!;S+@\^&S#09l`VP6r[Wh11`D)$\Af&",s39+5[4:$WV,kKLlAi's[3H/'g5P8PRNN,,bC=@Nf5@4Zc9;lj%J^R(U+ZS'q,uSXWpdhff3"fUl?OXlsV8/[ZO6@E>5N#K?hDLXbHG9-LQ+4b3a"?a>.ITQCCW6+b4(-Z.gcJqGah57UFN@iGGj7aIjYXT!6^[Z^>$5TaM[\JMQ-3Ye=k!%HeWQb(C."(cn7[%`7N?D]K0lF;0Ks9D4:jDen)Nu45KYE?r-Mas't`;+q:J.FCq4IF]k1Vnlg(f=Ccg"$#Z[PDPoA,)^fkRfA]8b\haZ_kUj4BPaS&u>PnK/s#rhdf?gq$bgFm_4/p,Dh^22%#K"Ca10jf+T)2QH_C3.-$_6bOn4g;TI28AsotrKUi_F6M;>MV)=^IH&*b@P0>2&)=<9CTnmqL[SuAP8`&>'ibWkZ5Nd2["?Qg/&M8'V1=\a+s7%s4qfsXq)=ll0nscIBuZoRqu?oiV$JCeZGCWP)NY!<=JdRAVWXGq&jqNB2ToLR\H5a]R43)lrW_q;+OdFKC"QeTb1b.%Nd%,H%MGZPN16-AeqIN=]k>!N([:(U4`cW%^!J]=[up2Yii7R]/[\b2hONUPGh^U1GGQV^">#!@]of!&X\,EPg7A>"2dhT8m)^cK#6M<[KB2@nO31D"::5DW*HCW-A[^WR!=V57rsG,J.-f3=$W)?9>/L?XE^:Oh.Q4k$H[HOfR)('pJq"qWVV(oB%)8F:pF9"!YTNV)mKMP"Y=V?Yrh\U<3"q>>1Me7(!b0a$a.P'arNee*4m#%3*E!eI-9>lU&f:CZUXgX_Zhr32renKA:aK3QG@oU)`1hrEbkH]NLFQ"o94`*XT5f:/&41`of:V':pKs4rU0oVg,;CA[0*@BT#U]\C'tSO+VJ"D`Sd>`<$Th'9>>h>sAaK+;L?'m)LeuNHGFB7Uj[#?+Ph<06B/HeVkkN8o[H+)2k4akK-_KA=k-(WZsj2MQ,^F!jg4FU!`IA+Dk=$KBe5:HE6?M*b2Kr_OVKT;jhV#OLn;4FC9,I:rSmZ8b:<#EA?64*,cBS#PZZL2(Km6dA9H&\Zd2(@+*%$e\9b2h9\&>Xl:gBj)\K=+Y/>_5(d>`k9j-aOE`9?OsB]B;Q-5@",0oe">8LOk/FJ]8#!G4@%O11&?^RiFXWg1sbS:`n[?l6Ek;#7YRnmF9I#I+ok[C]S:LnffTJCHbj@ElMgm"FacVmDZJiaNnc&WIsdhmGQeBdh&,e5omap`k`gB)8FXd7N.gkVhP_ROJ26@l0K[^93fiseDns7-dEUaeIRkD?UV'D5P?&S'*gn+T2!uB\NE^m>*5TZ9ppf+SI)udk^<:+^'Hg(R+F#_W^sEVh;hR"<9nT\S+m:`)[f@E0k0&1haf;]#FFlm]5We66H:,UeV&!P%l?U$\SE$=SfbRe]%Kn_.U=tFM--!0a@]9jYAJ.%mM"*pm@#:6YsQ\)sr%#k-c4JGLC94s/Whd'[ATZ2D&h<.KgF_sm_gm6g+APW('217r!`7YGJVIH(r4\M@Ca/]O^c,NkR47.];+_PV(q5>'3iS!E(+#_"0)7_BYe!D@&HC\k"fWMrA)i/E.#i%]Z$,(JL%A_#\GJ7Uq\4*MM-:tLD=k[f"i!OUf3h0FL9iojh$ZoVCf`m8]cendstream +endobj +94 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 2927 +>> +stream +Gau0EgN)&Y&q'FTbbNK5M%V77QgBpFP3f%q[hHCI4@:AB+XRL"+Jn;j[g0RfM.8TT>cEU'+X*MVVl+1kdhMh0pOAD>rHUbo[m'Tgh'D(-]fFo]V`-ONh_)Rlbb$J"j=OH6?l%a?i.m4JIJN3G$gDVm;s8S/3R*lHHqkQ5MlGkmR^X_O?SkD/EAcT!#.4)=#Qt)'ShC&*7O9Oa[j^g76kmb;'R:rQ19/:EimjUegp<]Rc]DU'%@/N"Upk$AS@YciDJ:)R^Z7*>H%0hh`=K"6rj[CZ-#_qd'7\.N=e1c^@;s/UaL@=kN3nH3-]pmXk`uRN^WNLN==,M!N6[6DeYss.9F#EP9-`PS8ngp[_Mrmg&(8g2RTN#?a?_8i(TE9kfcKT;P@c(eS,+VHlc:F\Y^J1Q6,;W@7X/5@Y\rte!@D8Q5e[41Zc*n5&LqA+.8,#!eL$QgiRAN$K@;57PP5`G/gsok##P\-hX&3XknZJc.\@YS99F1ZTPH:C#%C[i;e!.gQ;&Q_P4cMa6:A;GF\+nH%B^AT]=9O%%,tJ@>:6O_O,.t/ON%IdTV,XMdY.cAg/US&cnBn&C&H:iBb,/\^OD.G?2e,@fIYLd/mKc#>ges"Gn)pXRmkK<11guHWi%mEl&LJRD6u"eUa6Q[OG_h5^/g>^7,d.MOY#>pQ/bSM`>6FCBp@qs9ZuJCJ]$$405:M,(H@dbj'_$@jYZlqXoUVK\r-B6m8j.1*S?n_ki"&g<3YrP'S*s,*I,98@:[[&L"3u[dO9rg-iU;i(Cb5)Z0Vh5Z_R,+_]2'6h@lF21/bCDK&aq?M%mur!iH*]6a'BO6O)Jm;D&h7LJUi2MhYqZ(b4)W'K.%O^U=XHLtCIEh=V4Zfe(3ICOHW?S+-G7(HK('hBAp1(kqfTgs,eFta21n/V0ZHT25cib)ZhQ`@4]IAtkLMRuP!2OkP"iPpFCf?ts!Kt&76nO3G:7`FP"ZcAE6bo&-GTEh<)*X'f(,NfR^e?+0@QG-"\&qbq@FBu5\G:^UeYu9?SPbXcpPYS\f.Tt-#MuY_/Pr;CqKi8S2e;?dI(6AaVXO>L]V#Vh`2^/MhZ"JF76pp$*H@PUMeOSB70Q]@&:)=d3N.8>33>a6dNI,BPk,UNXOl_*WNU6k?PTte*#M-:N8Hg1%c_-`s+'i)B:/@8CBYG4_#5eG6bajD+&X>_FbuWe%gUrl@`QT+@Qg<&q`Qo17`co?jV(D)ZJ&JB,%)bkQ_FXs-;@$io"`INCbXTT-&.17k^<[^@1@%kbDiMghU.00*IIIg>tlt=e'1!8V3UCXAQrkTcUK$<21j0e29\&X&Zpo@E0O_7H]4p')5=];jS#obR?j@(Qccn<2c;bH="Z`mg84B26WdFtD*0Jj7.hE>oqfC9DcBdKc,WuUl4DK`ajNT&h'0&TL2/[DdeD=i&On>i_%c,-OL0o:o?T!)7.?11L':M.-jd*?7ReU*+&I^"-!D19!%m8s;kio;HfSV9`7lJZsGJ#gfpSS?oY(+Rkr4o#%+[m8SG>3H//Ip@mU$Qu,LSC$[n2rV4e230ZjTbC'KC@Q/AW9B@hn?m?.dlq[/R4N5l0pqM\/fB/VU8\>[m<\T03rX)ng+@b3[^Wg`_>]t33HkIQdrO3JR)cZnOkKE'ZE?"I!$J68n1Q`;ajB@[F5$3_0L?=+GqN6,bArM^4pV*3?h^McZ<^1,36JFs@Z<$C>;p`aG\I$lBa#Dd!_U%I]lQ1MC\g74k!P8%Brsbef~>endstream +endobj +95 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3407 +>> +stream +Gau0FflGh,(4GpYi).s7e)I7$k@#hRVn4^Lm\F?jnhMj0#t]qE630?pqYNGm+=VSu(ru!=Ci]b4cJ?dZ@*$@_+1g?4ak2)]f]@#p$R9i$A76)rm,eCsGBV4:RI,Pq8JbK5f8/(@:n!)1%1<1%r6t3(VJ.5)ra,K_*<1`e&Fr8Z!Z[.s`@T`:H>dB`P\92Yn]+;&(b:a(tBKhFdLUZ=9Z@Q)\;c$=<[hh0`]k^X*+=UX1^BI[G)#nD%AQj2:,YiB2oDJ>F!/joc2ANTamHoKtnt;AN"62%6)u)1D'ho^@P;i27/?N9K^8bT(%hViW#pdd\;"5nd*&*J@`(HGr@G`>qd;MaB+OUOqq92a7W*]KTe+ddT[KWthsV_$Z=.KP"e4/<9NHhUHQl$.qJP^sOuFh5.G#I>.*LH0aP=kelWP:Ba/YSHL^Y+NsfuY_B"E]#rUMBT@JVBpC\S"I.3<#^Wpb9/n7Y*O(c$RJBsmjYg$MKd%muei(TBQ]7J*fi!$L79IZMW]jS6#YL#-;#QbjYYaklAS*<@N1(C+a#Uhi4FJJjq'Q'ps#*"O\0Fj9P^9V=F.n+H.eH!\+flMhmS7Mkj,s7^L<["]aXiX7AWkF*@I9go0hJ>+>q?eXRc5B@g00Y;Wgg@CiQBi^_'/0+fJUlk1CabrQi+SH=Fu$kgo%Jls2)JiI%EJn-Mr=/Y3_8Bt'@_NY)S#GonXs^4L,6a2(shm_#=o#e;0\m!C5F#lWhpX0cuVaGn+QZI`!2m]mtW>%Mql)L_\80>Q?gk.T8d.%--Sk!Uo>XGf,'>_T7gX$ulDQAP.U.&NKmPkf='MKhI$lf,c*!g&.J#A,F(I5i=6R3*&W0We(C3Hrg[UO96@qnHr#@/)tU6T]ep'4E,_Z7P^X;A6TN/FX4*K?se=_"hXRJhV3VsSHc,6r;/:+m!2P),J8jKc(nn[5>&VbUKiGL535HqkY&1i/kV<:k6-RmEo:_J6obRj%*Dah9el%_d$;,MDd4E31B';G;HJ[1/igC7pY;`U"dSeUSjkr.?s;(?e#7JC%hdZf0nPM*Kb#'X`;\SDk0"%Q3]l:;.TiXjnNm:Y#1spkG_mV>lQ'--.WSDj&er3T;Zo%>WUsZNdE/#t/3/^C+]j(DAtQFQL@8i%=8>blJdZ(bPSfiWXbBENC^n_1P8Tth#(5sR.q4uOf>Y^lZ7V$#,)+)8:1\fM,I?`_Z$RK!52C0K%Tr5$^&7gA9.W&&Sp@GDh;Wsc2`WHmR]ZcVDbJMIR:Cdu!pbsrql8*]P@a_M>*.W>.V&pYh9u0*>n!(Ihd?%B*7*W^eEC(3;*9o$/:qP!%M8r,(_C`Z`7^2e?&c^@7iMk^c?5\O-9"]>NuLC0-qXNW_H]d,:m6.6CiuKn3,9?i;u6b";A<,c:-MamCp^iBTXZ\'8Ruh;"bf@rS`rf'^o^6H_*"TE/=:c7n1B'8aLpAjIEAMi^\!VO"tZ0P/jU*;`0HrPj"MbVi7'Ub@PVCW@_B=ZP8b=2IK;AoH`;U#P:KE=rG]fmr\n?6`jqQ]=juACdTd&%9uf"@:=NKt[,KV/(HUW:/?n:e3I41TGt[(-@m]\S4.ebIT+S*NtA7oETW[aY9I%COR%NQ"0$e=<1sNH/q3pYRH_VK'CT<$RY#fCk$/;K);O+E\QMT6;+:]-$eJ>0`hosrY%RE7WcLG]fFZ,cq$4'XT*1B?XoD()]:r=`RKh0JqHLZFUVN]'5bVpmY`L6:Ku)%T+-?J'Cmm\]M>q@R[Fo$KWA%0b"K$3g>/fe%u85Y0X`i:`sF]sN)I54u`M8u8=D^?A$F6d>PJ#c%Q'eL3Mg&k*CZNhVq<@hLdU7,qKj^\8NYh&/bmSe@GrId3.Ea^UcmM)617sIRd?2rClQBTP;U2Z7VIB.=F-ZYFFP=Om:Ch)?,gl23B^Jb\ed2l*%YOH>Ri-&1-o)1F*P4+31c8pl#(RP^\cWF<^tfM17l#m7f,*aX*R3C^tpqbR@6JX]+UO-:BZX:11.!Sm9*mok@HQ#eL)'/2bgm"L\ZP]P:YWA\LLGgr;*dgpYPA)&8`jhi@'B:r8"mWGdjf8^p(1M\DBZ`;dSsnJj[!$l0[(Smct.bkLDX_)]^372%NjQ!'$hG7OhtW556QJZ9AH5,lW0uK6:m%$s!B>MDi/EjjL*IG""YnsOF5Pa/J(N\p$.=EEm6^F.l#7?bh/o">QU_eBg-+q-+7/?4cqcdf~>endstream +endobj +96 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 1651 +>> +stream +Gatn&gN)"=&;KZP'R`Q]N/U$]YW&OEj\Q]\H>T[&PFFjQ_(;@D1,FMnT76eX#tu=TP1\m%_5>c3dpMk,m?e+QMSmcA,l2XY=)VQ*LGUY4:83F(+6\d]`TN.m3f6Fk&OhoJF>un_3fMPXN,INZ6n)t+1o51K9kZA?P(ZG"a+Gc]GJ>W=]BEKq?k)#"c>f)Ea_WZ,.#DTs_3C\AA=Q>&1/%X4gkF@k*i9P/.]IX0``?7kqWj/*b-e&>g@5s+f`$q#cYjGW3Ne2t?O]mVgnNbMsr>//jM1Q@7uG&9p&"66??r0*CU>'Mj,-i-t&9Iq).bjOY5]T9[O\jsNb[Ac&XDT.9QF_*Q\,n&"AR:?$BlQ/XPX7gQY$MTgT96suX=QI*cAsj:;jSZZaaIM&TH+U2?:?pqd_hG+ros^H-Rmecs4(Z!YGoUG9oh!oADsfF[%mYV'TNkY7:Zc?@PX:Q?DNR>dg\-`/EZsUr!coqi](duBRdibWI0KoT%_]d?m6RI^1s:b4PR-MGpT;ZMcNUo)dC(grZ]NULPWf1IqD>"#pQs=#b2Dgn/@5uA\uAK!&\F-1WR89'Dj:)28R!l>AO?&?X`h(:DFMhVD7pMU`/0(-T9am$dI]\u+;4K6DLd=ul&o>YJ\lRSf#mBo>Ohm,6eceW&W/mNr7c8mdV8P&9f!1n!&/[2^qKII!/;N0mf\/lN4F;YV&'nW:I+]bP1^0LYEpqBd&_Y!JYDVogD;IV$@8UUK9keUbI:nmM$t?KfQU!3X=6fd#gs0FCI.6IpOc`,%'FL-+I@L\F6;3_5.W.Le".^YQYIZ!0+4"][*&+:[;[:m`.6l.I#]p+8d(k0iAS4DaEVs1OVmBQ>&r4r3Q1tsll/!^22GcMR=CCDVb8V5XrB*TmK68U/Kc!Hoh^CE4V42"&%hhY0^mor^VZpJa8hS)>Ohce,q3jh%[\Hpcg\/PA%Y]W2m?V+q4$55.paqAH)BufouMd[5mT#"n01lI"\QXOmWcIZ?u:U#(FD)%#(@Cl0Sfa4YUU>1WgBsbPd9eK`+FLG1;(hq:M`nRYLn$u\VB$)D*3`p[2[TbEq(p8QqkLEV^_SF&8aT=*?/o\o`H.N!Bn_hN:hn+B3jaaUG\KE*A8D^#Dn[_+L:J)\6k>m<CdOQ>mTK9Xp)@5eZ0qdEk1'A#*1O`?_El#:n>40!NClKH>](dA0q^a5~>endstream +endobj +97 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 3464 +>> +stream +GauHN>C5,7&UjDWQq)@9;7oJp\kh2Lu^V4?rMe"3@U9;r*M^&SID/eX])2n[gnMbDOdt6e]3uYjD-j]'T8O;^^FS@T)]"@fdjX!b8bp)^j8J4K+r#Z-,l'srM\ah)S]dd_/GY(TVb_os\BJT7o@+md+o^Sq#HA8m`p:M?sM^S&M&'9`^q:&3]Me:F_(6D[=LS.jX4*3IPYc`S\hb.I%.<>:X,Q4c'MVaZ,>T$Bh?./UTP^fF>:NZ=5:N/9#%hnAd$0DK]rJ!I!So,=`hJjhLgZj,#urGY'3-`0$*d:Ai%g65g"`4;^Z5+0KuM@(UB%e@o.$3#m$)@n^kr4)=Rm@__p\,6t.5\T+fupID\.bTb'Jj^rig;e5u`UGGAZkU"=SBDd1k4$"6a@NGsL\23^68`9e9'XU'r`C,/>'DkE^prgbQHp::O1V2?32QL*OW*W,3.U*i@$9Ig<5OY5s8brVeY-Y6!\tPupf:lM5K=h,%I/hDBI!l7O/a-mTba3X&l@^A*E7VDdoZ4[`CD'c^knj.lH_9X6^"9]!)>Wg3T5Wqi:,gVVO=2ufC$6XWDu,`)f6SZ7]WWj=&rbrH1(og/c7af]+Mge9nG>tJ9r>C2CF\&jN=V;,M#R4aq98YO*qPb>a67rh9[*@9/0VcWU]N`Y*I1HL%/P9D_UY,$PP(%%7E3HbSnBO3lh<\pHXRtpI]=AW6tlc:qoCN=*N<#O7"Z:q*CFCH\tX(HV,[Uk#sJ`=IIBeEB$XB&=jK37L>Uk+,V8*U+@=Vk80&<10QnC2>d`H(FF9Jh`W()$.k!b-qAgT&-15KH0V)/M//*IMSkjZ&HI;sS1#)Rcc6bh9W4#9F(ED45d!&iGl27_k4dJS[Dd](p>LJY,4*AItJ]>(DPtr/oR*>KW2lclo`8\s?#2HWr@$+:JRd>:GhqN6Yb//mrT6<(b`EqW6'1isu?C('27>Jc1rnhZ;HJL!k=i+gpp#nV>jXZo#>o/*ofnVb,iF$i7+r;<r"h.@O-MeAB_VCrDK(b?e`oaF+t;2bY&4cOkLr\Q$o?N*pf]73&SYD,Y6:8>XsP/N/dbP]Uen0Oi!nN^4"g"Y_@"qkUs9fZLo?.IihRl6oOQJ[`54&IFg]&am'43-)Mn+op-Q'$L?TX&oDhNt-)KQuA[1%KAfKNZ5?.=`[&_AG]4/7a?RL#9/6_O)dWQH%@f_CuUIbRCS)LDYq(g9L]5.u>sI\Ld(iB#9:jja`1IB^.3S^t,g2m=OBf;QW]g/3Higr'?SCkKGFos"dR7[af0Q,$8h?q28^NQbf*9NSh6/oDTM7g'`QN'[qOTPo9lI"U[5uFBBb%b0GEmJX:K]]K@PrI:0D<#3ABF/d;q"/SEjb,p@+)0Mjl;:JgR92/dP!.`)lkZ7$Bq-S7Fi;bns#%>MP80+tSlbkraPJam'@m_V$^k20N!55>+)jNCdtY%N@'\(::=-8%V+3S1I`3a#OeA3WYq+AC3A]]OWZ4BJGmq`dp,r&tF]i[5Lu!3kZRYZ8rq99cEkYC#3PuJQ^!OUrr,Tp/_Hc8AOlT[grgkBd9.e:l8Y>X`.KI,)kop.Dr?DE_4M`)i1Y&pV[#TZ_pArA#7YqA)hK?l2t4`3&0EHj+,0uLEmT>l^0rqWIuhqQ>o[aVq`:+i):Uc;p[QTW;3WaA\[D=EDuK&o"XWLb-sp\HkPOPe+"I%R*kbS_]al^N]\qR+#I%"SGJ^m,S]U@umniW,Tn9L!9)R308#rE;UI;X;`Mkr*C9'Fr[GW%?Bi7n-ji$_AH/d*)o"*gXdM>-G?1I-_[ab$k9gDBW/`D<9Oa>dSalm@K8ls45gA_+Ds)rVJ"/@umA\OicQgh*4OGTq04-l_6G"9[W9,?Qci>mdi>mel6Hd1fX:D(nHr.IJIjSN-a\Ds9Y1N28s"imsn4-VOn\*bsF"eaD8Q3.o[#3h:NN.TD">B#=hCF&bpQ\2j$Fgs(V1F#p.3DIO3`i]0--.XLJZg5H>"DM7oal=o%7%51A'WOo:8'mXjg-K"EQZ,b-d:>Xk"^"#uG+B2bm$#\'e5VXJDXI`'!endstream +endobj +98 0 obj +<< +/Filter [ /ASCII85Decode /FlateDecode ] /Length 1325 +>> +stream +Gatm:mr.2F&H0m]0d!r)84XkSoGcCo>GS_"+FC0>l"%>]!H/W5CR`c/?[q*tdaHPq<%#VFM"1*.S!c5/To1S=rldub5>q!bptuC=cGAt]I7Q"78R"D`m]bmK#!Ho1_dUn"nN66X.#-u3b7.n9&eOp-YReEug[@K9@FTGuW-Kq%enUi_(ld0f"75a!IbYCJmJCnQ*J3#b7/_ZIC1.qR%D<3m&A#r`K_>jR=peHKA-Urd*J^mRCn[fd;SZ!m`G^k;JFn&t_+PIM'0O/8h%t'\iYcsL)u-\mMbo]elGK(#)`?-WFn@<6:'gj7WeU$B46Y'BFO\n1LYWdXNsZ+8C?ofFh8RBX_q^E3h+`n2qgAe<^Yp8*m[8BSJf:LO0XI)1cI5JCo8IrTWs\Z)11#e2Oe&$Z?Rbb(q:W]?85G:D\*M=S]6e-dVV\?KRUNml2%/??*FXl/e!T"/'%AT7&e7B3`iW.0A%H8uU`#Al+S)Xa(1%t6^)7=*tV(r8,dP1XISsZ*F,W.\0V9ddYG?N\&mJ<_k]u]+.WJC2Dbco*0I5jodckX_4b>4dCiI)"kjP./$EoEut_6dG/c(E`2g+_nm54]\7UO%4$38l!TnMhNKIP$B'8'W_!6.]0m4UXOR^I:"pEfl^&V@MT6C/V08MB,pq-pR]gl7;p#mK8dA2#m&lKkZa)=Db^rFj)?F])I4/A<\`*),"a.c(g255E=^TNL_]u9:H,(;0-bP_'^QB%>f*[FYVrVB29'![Fi@r93D3,f1UP0>3F%P=abK`WCik:Tp+P7b&2,l\HM;0a$Tpj5,GUauVjmdIl4_H^i+;9nrVsF0V+[rl:VEdsA(^:9eE@Z7U1*-,fsM7oRaLA-NFO(i[8@d@mk@Ym!/:"Va163j*endstream +endobj +xref +0 99 +0000000000 65535 f +0000000061 00000 n +0000000132 00000 n +0000000239 00000 n +0000000351 00000 n +0000000546 00000 n +0000000741 00000 n +0000000936 00000 n +0000001055 00000 n +0000001170 00000 n +0000001275 00000 n +0000001471 00000 n +0000001667 00000 n +0000001863 00000 n +0000002059 00000 n +0000002255 00000 n +0000002451 00000 n +0000002647 00000 n +0000002843 00000 n +0000003039 00000 n +0000003235 00000 n +0000003431 00000 n +0000003627 00000 n +0000003823 00000 n +0000004019 00000 n +0000004215 00000 n +0000004411 00000 n +0000004607 00000 n +0000004694 00000 n +0000004988 00000 n +0000005063 00000 n +0000005211 00000 n +0000005307 00000 n +0000005421 00000 n +0000005520 00000 n +0000005705 00000 n +0000005810 00000 n +0000005959 00000 n +0000006096 00000 n +0000006303 00000 n +0000006403 00000 n +0000006518 00000 n +0000006637 00000 n +0000006809 00000 n +0000006916 00000 n +0000007079 00000 n +0000007184 00000 n +0000007290 00000 n +0000007401 00000 n +0000007531 00000 n +0000007645 00000 n +0000007811 00000 n +0000007920 00000 n +0000008049 00000 n +0000008231 00000 n +0000008329 00000 n +0000008445 00000 n +0000008547 00000 n +0000008735 00000 n +0000008857 00000 n +0000008968 00000 n +0000009081 00000 n +0000009181 00000 n +0000009341 00000 n +0000009474 00000 n +0000009631 00000 n +0000009777 00000 n +0000009953 00000 n +0000010127 00000 n +0000010273 00000 n +0000010440 00000 n +0000010547 00000 n +0000010666 00000 n +0000010771 00000 n +0000010911 00000 n +0000011049 00000 n +0000011187 00000 n +0000011308 00000 n +0000011402 00000 n +0000011597 00000 n +0000012193 00000 n +0000013794 00000 n +0000015460 00000 n +0000018021 00000 n +0000021564 00000 n +0000024740 00000 n +0000028508 00000 n +0000031490 00000 n +0000034847 00000 n +0000038143 00000 n +0000041246 00000 n +0000044473 00000 n +0000047631 00000 n +0000050735 00000 n +0000053879 00000 n +0000056898 00000 n +0000060397 00000 n +0000062140 00000 n +0000065696 00000 n +trailer +<< +/ID +[<497bf44bd6437367d13d198fa3df9264><497bf44bd6437367d13d198fa3df9264>] +% ReportLab generated PDF document -- digest (opensource) + +/Info 28 0 R +/Root 27 0 R +/Size 99 +>> +startxref +67113 +%%EOF diff --git a/index.md b/index.md index 66fe6b9..83a3352 100644 --- a/index.md +++ b/index.md @@ -16,7 +16,10 @@ - [[Voice Agent Platform Research 2026]]: Compare open-gpt-live (WS+VAD) + StreamCore (Go+WebRTC+plugins+RAG+ESP32) for Jarvis v3 / Hermes voice; fork StreamCore recommended. - [[Jarvis v2 - Always Listening Voice Assistant]]: Current iMac local wakeword+speakerID+faceID pipeline; to be extended with OGL VAD cal + StreamCore chassis. - [[Family Voice Context and Speaker Identification 2026]]: Local ESP32-triggered audio context, Adolfo voice verification, and later family speaker identification. + - [[Kindle Office Dashboard 2026]]: Permanent office e-ink Kindle for family-task dashboards, grayscale images, and SSH/eips experiments. - **[[Areas]]:** Ongoing responsibilities and household maintenance. + - [[EMI Things to Do]]: Ongoing EMI media and ministry tasks. + - [[Services Inventory]]: Human-facing catalog of family, brain, infrastructure, and EMI services; canonical technical detail is in [[Platform]]. - **[[Resources]]:** Interests, reference material, and research. - [[Family Timeline]]: Chronological milestones. - [[Clawbot Carryover Ideas]]: old OpenClaw ideas worth revisiting. diff --git a/projects/FACTORY_OPERATIONS.md b/projects/FACTORY_OPERATIONS.md new file mode 100644 index 0000000..0959603 --- /dev/null +++ b/projects/FACTORY_OPERATIONS.md @@ -0,0 +1,49 @@ +# Factory Project Operations Context + +## Purpose and scope + +This file is the authoritative operating context for AI agents that manage **our projects**. It does not replace repository-level `AGENTS.md`, source control, service documentation, or Paseo agent/workspace records. + +An **our project** is a cross-server product or system. Its definition file lives at `factory/.md`. A native Paseo project is a local execution unit: one repository or directory on one daemon host. + +```text +Our project → server-local Paseo project → workspace → agent → active session +``` + +## Start every task with the project definition + +1. Identify the project key and read `factory/.md`. +2. Identify affected servers, repositories, services, and target devices. +3. Read the repository's nearest `AGENTS.md` before inspecting or changing source. +4. Check the target host's actual Paseo/provider/workspace state; do not infer it from this brain record. +5. Create a concise task record: goal, acceptance criteria, allowed paths/commands, required checks, forbidden effects, evidence, and approval gate. + +## Operating policy + +- **Bounded goal loops.** After discovery and an approved plan, the factory may iterate isolated implementation → deterministic verification → independent review → targeted repair until the named acceptance criteria pass. Every loop must have an iteration cap, wall-clock/resource cap, and clear stop conditions. It must stop and report at approval boundaries or when blocked; it may never self-approve merge, push, deployment, restart, publishing, credentials, migrations, or production configuration. +- **Exclusive factory ownership.** For every factory-managed project task, the `factory` profile alone performs repository/server inspection, Paseo dispatch/monitoring, edits, commits, pushes, deployments, and verification. The default/personal profile is the human-facing control surface only: it relays instructions and reports factory evidence but never executes project work directly. +- **Coordinator dispatch-and-follow-through.** For multi-step work, do not call the factory profile as a one-shot `-z` process. Keep the named coordinator session interactive/resumable; record every dispatched Paseo agent/workspace ID, monitor its state, then resume that same coordinator session with the observed result. A pinned session is historical continuity only, not a background supervisor. Use an explicit bounded monitor/continuation when work must outlive the coordinator turn. +- **Paseo session permission mode.** Every new coding or release Paseo agent must be started explicitly in the provider's `auto-review` mode; for Codex, pass `--mode auto-review`. Do not rely on defaults, fall back to full-access/unreviewed modes, or continue if the requested mode is unavailable. +- **One durable coordinator session per feature or incident.** Resume the same factory-profile session for all follow-ups to a project feature, release, reconciliation, or incident. Do not create a new one-shot coordinator session for every request. Name it `: ` and record its ID in the project definition when continuity matters. +- Our project files are the cross-server project-manager record; Paseo Desktop/Web are execution views, not the project authority. +- One source-changing task uses one isolated worktree workspace. Do not have independent agents edit a shared checkout. +- Planner and reviewer are read-only. Implementers may edit only their assigned worktree. +- Verifiers report exact command outcomes; they do not silently repair source. +- Merge, deploy, restart, publish, external sends, credentials, production configuration, and migrations require explicit human approval. +- A Paseo status change may create a notification or review task; it never authorizes a production action. +- Never place credentials, pairing offers, raw private audio, or user data in these project files. + +## Durable evidence to record + +Record stable decision and handoff data only: repository/host mapping, workspace/agent IDs when needed for continuation, verification outcomes, approval decisions, rollout/rollback notes, and open blockers. Keep raw logs and transient agent conversation out of the brain. + +## Project-definition standard + +Each `factory/.md` includes purpose, server/repository/service mapping, factory readiness, persona roles, special constraints, current open work, and human approval boundaries. + +## Updating this directory + +- Create a new definition before treating a system as a factory-managed project. +- Update an existing definition when its server/repository/service mapping or safety boundary changes. +- Do not claim a remote host is enrolled or a deployment works without current host evidence. +- Keep definitions concise and link to detailed project notes instead of duplicating them. diff --git a/projects/assets/covenant-parenting-pathway.svg b/projects/assets/covenant-parenting-pathway.svg new file mode 100644 index 0000000..3504fe8 --- /dev/null +++ b/projects/assets/covenant-parenting-pathway.svg @@ -0,0 +1,8 @@ + + The covenant parenting pathwayA gentle visual pathway from rooted love through daily formation to a generational legacy. + + + + The Covenant Parenting PathwayA life of faithful presence, practiced one day at a time + ROOTEDLove & refugePRESENTModelingFORMEDDaily practiceGROWINGGenerational hope + diff --git a/projects/assets/family-rhythm-of-repair.svg b/projects/assets/family-rhythm-of-repair.svg new file mode 100644 index 0000000..d15d49a --- /dev/null +++ b/projects/assets/family-rhythm-of-repair.svg @@ -0,0 +1,6 @@ + +A family rhythm of repairFour connected steps: pause, listen, repair, and return to peace. +A Family Rhythm of RepairHumility makes room for safety, truth, and restoration + +PAUSEmake roomChoose calmLISTENwith careHear the heartREPAIRspeak truthOwn what happenedRETURNtogetherRestore peace + diff --git a/projects/ckmath-interactive-pilot/DEMO.md b/projects/ckmath-interactive-pilot/DEMO.md new file mode 100644 index 0000000..ae0b8de --- /dev/null +++ b/projects/ckmath-interactive-pilot/DEMO.md @@ -0,0 +1,29 @@ +# Grade 3 Learning Studio Demo + +## Start it tomorrow + +```bash +cd ~/brain/projects/ckmath-interactive-pilot +python3 server.py --port 8899 +``` + +Open `http://127.0.0.1:8899` on the Mac mini. This is intentionally loopback-only: it is a private demo, not a LAN service. + +## A 3-minute walkthrough for Alicia + +1. **Start at the landing page.** Explain that the library is derived from the downloaded Grade 3 curriculum, not a separate subscription or AI-generated scope-and-sequence. +2. **Use a subject filter.** Choose **Math** to show the nine Grade 3 math entries, then point out the “Open Teacher Guide” and “Open Student Reader” links. +3. **Open CKMath Unit 1’s Teacher Guide.** It opens the original 285-page guide from inside the verified ZIP—no duplicate PDF copy is created. Explain that this is where the teacher’s learning goals, timing, prompts, materials, expected responses, and support notes live. +4. **Return to the site and open the Interactive lesson.** Demonstrate building seven pairs of shoes, writing `7 × 2 = 14`, and giving a one-sentence explanation. +5. **Frame the next decision.** The library and teacher-plan access can cover the whole Grade 3 collection now; we should next choose which curriculum areas deserve human-reviewed interactive sessions first. + +## Current scope + +- 51 downloaded Grade 3 units indexed. +- 37 teacher-guide PDFs and 25 student-resource PDFs available on demand from their original archives. +- One completed interactive math lesson: Unit 1, equal groups. +- No account, analytics, AI, or learner-record storage. + +## Not yet claimed + +This is not yet a complete digitization of every Grade 3 lesson. It is a full source library plus a working interactive pattern. Every additional interactive lesson should be selected, authored/reviewed against its teacher guide, and checked for its individual license notice. diff --git a/projects/ckmath-interactive-pilot/README.md b/projects/ckmath-interactive-pilot/README.md new file mode 100644 index 0000000..aa93d4f --- /dev/null +++ b/projects/ckmath-interactive-pilot/README.md @@ -0,0 +1,24 @@ +# Grade 3 Learning Studio + +A private, browser-only Grade 3 curriculum showcase built from the verified local Core Knowledge collection. It catalogs every downloaded Grade 3 archive, exposes original teacher-guide/student PDFs without duplicating them, and includes a 10-minute interactive equal-groups math session. + +## Run locally + +```bash +cd ~/brain/projects/ckmath-interactive-pilot +python3 server.py --port 8899 +``` + +Open `http://127.0.0.1:8899`. The server is deliberately loopback-only and does not expose the curriculum on the home network. + +See `DEMO.md` for Alicia’s short walkthrough. + +## Privacy + +This showcase uses no login, AI service, analytics, or learner-data storage. The original curriculum assets remain inside `/Users/adolforeyna/Downloads/CoreKnowledge_Grades_1-5_EN_ES`; the server streams a selected original PDF only after a locally generated, catalog-known material ID is requested. + +## Source and license + +The catalog is derived from the verified downloaded Core Knowledge Grade 3 archive set. The interactive session is adapted from *CKMath Grade 3, Unit 1: Introducing Multiplication*, Core Knowledge Foundation, Lesson 9 (“Equal Group Situations”), downloaded from [Core Knowledge](https://www.coreknowledge.org/download-free-curriculum/). + +The sampled math source PDF carries a Creative Commons **Attribution–NonCommercial–ShareAlike 4.0 International** notice. This pilot is private and non-commercial. Any future sharing must retain attribution, the license notice, and the same ShareAlike terms. Confirm the license embedded in every additional unit before adapting it. diff --git a/projects/ckmath-interactive-pilot/app.mjs b/projects/ckmath-interactive-pilot/app.mjs new file mode 100644 index 0000000..0043c0b --- /dev/null +++ b/projects/ckmath-interactive-pilot/app.mjs @@ -0,0 +1,81 @@ +import { isCorrectTotal, isCorrectEquation, hasReasoningEvidence } from './src/session.mjs'; + +const groups = document.querySelector('#groups'); +const addPair = document.querySelector('#add-pair'); +const buildFeedback = document.querySelector('#build-feedback'); +const totalRow = document.querySelector('#total-row'); +const total = document.querySelector('#total'); +const totalFeedback = document.querySelector('#total-feedback'); +const activity2 = document.querySelector('#activity-2'); +const activity3 = document.querySelector('#activity-3'); +const equation = document.querySelector('#equation'); +const equationFeedback = document.querySelector('#equation-feedback'); +const reasoning = document.querySelector('#reasoning'); +const reasoningFeedback = document.querySelector('#reasoning-feedback'); + +let pairsAdded = 0; + +function feedback(element, message, kind = '') { + element.textContent = message; + element.className = `feedback ${kind}`; +} + +function renderGroups() { + groups.innerHTML = ''; + for (let i = 1; i <= 7; i += 1) { + const group = document.createElement('div'); + group.className = 'group'; + group.innerHTML = `Person ${i}
${i <= pairsAdded ? '👟 👟' : '· ·'}
`; + groups.append(group); + } +} + +function reveal(activity, progressId) { + activity.hidden = false; + document.querySelector(progressId).classList.add('active'); + activity.scrollIntoView({ behavior: 'smooth', block: 'start' }); +} + +renderGroups(); + +addPair.addEventListener('click', () => { + if (pairsAdded < 7) pairsAdded += 1; + renderGroups(); + if (pairsAdded === 7) { + addPair.disabled = true; + addPair.textContent = 'All 7 pairs are built'; + feedback(buildFeedback, 'Nice work. You built 7 equal groups of 2 shoes.', 'good'); + totalRow.hidden = false; + total.focus(); + } else { + feedback(buildFeedback, `${pairsAdded} of 7 pairs built. Keep going.`); + } +}); + +document.querySelector('#check-total').addEventListener('click', () => { + if (isCorrectTotal(total.value)) { + feedback(totalFeedback, 'Yes—7 groups of 2 make 14 shoes.', 'good'); + reveal(activity2, '#progress-2'); + equation.focus(); + } else { + feedback(totalFeedback, 'Try counting by twos: 2, 4, 6…', 'bad'); + } +}); + +document.querySelector('#check-equation').addEventListener('click', () => { + if (isCorrectEquation(equation.value)) { + feedback(equationFeedback, 'Correct. Multiplication is a quick way to name equal groups.', 'good'); + reveal(activity3, '#progress-3'); + reasoning.focus(); + } else { + feedback(equationFeedback, 'Use the numbers 7, 2, and 14. Either order for the factors works.', 'bad'); + } +}); + +document.querySelector('#check-reasoning').addEventListener('click', () => { + if (hasReasoningEvidence(reasoning.value)) { + feedback(reasoningFeedback, 'Session complete! You used equal groups and multiplication to explain your answer.', 'good'); + } else { + feedback(reasoningFeedback, 'Add how many groups there were, how many were in each group, and the total of 14.', 'bad'); + } +}); diff --git a/projects/ckmath-interactive-pilot/data/grade3_catalog.json b/projects/ckmath-interactive-pilot/data/grade3_catalog.json new file mode 100644 index 0000000..e0f47a4 --- /dev/null +++ b/projects/ckmath-interactive-pilot/data/grade3_catalog.json @@ -0,0 +1,1835 @@ +{ + "grade": 3, + "unit_count": 51, + "teacher_guide_count": 37, + "student_material_count": 25, + "units": [ + { + "id": "67e36740b20b53a4", + "title": "Grade 3 CK Visual Arts: Grade 3", + "filename": "CKVA_G3_Grade_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2026/02/CKVA_G3_Grade_Materials_W2.zip", + "subject": "Arts", + "materials": [ + { + "id": "c07b2b3ccca12d7ee06d", + "filename": "CKVA_G3_TG_W1.pdf", + "internal_path": "CKVA_G3_Grade_Materials_W2/CKVA_G3_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "0b5ba837ffe045413c1b", + "filename": "CKVA_G3_ORG_W2.pdf", + "internal_path": "CKVA_G3_Grade_Materials_W2/CKVA_G3_ORG_W2.pdf", + "role": "Reference" + }, + { + "id": "191c7ead11a09b1757f6", + "filename": "CKVA_G3_SAB_W1.pdf", + "internal_path": "CKVA_G3_Grade_Materials_W2/CKVA_G3_SAB_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "748586b62a988aaf", + "title": "Grade 3 CKMusic: Grade 3", + "filename": "CKMusic_G3_Grade_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2026/01/CKMusic_G3_Grade_Materials_W2.zip", + "subject": "Arts", + "materials": [ + { + "id": "ff465a6001b660559609", + "filename": "CKMusic_G3_TG_W1.pdf", + "internal_path": "CKMusic_G3_Grade_Materials_W2/CKMusic_G3_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "d476c3f524de23950f9f", + "filename": "CKMusic_G3_ORG_W2.pdf", + "internal_path": "CKMusic_G3_Grade_Materials_W2/CKMusic_G3_ORG_W2.pdf", + "role": "Reference" + }, + { + "id": "6b76ed76eb006eb1bd77", + "filename": "CKMusic_G3_SAB_W1.pdf", + "internal_path": "CKMusic_G3_Grade_Materials_W2/CKMusic_G3_SAB_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "8ac2d244456fe9a7", + "title": "Grade 3 CK In Your State History \u2013 Arizona Grade 3: The Story of Arizona", + "filename": "CKIYS_History_G3_TheStoryOfArizona_Materials_W1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2026/04/CKIYS_History_G3_TheStoryOfArizona_Materials_W1.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "b733c7f69618f120f304", + "filename": "CKIYS_History_G3_TheStoryOfArizona_SR_W1.pdf", + "internal_path": "CKIYS_History_G3_TheStoryOfArizona_Materials_W1/CKIYS_History_G3_TheStoryOfArizona_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "2efc598a660604ca2f1a", + "filename": "CKIYS_History_G3_TheStoryOfArizona_TG_W1.pdf", + "internal_path": "CKIYS_History_G3_TheStoryOfArizona_Materials_W1/CKIYS_History_G3_TheStoryOfArizona_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "387820ce5cbb8b58eef8", + "filename": "CKIYS_History_G3_TheStoryOfArizona_ORG_W1.pdf", + "internal_path": "CKIYS_History_G3_TheStoryOfArizona_Materials_W1/CKIYS_History_G3_TheStoryOfArizona_ORG_W1.pdf", + "role": "Reference" + }, + { + "id": "dff66ee151594e27e9da", + "filename": "CKIYS_History_G3_TheStoryOfArizona_TL_W1.pdf", + "internal_path": "CKIYS_History_G3_TheStoryOfArizona_Materials_W1/CKIYS_History_G3_TheStoryOfArizona_TL_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "5d755ba15f321520", + "title": "Grade 3 CKHG Grade 3: Primary Source Activity Book", + "filename": "CKHG_G3_PrimarySourceActivityBook_Materials_W1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2024/10/CKHG_G3_PrimarySourceActivityBook_Materials_W1.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "4d28b3b3802e21204d7b", + "filename": "CKHG_G3_PrimarySourceActivityBook_SE_W1.pdf", + "internal_path": "CKHG_G3_PrimarySourceActivityBook_Materials_W1/CKHG_G3_PrimarySourceActivityBook_SE_W1.pdf", + "role": "Reference" + }, + { + "id": "7ed22710451c7b36a4ec", + "filename": "CKHG_G3_PrimarySourceActivityBook_TE_W1.pdf", + "internal_path": "CKHG_G3_PrimarySourceActivityBook_Materials_W1/CKHG_G3_PrimarySourceActivityBook_TE_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "10f0d8e9f2018f6c", + "title": "Grade 3 CKHG Unit 1: World Rivers", + "filename": "CKHG_G3_U1_WorldRivers.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2017/03/CKHG_G3_U1_WorldRivers.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "9ac5e62697a26d071852", + "filename": "CKHG_G3_U1_WorldRivers_SR.pdf", + "internal_path": "CKHG_G3_U1_WorldRivers/CKHG_G3_U1_WorldRivers_SR.pdf", + "role": "Student Reader" + }, + { + "id": "b5db431f9c2d8c79cfd3", + "filename": "CKHG_G3_U1_WorldRivers_TG.pdf", + "internal_path": "CKHG_G3_U1_WorldRivers/CKHG_G3_U1_WorldRivers_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "7ee137553faefa6ba843", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKHG_G3_U1_WorldRivers/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "8261a4538b147d6a", + "title": "Grade 3 CKHG Unit 2: Ancient Rome", + "filename": "CKHG_G3_U2_AncientRome.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKHG_G3_U2_AncientRome.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "36574a4eed3dc7d768df", + "filename": "G3_U2_AncientRome_SR.pdf", + "internal_path": "G3_U2_AncientRome/G3_U2_AncientRome_SR.pdf", + "role": "Student Reader" + }, + { + "id": "25ab4bee8da144f6454c", + "filename": "G3_U2_AncientRome_TG.pdf", + "internal_path": "G3_U2_AncientRome/G3_U2_AncientRome_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "6945d5e26c2c4779dcff", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "G3_U2_AncientRome/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + }, + { + "id": "365de95fe4cb8cce5b3c", + "filename": "G3_U2_AncientRome_TL.pdf", + "internal_path": "G3_U2_AncientRome/G3_U2_AncientRome_TL.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "7f9f28c04cf4cf9b", + "title": "Grade 3 CKHG Unit 3: The Vikings", + "filename": "CKHG_G3_Vikings.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2017/03/CKHG_G3_Vikings.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "b1ccdc3c62101b8abcb1", + "filename": "G3_U3_Vikings_SR.pdf", + "internal_path": "CKHG_G3_Vikings/G3_U3_Vikings_SR.pdf", + "role": "Student Reader" + }, + { + "id": "024bda0165c9b93551ef", + "filename": "G3_U3_Vikings_TG.pdf", + "internal_path": "CKHG_G3_Vikings/G3_U3_Vikings_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "816a211ba172df28ecfd", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKHG_G3_Vikings/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + }, + { + "id": "6e66fb1739bf5b6191cd", + "filename": "G3_U3_Vikings_TL.pdf", + "internal_path": "CKHG_G3_Vikings/G3_U3_Vikings_TL.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "bfa5d2a79f1f5119", + "title": "Grade 3 CKHG Unit 4: The Earliest Americans", + "filename": "CKHG_G3_EarliestAmericans.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2017/03/CKHG_G3_EarliestAmericans.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "8fddcd3093558f566777", + "filename": "CKHG_G3_U4_EarliestAmer_SR.pdf", + "internal_path": "CKHG_G3_EarliestAmericans/CKHG_G3_U4_EarliestAmer_SR.pdf", + "role": "Student Reader" + }, + { + "id": "38e38fe66f1f8d82a178", + "filename": "CKHG_G3_U4_EarliestAmer_TG.pdf", + "internal_path": "CKHG_G3_EarliestAmericans/CKHG_G3_U4_EarliestAmer_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "1546281961e5154393fa", + "filename": "CKHG_G3_U4_EarliestAmer_TL.pdf", + "internal_path": "CKHG_G3_EarliestAmericans/CKHG_G3_U4_EarliestAmer_TL.pdf", + "role": "Reference" + }, + { + "id": "682d946fab9d0ce6d363", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKHG_G3_EarliestAmericans/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "27439f0e38baf5d9", + "title": "Grade 3 CKHG Unit 6: Exploration of North America", + "filename": "CKHG_G3_B1_CanadaExplorationOfNorthAmerica.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2017/08/CKHG_G3_B1_CanadaExplorationOfNorthAmerica.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "4aa29f537e460f2553e3", + "filename": "CKHG_G3_B1_ExpNA_SR.pdf", + "internal_path": "CKHG_G3_B1_Canada&ExplorationOfNorthAmerica/CKHG_G3_B1_ExpNA_SR.pdf", + "role": "Student Reader" + }, + { + "id": "113fcf0592e53bce149e", + "filename": "CKHG_G3_B1_ExpNA_TG.pdf", + "internal_path": "CKHG_G3_B1_Canada&ExplorationOfNorthAmerica/CKHG_G3_B1_ExpNA_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "02f7ad0d0f71e029d372", + "filename": "CKHG_G3_B1_ExpNA_TC.pdf", + "internal_path": "CKHG_G3_B1_Canada&ExplorationOfNorthAmerica/CKHG_G3_B1_ExpNA_TC.pdf", + "role": "Reference" + }, + { + "id": "f827c0dbfe03e8ba6e13", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKHG_G3_B1_Canada&ExplorationOfNorthAmerica/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "9ca6d343215022a5", + "title": "Grade 3 CKHG Unit 7: The Thirteen Colonies", + "filename": "CKHG_G3_U7_ThirteenCol.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2017/07/CKHG_G3_U7_ThirteenCol.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "0c9004ad5886309a7e28", + "filename": "CKHG_G3_U7_ThirteenCol_SR.pdf", + "internal_path": "CKHG_G3_U7_ThirteenCol/CKHG_G3_U7_ThirteenCol_SR.pdf", + "role": "Student Reader" + }, + { + "id": "9b4a8347ff3836388f9b", + "filename": "CKHG_G3_U7_ThirteenCol_TG.pdf", + "internal_path": "CKHG_G3_U7_ThirteenCol/CKHG_G3_U7_ThirteenCol_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "64e51c41a690544101dc", + "filename": "CKHG_G3_U7_ThirteenCol_TL.pdf", + "internal_path": "CKHG_G3_U7_ThirteenCol/CKHG_G3_U7_ThirteenCol_TL.pdf", + "role": "Reference" + }, + { + "id": "d3db108503fc9e35ff31", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKHG_G3_U7_ThirteenCol/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "3a2d67cc1187c782", + "title": "Grade 3 Louisiana Bayou Bridges Grade 3", + "filename": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/12/LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4.zip", + "subject": "History & Geography", + "materials": [ + { + "id": "bed38b8603e769491ffe", + "filename": "LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_SR_W1.pdf", + "internal_path": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4/LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "16fc34584806b4b2c3bb", + "filename": "LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_TG_W2.pdf", + "internal_path": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4/LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "63404cbdaf3211be62d6", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + }, + { + "id": "53a0031dafc6600f7424", + "filename": "LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_ORG_W2.pdf", + "internal_path": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4/LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_ORG_W2.pdf", + "role": "Reference" + }, + { + "id": "2c931225d39696c27744", + "filename": "LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_WB_W1.pdf", + "internal_path": "LABB_CKHG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_Unit_Materials_W4/LABB_HG_G3U1_TheFoundingOfTheUnitedStatesOfAmerica_WB_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "85f466b2d5330979", + "title": "Grade 3 CKLA Ancillary Materials: Third Grade Skills", + "filename": "CKLA_G3_Ancillary-Components.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Ancillary-Components.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "bcfab3782df91d44c87f", + "filename": "CKLA_G3_ARG_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/CKLA_G3_ARG_web.pdf", + "role": "Reference" + }, + { + "id": "12e49db970f20dc4f7b8", + "filename": "G3_Code Charts_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_Code Charts_web.pdf", + "role": "Reference" + }, + { + "id": "5da6d8eaffed50500eb9", + "filename": "G3_Code_FB_Consonants_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_Code_FB_Consonants_web.pdf", + "role": "Reference" + }, + { + "id": "5370fabf43c862a8af2e", + "filename": "G3_Code_FB_Vowels_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_Code_FB_Vowels_web.pdf", + "role": "Reference" + }, + { + "id": "4b95622ea15594a85836", + "filename": "G3_FluencyPacket_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_FluencyPacket_web.pdf", + "role": "Reference" + }, + { + "id": "057074c0d99fdb109188", + "filename": "G3_Individual_Color_Cards_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_Individual_Color_Cards_web.pdf", + "role": "Reference" + }, + { + "id": "71885cf71ab6201bd031", + "filename": "G3_WiggleCards_web.pdf", + "internal_path": "CKLA_G3_Ancillary Components/G3_WiggleCards_web.pdf", + "role": "Reference" + }, + { + "id": "22a97b35f3181062fa7f", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Ancillary Components/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "e2af0d1404f41241", + "title": "Grade 3 CKLA Domain 10: Colonial America", + "filename": "CKLA_G3_Colonial-America.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Colonial-America.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "cec54c4468bb1d4e9d4f", + "filename": "G3_D10_Anth_web.pdf", + "internal_path": "CKLA_G3_Colonial America/G3_D10_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "3b7cd580b58eea68ae1a", + "filename": "G3_D10_FB_web.pdf", + "internal_path": "CKLA_G3_Colonial America/G3_D10_FB_web.pdf", + "role": "Reference" + }, + { + "id": "930213fa541b0994a1aa", + "filename": "G3_D10_IC_web.pdf", + "internal_path": "CKLA_G3_Colonial America/G3_D10_IC_web.pdf", + "role": "Reference" + }, + { + "id": "f964c3a2f155bc2833e9", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Colonial America/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "a650d787cfe4b741", + "title": "Grade 3 CKLA Domain 11: Ecology", + "filename": "CKLA_G3_Ecology.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Ecology.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "9076c35d2210d6aaec85", + "filename": "G3_D11_Anth_web.pdf", + "internal_path": "CKLA_G3_Ecology/G3_D11_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "5e4127a89a3859c603dc", + "filename": "G3_D11_FB_web.pdf", + "internal_path": "CKLA_G3_Ecology/G3_D11_FB_web.pdf", + "role": "Reference" + }, + { + "id": "1ed5ede419b5577bd8f6", + "filename": "G3_D11_IC_web.pdf", + "internal_path": "CKLA_G3_Ecology/G3_D11_IC_web.pdf", + "role": "Reference" + }, + { + "id": "dedb89797a1be768b61c", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Ecology/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "aa7a2064048dc01e", + "title": "Grade 3 CKLA Domain 1: Classic Tales\u2014The Wind in the Willows", + "filename": "CKLA_G3_Classic-Tales-The-Wind-in-the-Willows.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Classic-Tales-The-Wind-in-the-Willows.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "4e20a279a1100799be70", + "filename": "G3_D1_Anth_web.pdf", + "internal_path": "CKLA_G3_Classic Tales The Wind in the Willows/G3_D1_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "35ddfaf8148190a2f28d", + "filename": "G3_D1_FB_web.pdf", + "internal_path": "CKLA_G3_Classic Tales The Wind in the Willows/G3_D1_FB_web.pdf", + "role": "Reference" + }, + { + "id": "e9d5e7942d19dc73c533", + "filename": "G3_D1_IC_web.pdf", + "internal_path": "CKLA_G3_Classic Tales The Wind in the Willows/G3_D1_IC_web.pdf", + "role": "Reference" + }, + { + "id": "c55d000557be39abfe07", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Classic Tales The Wind in the Willows/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "9580e8b9144ffffc", + "title": "Grade 3 CKLA Domain 2: Classification of Animals", + "filename": "CKLA_G3_Classification-of-Animals.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Classification-of-Animals.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "50c61a78f48dc98916cd", + "filename": "G3_D2_Anth_web.pdf", + "internal_path": "CKLA_G3_Classification of Animals/G3_D2_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "16ac55237950320bb409", + "filename": "G3_D2_FB_web.pdf", + "internal_path": "CKLA_G3_Classification of Animals/G3_D2_FB_web.pdf", + "role": "Reference" + }, + { + "id": "5efaac29915a11569152", + "filename": "G3_D2_IC_web.pdf", + "internal_path": "CKLA_G3_Classification of Animals/G3_D2_IC_web.pdf", + "role": "Reference" + }, + { + "id": "6815b5e94292519ca321", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Classification of Animals/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "2be44fc8f55a2ab8", + "title": "Grade 3 CKLA Domain 3: The Human Body\u2014Systems and Senses", + "filename": "CKLA_G3_The-Human-Body-System-and-Senses.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_The-Human-Body-System-and-Senses.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "3cf0157b855340da46e0", + "filename": "G3_D3_Anth_web.pdf", + "internal_path": "CKLA_G3_The Human Body System and Senses/G3_D3_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "c832311e17e0d349e448", + "filename": "G3_D3_FB_web.pdf", + "internal_path": "CKLA_G3_The Human Body System and Senses/G3_D3_FB_web.pdf", + "role": "Reference" + }, + { + "id": "310fce8cbc64ecab3ef6", + "filename": "G3_D3_IC_web.pdf", + "internal_path": "CKLA_G3_The Human Body System and Senses/G3_D3_IC_web.pdf", + "role": "Reference" + }, + { + "id": "de6b1396549d8e753f4e", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_The Human Body System and Senses/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "67d1dece02aa7525", + "title": "Grade 3 CKLA Domain 4: The Ancient Roman Civilization", + "filename": "CKLA_G3_The-Ancient-Roman-Civilization.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_The-Ancient-Roman-Civilization.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "748655a3265df5670db6", + "filename": "G3_D4_Anth_web.pdf", + "internal_path": "CKLA_G3_The Ancient Roman Civilization/G3_D4_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "eb2475fadbfafc6f4ada", + "filename": "G3_D4_FB_web.pdf", + "internal_path": "CKLA_G3_The Ancient Roman Civilization/G3_D4_FB_web.pdf", + "role": "Reference" + }, + { + "id": "bfc5194b8a9b6c5828f3", + "filename": "G3_D4_IC_web.pdf", + "internal_path": "CKLA_G3_The Ancient Roman Civilization/G3_D4_IC_web.pdf", + "role": "Reference" + }, + { + "id": "fe0fdeb4e5636d6bb48b", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_The Ancient Roman Civilization/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "c611f5e959908a17", + "title": "Grade 3 CKLA Domain 5: Light and Sound", + "filename": "CKLA_G3_Light-and-Sound.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Light-and-Sound.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "21905108e2d650d1267c", + "filename": "G3_D5_Anth_web.pdf", + "internal_path": "CKLA_G3_Light and Sound/G3_D5_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "0b2cbc8f6474587d5187", + "filename": "G3_D5_FB_web.pdf", + "internal_path": "CKLA_G3_Light and Sound/G3_D5_FB_web.pdf", + "role": "Reference" + }, + { + "id": "cda6114b38f9c004115f", + "filename": "G3_D5_IC_web.pdf", + "internal_path": "CKLA_G3_Light and Sound/G3_D5_IC_web.pdf", + "role": "Reference" + }, + { + "id": "d4c90e36b22bb9c6d13c", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Light and Sound/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "851b0a341748d9dd", + "title": "Grade 3 CKLA Domain 6: The Viking Age", + "filename": "CKLA_G3_The-Viking-Age.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_The-Viking-Age.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "d006e50265d09c19bfe1", + "filename": "G3_D6_Anth_web.pdf", + "internal_path": "CKLA_G3_The Viking Age/G3_D6_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "c1b61d3424ac79614190", + "filename": "G3_D6_FB_web.pdf", + "internal_path": "CKLA_G3_The Viking Age/G3_D6_FB_web.pdf", + "role": "Reference" + }, + { + "id": "e3a859ff11cfcfc47be1", + "filename": "G3_D6_IC_web.pdf", + "internal_path": "CKLA_G3_The Viking Age/G3_D6_IC_web.pdf", + "role": "Reference" + }, + { + "id": "0db6f1afd27ec3876a82", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_The Viking Age/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "8e16213aec862fda", + "title": "Grade 3 CKLA Domain 7: Astronomy\u2014Our Solar System and Beyond", + "filename": "CKLA_G3_Astronomy-Our-Solar-System-and-Beyond.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Astronomy-Our-Solar-System-and-Beyond.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "b3c6a4e4a276aa639dcb", + "filename": "G3_D7_Anth_web.pdf", + "internal_path": "CKLA_G3_Astronomy Our Solar System and Beyond/G3_D7_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "ee501c41d9eb08d9390f", + "filename": "G3_D7_FB_web.pdf", + "internal_path": "CKLA_G3_Astronomy Our Solar System and Beyond/G3_D7_FB_web.pdf", + "role": "Reference" + }, + { + "id": "3a4a3d7f1686f956521d", + "filename": "G3_D7_IC_web.pdf", + "internal_path": "CKLA_G3_Astronomy Our Solar System and Beyond/G3_D7_IC_web.pdf", + "role": "Reference" + }, + { + "id": "c86bf160e03cd146aee0", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Astronomy Our Solar System and Beyond/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "d5d02b81d77a97cd", + "title": "Grade 3 CKLA Domain 8: Native Americans\u2014Regions and Cultures", + "filename": "CKLA_G3_Native-Americans-Regions-and-Cultures.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Native-Americans-Regions-and-Cultures.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "4872133e3f5e6760f2c3", + "filename": "G3_D8_Anth_web.pdf", + "internal_path": "CKLA_G3_Native Americans Regions and Cultures/G3_D8_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "ce1f428ce0fb1ce1dcc5", + "filename": "G3_D8_FB_web.pdf", + "internal_path": "CKLA_G3_Native Americans Regions and Cultures/G3_D8_FB_web.pdf", + "role": "Reference" + }, + { + "id": "71de7ef876756e5bf641", + "filename": "G3_D8_IC_web.pdf", + "internal_path": "CKLA_G3_Native Americans Regions and Cultures/G3_D8_IC_web.pdf", + "role": "Reference" + }, + { + "id": "08a5128aedb625d7934b", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Native Americans Regions and Cultures/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "0f85570e6df74c7e", + "title": "Grade 3 CKLA Domain 9: European Exploration of North America", + "filename": "CKLA_G3_European-Exploration-of-North-America.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_European-Exploration-of-North-America.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "1b04fe63cf74895e29a7", + "filename": "G3_D9_Anth_web.pdf", + "internal_path": "CKLA_G3_European Exploration of North America/G3_D9_Anth_web.pdf", + "role": "Reference" + }, + { + "id": "da89e5179453e2d3fc6b", + "filename": "G3_D9_FB_web.pdf", + "internal_path": "CKLA_G3_European Exploration of North America/G3_D9_FB_web.pdf", + "role": "Reference" + }, + { + "id": "6f02f8cf07dfa6e402f2", + "filename": "G3_D9_IC_web.pdf", + "internal_path": "CKLA_G3_European Exploration of North America/G3_D9_IC_web.pdf", + "role": "Reference" + }, + { + "id": "5014ada520ec16cc15ae", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_European Exploration of North America/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 0 + }, + { + "id": "84ff54d2a2f87926", + "title": "Grade 3 CKLA Unit 10: Third Grade Skills\u2014Living in Colonial America", + "filename": "CKLA_G3_Unit-10.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-10.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "bd45396a64717edf8822", + "filename": "G3_U10_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 10/G3_U10_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "1cd775a495561e4db2a6", + "filename": "CKLA_G3_U10_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 10/CKLA_G3_U10_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "4c0408c70938dd838924", + "filename": "G3_U10_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 10/G3_U10_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "0f120d8e91dc55e121aa", + "filename": "G3_U10_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 10/G3_U10_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "691d4aed7837da9e197a", + "filename": "G3_U10_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 10/G3_U10_WB_web.pdf", + "role": "Reference" + }, + { + "id": "a72d35df9265ca6abc27", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 10/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "3a2507ffdd47a878", + "title": "Grade 3 CKLA Unit 11: Third Grade Skills\u2014Introduction to Ecology", + "filename": "CKLA_G3_Unit-11.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-11.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "adb2fdf697049483dc59", + "filename": "G3_U11_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 11/G3_U11_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "96b37b75aefc555e177d", + "filename": "CKLA_G3_U11_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 11/CKLA_G3_U11_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "0f22fb794813b644a6e9", + "filename": "G3_U11_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 11/G3_U11_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "270343a33b46c46766d0", + "filename": "G3_U11_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 11/G3_U11_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "9a219192ed167a50ec7d", + "filename": "G3_U11_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 11/G3_U11_WB_web.pdf", + "role": "Reference" + }, + { + "id": "d350261b87f7fdaf7918", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 11/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "ce05626fec20f3f4", + "title": "Grade 3 CKLA Unit 1: Third Grade Skills\u2014Classic Tales", + "filename": "CKLA_G3_Unit-1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-1.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "6959b0cbc1cbd2cc8921", + "filename": "G3_U1_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 1/G3_U1_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "283ee30d448370e99538", + "filename": "CKLA_G3_Supplemental_Rdr_web.pdf", + "internal_path": "CKLA_G3_Unit 1/CKLA_G3_Supplemental_Rdr_web.pdf", + "role": "Reference" + }, + { + "id": "9b6cbb7a8401a6be4735", + "filename": "CKLA_G3_U1b_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 1/CKLA_G3_U1b_WB_web.pdf", + "role": "Reference" + }, + { + "id": "a90d2324d9fef76f39ff", + "filename": "G3_U1_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 1/G3_U1_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "5172d590f710ccd93123", + "filename": "G3_U1_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 1/G3_U1_WB_web.pdf", + "role": "Reference" + }, + { + "id": "85046ed2de5233be37b6", + "filename": "G3_U1b_WB-AnsKey_web.pdf", + "internal_path": "CKLA_G3_Unit 1/G3_U1b_WB-AnsKey_web.pdf", + "role": "Reference" + }, + { + "id": "903aca828eebbce333df", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 1/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "58ba1ced98345358", + "title": "Grade 3 CKLA Unit 2: Third Grade Skills\u2014Rattenborough\u2019s Guide to Animals", + "filename": "CKLA_G3_Unit-2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-2.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "c0308904e528ca0be2cb", + "filename": "G3_U2_TG_Rev_V1.pdf", + "internal_path": "CKLA_G3_Unit 2/G3_U2_TG_Rev_V1.pdf", + "role": "Teacher Guide" + }, + { + "id": "4bf797a8942b3f02a5d6", + "filename": "CKLA_G3_U2_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 2/CKLA_G3_U2_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "70451f173ac0b2e90327", + "filename": "G3_U2_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 2/G3_U2_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "3c699c6cebbd760518f6", + "filename": "G3_U2_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 2/G3_U2_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "84d2bc0e126096584dfa", + "filename": "G3_U2_WB_SK_Rev-V1.pdf", + "internal_path": "CKLA_G3_Unit 2/G3_U2_WB_SK_Rev-V1.pdf", + "role": "Reference" + }, + { + "id": "ccb07048b8faf78ffbd4", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 2/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "dc0f729e41f86186", + "title": "Grade 3 CKLA Unit 3: Third Grade Skills\u2014How Does Your Body Work?", + "filename": "CKLA_G3_Unit-3.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-3.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "85e6bafd1266b6c827a1", + "filename": "CKLA_G3_U3_TG_web_Dec4.pdf", + "internal_path": "CKLA_G3_Unit 3/CKLA_G3_U3_TG_web_Dec4.pdf", + "role": "Teacher Guide" + }, + { + "id": "18504a738adeb85ea3fd", + "filename": "CKLA_G3_U3_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 3/CKLA_G3_U3_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "43309bf8a0b82aab4781", + "filename": "G3_U3_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 3/G3_U3_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "699ad26b5a37b66bac3e", + "filename": "G3_U3_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 3/G3_U3_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "0984f8227bb972c41a79", + "filename": "G3_U3_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 3/G3_U3_WB_web.pdf", + "role": "Reference" + }, + { + "id": "88f6363fe038dd2d8235", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 3/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "f6ec6b91efc63022", + "title": "Grade 3 CKLA Unit 4: Third Grade Skills\u2014Stories of Ancient Rome", + "filename": "CKLA_G3_Unit-4.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-4.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "79b42286710126afa708", + "filename": "G3_U4_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 4/G3_U4_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "390bcb618b3e33f44769", + "filename": "CKLA_G3_U4_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 4/CKLA_G3_U4_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "e3ff47fc1f89870e1493", + "filename": "G3_U4_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 4/G3_U4_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "38b5a238c5705e080a8d", + "filename": "G3_U4_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 4/G3_U4_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "96c15ae120074fde17bc", + "filename": "G3_U4_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 4/G3_U4_WB_web.pdf", + "role": "Reference" + }, + { + "id": "2b6a08ff9543a4242479", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 4/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "db783bb1152f0274", + "title": "Grade 3 CKLA Unit 5: Third Grade Skills\u2014Adventures in Light and Sound", + "filename": "CKLA_G3_Unit-5.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-5.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "4871f28c6a83810203e0", + "filename": "bk_G3_U5_TG-RevWebOnly-v2.pdf", + "internal_path": "CKLA_G3_Unit 5/bk_G3_U5_TG-RevWebOnly-v2.pdf", + "role": "Teacher Guide" + }, + { + "id": "20027fb3b5104c4ef3df", + "filename": "CKLA_G3_U5_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 5/CKLA_G3_U5_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "0087907e1f9eed769e79", + "filename": "G3_U5_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 5/G3_U5_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "f78d3968725e2cd8d013", + "filename": "G3_U5_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 5/G3_U5_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "4f4e1367d5b984d0bfcb", + "filename": "G3_U5_WB_SK_RevWebOnly-v2.pdf", + "internal_path": "CKLA_G3_Unit 5/G3_U5_WB_SK_RevWebOnly-v2.pdf", + "role": "Reference" + }, + { + "id": "28c08cd1544afa5984f4", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 5/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "2e040068c2352f8a", + "title": "Grade 3 CKLA Unit 6: Third Grade Skills\u2014Gods, Giants, and Dwarves", + "filename": "CKLA_G3_Unit-6.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-6.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "89823470fb4df20fea8a", + "filename": "G3_U6_TG-RevWebOnly-v2.pdf", + "internal_path": "CKLA_G3_Unit 6/G3_U6_TG-RevWebOnly-v2.pdf", + "role": "Teacher Guide" + }, + { + "id": "3ccdfb0c5c69fc7913b2", + "filename": "CKLA_G3_U6_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 6/CKLA_G3_U6_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "a4b0b428d324dfa18cdf", + "filename": "G3_U6_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 6/G3_U6_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "9ad7ca9ae5b6b5241e0d", + "filename": "G3_U6_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 6/G3_U6_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "6eaa055caa5997dd937b", + "filename": "G3_U6_WB_RevWebOnly-v1.pdf", + "internal_path": "CKLA_G3_Unit 6/G3_U6_WB_RevWebOnly-v1.pdf", + "role": "Reference" + }, + { + "id": "9fc8e9f130575790fe25", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 6/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "eed6417bc8d6bbc2", + "title": "Grade 3 CKLA Unit 7: Third Grade Skills\u2014What\u2019s in Our Universe?", + "filename": "CKLA_G3_Unit-7.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-7.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "1239e3b240560919acd4", + "filename": "CKLA_G3_U7_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 7/CKLA_G3_U7_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "c4fa95f9080bc9c76656", + "filename": "CKLA_G3_U7_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 7/CKLA_G3_U7_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "226e1a4212225c0dc8de", + "filename": "CKLA_G3_U7_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 7/CKLA_G3_U7_WB_web.pdf", + "role": "Reference" + }, + { + "id": "af6cdfc892038206a212", + "filename": "G3_U7_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 7/G3_U7_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "44e3d323ac9734239e0a", + "filename": "G3_U7_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 7/G3_U7_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "4332c79f451af88dd878", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 7/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "cbf74df92fbde51d", + "title": "Grade 3 CKLA Unit 8: Third Grade Skills\u2014Native American Stories", + "filename": "CKLA_G3_Unit-8.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-8.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "dc50af83603c6cecf083", + "filename": "G3_U8_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 8/G3_U8_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "e4631d4ddb583bfed36f", + "filename": "CKLA_G3_U8_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 8/CKLA_G3_U8_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "d3923a637722c85a6fb6", + "filename": "G3_U8_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 8/G3_U8_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "ff185725a80f0e5260c0", + "filename": "G3_U8_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 8/G3_U8_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "b29a5d91a98a31c7979d", + "filename": "G3_U8_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 8/G3_U8_WB_web.pdf", + "role": "Reference" + }, + { + "id": "cd86d01a80561d19d67d", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 8/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "a242bd9143539bc6", + "title": "Grade 3 CKLA Unit 9: Third Grade Skills\u2014The Age of Exploration", + "filename": "CKLA_G3_Unit-9.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2016/12/CKLA_G3_Unit-9.zip", + "subject": "Language Arts", + "materials": [ + { + "id": "968eae07009d7ba11f0c", + "filename": "G3_U9_TG_web.pdf", + "internal_path": "CKLA_G3_Unit 9/G3_U9_TG_web.pdf", + "role": "Teacher Guide" + }, + { + "id": "dadfcf24b55ba37721d7", + "filename": "CKLA_G3_U9_VocabImg_web.pdf", + "internal_path": "CKLA_G3_Unit 9/CKLA_G3_U9_VocabImg_web.pdf", + "role": "Reference" + }, + { + "id": "57144f29b2f2ac8fc51e", + "filename": "G3_U9_RDR_web.pdf", + "internal_path": "CKLA_G3_Unit 9/G3_U9_RDR_web.pdf", + "role": "Reference" + }, + { + "id": "f30f854fa2c4862ae344", + "filename": "G3_U9_VocabWrds_FinalReference.pdf", + "internal_path": "CKLA_G3_Unit 9/G3_U9_VocabWrds_FinalReference.pdf", + "role": "Reference" + }, + { + "id": "1bd6e06d730d7d8f9f02", + "filename": "G3_U9_WB_web.pdf", + "internal_path": "CKLA_G3_Unit 9/G3_U9_WB_web.pdf", + "role": "Reference" + }, + { + "id": "1c8bf844ea87a6407f74", + "filename": "Terms and Conditions 2013-09-09.pdf", + "internal_path": "CKLA_G3_Unit 9/Terms and Conditions 2013-09-09.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 0 + }, + { + "id": "26709e1a6085b1d6", + "title": "Grade 3 CKMath Grade 3 \u2013 Connecting Math to Our World: How Math Helps Us", + "filename": "CKMath_Lit_G3_HowMathHelpsUs_Unit_Materials_W1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2025/07/CKMath_Lit_G3_HowMathHelpsUs_Unit_Materials_W1.zip", + "subject": "Math", + "materials": [ + { + "id": "ed42ec0ad237616a2960", + "filename": "CKMath_Lit_G3_HowMathHelpsUs_SR_W1.pdf", + "internal_path": "CKMath_Lit_G3_HowMathHelpsUs_Unit_Materials_W1/CKMath_Lit_G3_HowMathHelpsUs_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "dfe16b0745dd362a9d4f", + "filename": "CKMath_Lit_G3_HowMathHelpsUs_TS_W1.pdf", + "internal_path": "CKMath_Lit_G3_HowMathHelpsUs_Unit_Materials_W1/CKMath_Lit_G3_HowMathHelpsUs_TS_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 0, + "student_material_count": 1 + }, + { + "id": "9c0d13baa4bba920", + "title": "Grade 3 CKMath Unit 1: Introducing Multiplication", + "filename": "CKMath_G3U1_IntroducingMultiplication_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U1_IntroducingMultiplication_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "7d63f15bbd9677e75270", + "filename": "CKMath_G3U1_IntroducingMultiplication_SR_W2.pdf", + "internal_path": "CKMath_G3U1_IntroducingMultiplication_Unit_Materials_W2/CKMath_G3U1_IntroducingMultiplication_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "7c7db3006852af8b5694", + "filename": "CKMath_G3U1_IntroducingMultiplication_TG_W2.pdf", + "internal_path": "CKMath_G3U1_IntroducingMultiplication_Unit_Materials_W2/CKMath_G3U1_IntroducingMultiplication_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "44a3565cb01d829fe483", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U1_IntroducingMultiplication_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "6688845b58b60c06", + "title": "Grade 3 CKMath Unit 2: Area and Multiplication", + "filename": "CKMath_G3U2_AreaAndMultiplication_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U2_AreaAndMultiplication_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "dce664a57be557095f53", + "filename": "CKMath_G3U2_AreaAndMultiplication_SR_W2.pdf", + "internal_path": "CKMath_G3U2_AreaAndMultiplication_Unit_Materials_W2/CKMath_G3U2_AreaAndMultiplication_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "850aa573cd63a3cf9751", + "filename": "CKMath_G3U2_AreaAndMultiplication_TG_W2.pdf", + "internal_path": "CKMath_G3U2_AreaAndMultiplication_Unit_Materials_W2/CKMath_G3U2_AreaAndMultiplication_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "6009376426e01ccabfda", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U2_AreaAndMultiplication_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "0969cc619b32e61c", + "title": "Grade 3 CKMath Unit 3: Wrapping Up Addition and Subtraction Within 1,000", + "filename": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "3009a7ce6ed44f003bd8", + "filename": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_SR_W2.pdf", + "internal_path": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_Unit_Materials_W2/CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "55776be3e402819ee79d", + "filename": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_TG_W2.pdf", + "internal_path": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_Unit_Materials_W2/CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "4e8254317a4afaa26dd8", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U3_WrappingUpAdditionAndSubtractionWithin1000_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "61ab02642061b102", + "title": "Grade 3 CKMath Unit 4: Relating Multiplication to Division", + "filename": "CKMath_G3U4_RelatingMultiplicationToDivision_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U4_RelatingMultiplicationToDivision_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "809ce4f067fe4caa2cd1", + "filename": "CKMath_G3U4_RelatingMultiplicationToDivision_SR_W2.pdf", + "internal_path": "CKMath_G3U4_RelatingMultiplicationToDivision_Unit_Materials_W2/CKMath_G3U4_RelatingMultiplicationToDivision_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "1f4707a84c488acc5937", + "filename": "CKMath_G3U4_RelatingMultiplicationToDivision_TG_W2.pdf", + "internal_path": "CKMath_G3U4_RelatingMultiplicationToDivision_Unit_Materials_W2/CKMath_G3U4_RelatingMultiplicationToDivision_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "59253950f03fc18836eb", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U4_RelatingMultiplicationToDivision_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "dc63fa2a6437f132", + "title": "Grade 3 CKMath Unit 5: Fractions as Numbers", + "filename": "CKMath_G3U5_FractionsAsNumbers_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U5_FractionsAsNumbers_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "94e23bd474bc58e7f4ff", + "filename": "CKMath_G3U5_FractionsAsNumbers_SR_W2.pdf", + "internal_path": "CKMath_G3U5_FractionsAsNumbers_Unit_Materials_W2/CKMath_G3U5_FractionsAsNumbers_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "9fac9660e2f793f227cc", + "filename": "CKMath_G3U5_FractionsAsNumbers_TG_W2.pdf", + "internal_path": "CKMath_G3U5_FractionsAsNumbers_Unit_Materials_W2/CKMath_G3U5_FractionsAsNumbers_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "e9d43164367680e764f3", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U5_FractionsAsNumbers_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "f9e3e577910d53ea", + "title": "Grade 3 CKMath Unit 6: Measuring Length, Time, Liquid Volume, and Weight", + "filename": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "2a48212eb49fe1500469", + "filename": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_SR_W2.pdf", + "internal_path": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_Unit_Materials_W2/CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "497610846aa523f122d2", + "filename": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_TG_W2.pdf", + "internal_path": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_Unit_Materials_W2/CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "e61d3f710081313cf3f7", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U6_MeasuringLengthTimeLiquidVolumeAndWeight_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "ec133aadd439a74f", + "title": "Grade 3 CKMath Unit 7: Two-dimensional Shapes and Perimeter", + "filename": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U7_TwoDimensionalShapesAndPerimeter_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "a151f97f3fd98e34f803", + "filename": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_SR_W2.pdf", + "internal_path": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_Unit_Materials_W2/CKMath_G3U7_TwoDimensionalShapesAndPerimeter_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "2e7ed6882b66e5744f19", + "filename": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_TG_W2.pdf", + "internal_path": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_Unit_Materials_W2/CKMath_G3U7_TwoDimensionalShapesAndPerimeter_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "00c1dad0e72ffecc71ff", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U7_TwoDimensionalShapesAndPerimeter_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "c912ce9b3d605f65", + "title": "Grade 3 CKMath Unit 8: Grade 3 \u2013 Putting It All Together", + "filename": "CKMath_G3U8_PuttingItAllTogether_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKMath_G3U8_PuttingItAllTogether_Unit_Materials_W2.zip", + "subject": "Math", + "materials": [ + { + "id": "c62b6281053d3334de46", + "filename": "CKMath_G3U8_PuttingItAllTogether_SR_W2.pdf", + "internal_path": "CKMath_G3U8_PuttingItAllTogether_Unit_Materials_W2/CKMath_G3U8_PuttingItAllTogether_SR_W2.pdf", + "role": "Student Reader" + }, + { + "id": "b9703e9f7f365a5ddac1", + "filename": "CKMath_G3U8_PuttingItAllTogether_TG_W2.pdf", + "internal_path": "CKMath_G3U8_PuttingItAllTogether_Unit_Materials_W2/CKMath_G3U8_PuttingItAllTogether_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "c541038b527400287c2a", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKMath_G3U8_PuttingItAllTogether_Unit_Materials_W2/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "1355f9ea630f963f", + "title": "Grade 3 CKSci Unit 4: Weather and Climate", + "filename": "G3_U4_Weather-and-Climate_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2019/09/G3_U4_Weather-and-Climate_W2.zip", + "subject": "Other", + "materials": [ + { + "id": "6134beb4b36e48e44d5c", + "filename": "CKSci_G3WeatherClimate_SR.pdf", + "internal_path": "G3_U4_Weather and Climate_W2/CKSci_G3WeatherClimate_SR.pdf", + "role": "Student Reader" + }, + { + "id": "3df9b20f6fe169ddeec2", + "filename": "CKSci_G3WeatherClimate_TG_W2.pdf", + "internal_path": "G3_U4_Weather and Climate_W2/CKSci_G3WeatherClimate_TG_W2.pdf", + "role": "Teacher Guide" + }, + { + "id": "1df01bad9fb27f554123", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "G3_U4_Weather and Climate_W2/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "1b5d42c9ce495ed9", + "title": "Grade 3 CKSci Grade 3 \u2013 Science in Action: Christian and Skylar", + "filename": "CKSci_G3_ScienceInAction_Grade_Materials_W1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2025/08/CKSci_G3_ScienceInAction_Grade_Materials_W1.zip", + "subject": "Science", + "materials": [ + { + "id": "08b6ae1076eedcfb8cfe", + "filename": "CKSci_G3_ScienceInAction_SR_W1.pdf", + "internal_path": "CKSci_G3_ScienceInAction_Grade_Materials_W1/CKSci_G3_ScienceInAction_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "6e7fb4dde837c269236d", + "filename": "CKSci_G3_ScienceInAction_TG_W1.pdf", + "internal_path": "CKSci_G3_ScienceInAction_Grade_Materials_W1/CKSci_G3_ScienceInAction_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "ee933e69a6408842da9d", + "filename": "CKSci_G3_ScienceInAction_ORG_W1.pdf", + "internal_path": "CKSci_G3_ScienceInAction_Grade_Materials_W1/CKSci_G3_ScienceInAction_ORG_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "74855438e97d92b9", + "title": "Grade 3 CKSci Unit 1: Investigating Forces", + "filename": "CKSci_G3_U1_InvestigatingForces.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2019/09/CKSci_G3_U1_InvestigatingForces.zip", + "subject": "Science", + "materials": [ + { + "id": "1db147db968f26af9797", + "filename": "CKSci_G3_U1_InvestigatingForces_SR.pdf", + "internal_path": "CKSci_G3_U1_InvestigatingForces/CKSci_G3_U1_InvestigatingForces_SR.pdf", + "role": "Student Reader" + }, + { + "id": "02133365f042b8528f5f", + "filename": "CKSci_G3_U1_Investigating Forces_TG.pdf", + "internal_path": "CKSci_G3_U1_InvestigatingForces/CKSci_G3_U1_Investigating Forces_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "f5f449494b291413d76b", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKSci_G3_U1_InvestigatingForces/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "92dfe8a67f39cd8a", + "title": "Grade 3 CKSci Unit 2: Life Cycles, Traits, and Variations", + "filename": "CKSci_G3_U2_Life-Cycles.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2019/09/CKSci_G3_U2_Life-Cycles.zip", + "subject": "Science", + "materials": [ + { + "id": "33cf393c729217b5aec5", + "filename": "CKSci_G3U2_LifeCycles_SR.pdf", + "internal_path": "CKSci_G3_U2_Life Cycles/CKSci_G3U2_LifeCycles_SR.pdf", + "role": "Student Reader" + }, + { + "id": "9ea79e348e034220423c", + "filename": "CKSci_G3_U2_LifeCycles_TG.pdf", + "internal_path": "CKSci_G3_U2_Life Cycles/CKSci_G3_U2_LifeCycles_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "4bbf0af76e526d64453a", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKSci_G3_U2_Life Cycles/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "93c93ff84a929456", + "title": "Grade 3 CKSci Unit 3: Habitats and Change", + "filename": "CKSci_G3_U3_Habitats-and-Change.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2019/09/CKSci_G3_U3_Habitats-and-Change.zip", + "subject": "Science", + "materials": [ + { + "id": "8704adfb23b03ef43618", + "filename": "CKSci_G3_U3_Habitats and Change_SR.pdf", + "internal_path": "CKSci_G3_U3_Habitats and Change/CKSci_G3_U3_Habitats and Change_SR.pdf", + "role": "Student Reader" + }, + { + "id": "c5ccf33780511da919c5", + "filename": "CKSci_G3_U3_Habitats_TG.pdf", + "internal_path": "CKSci_G3_U3_Habitats and Change/CKSci_G3_U3_Habitats_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "0092d53e030f6d3de875", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKSci_G3_U3_Habitats and Change/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "bf79b01dc23b6bbb", + "title": "Grade 3 CKSci Unit 5: Human Senses and Movement", + "filename": "CKSci_G3U5_Human-Senses-and-Movement.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2021/02/CKSci_G3U5_Human-Senses-and-Movement.zip", + "subject": "Science", + "materials": [ + { + "id": "b8bf02bc40bc0a5c8215", + "filename": "CKSci_G3U5_Human Senses and Movement_SR.pdf", + "internal_path": "CKSci_G3U5_Human Senses and Movement/CKSci_G3U5_Human Senses and Movement_SR.pdf", + "role": "Student Reader" + }, + { + "id": "531677132ff51133882e", + "filename": "CKSci_G3U5_Human Senses and Movement_TG.pdf", + "internal_path": "CKSci_G3U5_Human Senses and Movement/CKSci_G3U5_Human Senses and Movement_TG.pdf", + "role": "Teacher Guide" + }, + { + "id": "ea02b7cfb29745a411aa", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKSci_G3U5_Human Senses and Movement/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "b068872b310f273b", + "title": "Grade 3 CKSci Unit 6: Codes and Computers", + "filename": "CKSci_G3U6_CodesAndComputers_Unit_Materials_W2.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2023/09/CKSci_G3U6_CodesAndComputers_Unit_Materials_W2.zip", + "subject": "Science", + "materials": [ + { + "id": "7015f212dab550f2ef3f", + "filename": "CKSciSC_G3U6_CodesAndComputers_SR_W1.pdf", + "internal_path": "CKSci_G3U6_CodesAndComputers_Unit_Materials_W2/CKSciSC_G3U6_CodesAndComputers_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "06ca3341cc1583514520", + "filename": "CKSciSC_G3U6_CodesAndComputers_TG_W1.pdf", + "internal_path": "CKSci_G3U6_CodesAndComputers_Unit_Materials_W2/CKSciSC_G3U6_CodesAndComputers_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "5c7a2052e831f7fcb723", + "filename": "CKSciSC_G3U6_CodesAndComputers_ORG_W2.pdf", + "internal_path": "CKSci_G3U6_CodesAndComputers_Unit_Materials_W2/CKSciSC_G3U6_CodesAndComputers_ORG_W2.pdf", + "role": "Reference" + }, + { + "id": "3880f95b26be13217565", + "filename": "Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "internal_path": "CKSci_G3U6_CodesAndComputers_Unit_Materials_W2/Core-Knowledge-Curriculum-Series-CCL-Terms-of-Use.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + }, + { + "id": "40607d41bb78b647", + "title": "Grade 3 CKSci Unit 7: Reading About Science", + "filename": "CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1.zip", + "source_url": "https://www.coreknowledge.org/wp-content/uploads/2024/08/CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1.zip", + "subject": "Science", + "materials": [ + { + "id": "b8fbb881e87372ebadf9", + "filename": "CKSci_G3U7_ReadingAboutScience_SR_W1.pdf", + "internal_path": "CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1/CKSci_G3U7_ReadingAboutScience_SR_W1.pdf", + "role": "Student Reader" + }, + { + "id": "9dc54e0398ac0cff3fe4", + "filename": "CKSci_G3U7_ReadingAboutScience_TG_W1.pdf", + "internal_path": "CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1/CKSci_G3U7_ReadingAboutScience_TG_W1.pdf", + "role": "Teacher Guide" + }, + { + "id": "e037bc7bbcdc823420c5", + "filename": "CKSci_G3U7_ReadingAboutScience_ORG_W1.pdf", + "internal_path": "CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1/CKSci_G3U7_ReadingAboutScience_ORG_W1.pdf", + "role": "Reference" + }, + { + "id": "c191944f2d987b4bc10a", + "filename": "CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "internal_path": "CKSci_G3U7_ReadingAboutScience_Unit_Materials_W1/CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf", + "role": "Reference" + } + ], + "teacher_guide_count": 1, + "student_material_count": 1 + } + ] +} diff --git a/projects/ckmath-interactive-pilot/docs/plans/2026-09-09-grade3-showcase.md b/projects/ckmath-interactive-pilot/docs/plans/2026-09-09-grade3-showcase.md new file mode 100644 index 0000000..9ffb3bf --- /dev/null +++ b/projects/ckmath-interactive-pilot/docs/plans/2026-09-09-grade3-showcase.md @@ -0,0 +1,31 @@ +# Grade 3 Curriculum Showcase Implementation Plan + +> **For Hermes:** Build the showable local demo task-by-task with test-first checks. + +**Goal:** Turn the downloaded Grade 3 Core Knowledge collection into a private local library that exposes every available unit, its student resources, and its teacher-guide PDFs, while keeping the interactive equal-groups session as a concrete lesson example for Alicia. + +**Architecture:** A local Python server serves the existing static interactive session and a generated Grade 3 catalog. The catalog is derived directly from the verified download manifest and ZIP contents; teacher/student PDFs stay inside their original ZIP archives and are streamed only on demand, avoiding copied curriculum files. The interface uses browser-only state and no accounts or learner-data storage. + +**Tech stack:** Python stdlib (`http.server`, `zipfile`, `json`), PyMuPDF for PDF page metadata, vanilla HTML/CSS/JavaScript, Node’s built-in test runner. + +--- + +### Task 1: Derive a Grade 3 catalog from verified downloads +- Add a failing test for grade filtering, subject classification, and teacher-guide detection. +- Implement `src/catalog.mjs` pure helpers. +- Implement `scripts/build_grade3_catalog.py` to inspect every Grade 3 archive from `download-manifest.json`, recording unit title, source archive, internal PDFs, material roles, and PDF page counts. +- Generate `data/grade3_catalog.json`. + +### Task 2: Stream original PDFs without copying curriculum +- Add a failing server test for a manifest-known PDF route and an unknown/traversal-style route. +- Implement `server.py` with static-file serving, a catalog endpoint, and a constrained ZIP-PDF route based only on IDs present in `data/grade3_catalog.json`. + +### Task 3: Add a Grade 3 library and teacher-plan view +- Add a failing browser-independent test for filtering by subject and selection state. +- Extend the local UI with a Grade 3 library showing every catalogued unit, student resources, teacher guides, source/licensing notice, and one selected teacher-plan preview. +- Link teacher guides to the constrained streaming route and retain the first interactive math session as an explicit classroom activity. + +### Task 4: Verify the demo +- Run catalog generation, all tests, server route checks, browser learner flow, and accessibility audit. +- Demonstrate responsive library browsing and a teacher guide opening in the browser. +- Stop the temporary local server after the demonstration; do not bind to the LAN or store learner data. diff --git a/projects/ckmath-interactive-pilot/index.html b/projects/ckmath-interactive-pilot/index.html new file mode 100644 index 0000000..1ae216c --- /dev/null +++ b/projects/ckmath-interactive-pilot/index.html @@ -0,0 +1,70 @@ + + + + + + + Grade 3 Learning Studio + + + + +
+
+
+

Private family curriculum pilot

+

A whole Grade 3 year—organized around real teaching.

+

Browse the downloaded Core Knowledge units, open their original teacher plans and student materials, then use interactive sessions for the moments where practice benefits from response and feedback.

+ +
+ +
+ +
+

Teacher-led by design

The lesson plan stays in charge.

+

Each unit keeps its original teacher guide—learning goals, materials, talk moves, expected responses, and support for misunderstandings. Interactive activities are a layer on top, not a replacement for the teacher.

+
+ +
+

The downloaded collection

Grade 3 curriculum library

Loading the verified local catalog…

+
+
+
+ +
+

Interactive lesson example

Math · Unit 1 · Equal groups

Based on the Unit 1 teacher-plan activity: represent equal-group situations with concrete objects or drawings.

+
+
+

1. Build the situation

+

There are 7 people wearing shoes. Each person is wearing 2 shoes. Build the equal groups.

+
+ + + +

Count by twos or add 2 seven times.

+
+ + +
+ +

Curriculum source: Core Knowledge Foundation, downloaded from Core Knowledge. This private, non-commercial pilot links to the original local curriculum materials and retains each source unit’s embedded license and attribution notice. Confirm the embedded license before adapting or sharing any additional unit.

+
+ + + + diff --git a/projects/ckmath-interactive-pilot/library-app.mjs b/projects/ckmath-interactive-pilot/library-app.mjs new file mode 100644 index 0000000..cc4dc14 --- /dev/null +++ b/projects/ckmath-interactive-pilot/library-app.mjs @@ -0,0 +1,49 @@ +import { filterUnits, subjectsFor, teacherGuidesFor } from './src/library.mjs'; + +const filters = document.querySelector('#subject-filters'); +const grid = document.querySelector('#unit-grid'); +const status = document.querySelector('#library-status'); +let units = []; +let selectedSubject = 'All'; + +function resourceLink(material) { + return `Open ${material.role}`; +} + +function renderFilters() { + filters.innerHTML = subjectsFor(units).map((subject) => ``).join(''); + filters.querySelectorAll('button').forEach((button) => button.addEventListener('click', () => { + selectedSubject = button.dataset.subject; + renderFilters(); + renderUnits(); + })); +} + +function renderUnits() { + const filtered = filterUnits(units, selectedSubject); + status.textContent = `${filtered.length} ${selectedSubject === 'All' ? 'units' : selectedSubject + ' units'} shown`; + grid.innerHTML = filtered.map((unit) => { + const guides = teacherGuidesFor(unit); + const student = unit.materials.filter((material) => material.role === 'Student Reader'); + const resources = [...guides, ...student].slice(0, 3).map(resourceLink).join(''); + return `

${unit.subject}

${unit.title.replace(/^Grade 3\s*/, '')}

${guides.length ? `${guides.length} teacher plan${guides.length === 1 ? '' : 's'}` : 'Teacher plan not identified'} · ${student.length} student resource${student.length === 1 ? '' : 's'}

${resources ? `` : '

Open the original archive source for supporting materials.

'}Core Knowledge source ↗
`; + }).join(''); +} + +async function loadLibrary() { + try { + const response = await fetch('/api/catalog', { cache: 'no-store' }); + if (!response.ok) throw new Error('catalog unavailable'); + const catalog = await response.json(); + units = catalog.units; + document.querySelector('#unit-count').textContent = catalog.unit_count; + document.querySelector('#guide-count').textContent = catalog.teacher_guide_count; + document.querySelector('#student-count').textContent = catalog.student_material_count; + renderFilters(); + renderUnits(); + } catch { + status.textContent = 'The local catalog could not load. Start the private Grade 3 demo server.'; + } +} + +loadLibrary(); diff --git a/projects/ckmath-interactive-pilot/package.json b/projects/ckmath-interactive-pilot/package.json new file mode 100644 index 0000000..e363761 --- /dev/null +++ b/projects/ckmath-interactive-pilot/package.json @@ -0,0 +1,9 @@ +{ + "name": "ckmath-interactive-pilot", + "private": true, + "version": "0.1.0", + "type": "module", + "scripts": { + "test": "node --test" + } +} diff --git a/projects/ckmath-interactive-pilot/scripts/build_grade3_catalog.py b/projects/ckmath-interactive-pilot/scripts/build_grade3_catalog.py new file mode 100644 index 0000000..b2665e7 --- /dev/null +++ b/projects/ckmath-interactive-pilot/scripts/build_grade3_catalog.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python3 +"""Build a local-only Grade 3 catalog from verified Core Knowledge archives.""" + +import argparse +import hashlib +import json +import re +import zipfile +from pathlib import Path + +ROLE_ORDER = {'Student Reader': 0, 'Teacher Guide': 1, 'Reference': 2} + + +def is_grade_three_source(item): + title = str(item.get('title', '')) + filename = str(item.get('filename', '')) + return bool(re.search(r'\bGrade 3\b', title, re.I) or re.search(r'(?:^|[_-])G3(?:[_-]|$)', filename, re.I)) + + +def classify_unit(filename): + if re.search(r'CKMath', filename, re.I): + return 'Math' + if re.search(r'CKSci', filename, re.I): + return 'Science' + if re.search(r'CKLA', filename, re.I): + return 'Language Arts' + if re.search(r'CKHG|CKIYS|LABB_CKHG', filename, re.I): + return 'History & Geography' + if re.search(r'CKMusic|CKVA', filename, re.I): + return 'Arts' + return 'Other' + + +def role_for_pdf(filename): + if re.search(r'(?:^|[_-])(TG|TeacherGuide|Teacher[_ -]?Guide)(?:[_-]|\.)', filename, re.I): + return 'Teacher Guide' + if re.search(r'(?:^|[_-])(SR|StudentReader|Student[_ -]?Reader|ActivityBook)(?:[_-]|\.)', filename, re.I): + return 'Student Reader' + return 'Reference' + + +def material_id(archive_name, internal_path): + raw = '%s\0%s' % (archive_name, internal_path) + return hashlib.sha256(raw.encode('utf-8')).hexdigest()[:20] + + +def pdf_page_count(archive_path, internal_path): + try: + import fitz + with zipfile.ZipFile(archive_path) as archive: + document = fitz.open(stream=archive.read(internal_path), filetype='pdf') + count = document.page_count + document.close() + return count + except Exception: + return None + + +def inspect_archive(archive_path, include_page_counts=False): + materials = [] + with zipfile.ZipFile(archive_path) as archive: + for info in archive.infolist(): + internal_path = info.filename + if internal_path.startswith('__MACOSX/') or not internal_path.lower().endswith('.pdf'): + continue + filename = Path(internal_path).name + material = { + 'id': material_id(archive_path.name, internal_path), + 'filename': filename, + 'internal_path': internal_path, + 'role': role_for_pdf(filename), + } + if include_page_counts: + material['pages'] = pdf_page_count(archive_path, internal_path) + materials.append(material) + materials.sort(key=lambda item: (ROLE_ORDER[item['role']], item['filename'].lower())) + return materials + + +def build_catalog(manifest_path, downloads_dir, include_page_counts=False): + entries = json.loads(Path(manifest_path).read_text()) + units = [] + for item in entries: + if item.get('type') != 'zip' or not is_grade_three_source(item): + continue + archive_path = Path(downloads_dir) / item['filename'] + if not archive_path.is_file(): + continue + materials = inspect_archive(archive_path, include_page_counts) + units.append({ + 'id': hashlib.sha256(item['filename'].encode('utf-8')).hexdigest()[:16], + 'title': item['title'], + 'filename': item['filename'], + 'source_url': item['source'], + 'subject': classify_unit(item['filename']), + 'materials': materials, + 'teacher_guide_count': sum(material['role'] == 'Teacher Guide' for material in materials), + 'student_material_count': sum(material['role'] == 'Student Reader' for material in materials), + }) + units.sort(key=lambda item: (item['subject'], item['title'].lower())) + return { + 'grade': 3, + 'unit_count': len(units), + 'teacher_guide_count': sum(unit['teacher_guide_count'] for unit in units), + 'student_material_count': sum(unit['student_material_count'] for unit in units), + 'units': units, + } + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('--manifest', type=Path, required=True) + parser.add_argument('--downloads-dir', type=Path, required=True) + parser.add_argument('--output', type=Path, required=True) + parser.add_argument('--page-counts', action='store_true') + args = parser.parse_args() + catalog = build_catalog(args.manifest, args.downloads_dir, args.page_counts) + args.output.parent.mkdir(parents=True, exist_ok=True) + args.output.write_text(json.dumps(catalog, indent=2) + '\n') + print(json.dumps({ + 'output': str(args.output), + 'units': catalog['unit_count'], + 'teacher_guides': catalog['teacher_guide_count'], + 'student_materials': catalog['student_material_count'], + })) + + +if __name__ == '__main__': + main() diff --git a/projects/ckmath-interactive-pilot/server.py b/projects/ckmath-interactive-pilot/server.py new file mode 100644 index 0000000..3f507fd --- /dev/null +++ b/projects/ckmath-interactive-pilot/server.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python3 +"""Private loopback demo server for the Grade 3 curriculum showcase.""" + +import argparse +import json +import mimetypes +import os +import re +import sys +import zipfile +from http import HTTPStatus +from http.server import SimpleHTTPRequestHandler, ThreadingHTTPServer +from pathlib import Path +from urllib.parse import unquote, urlparse + +ROOT = Path(__file__).resolve().parent +DEFAULT_DOWNLOADS = Path.home() / 'Downloads' / 'CoreKnowledge_Grades_1-5_EN_ES' +sys.path.insert(0, str(ROOT / 'src')) +from server_catalog import lookup_material, material_index + + +class ShowcaseHandler(SimpleHTTPRequestHandler): + def __init__(self, *args, downloads_dir=None, **kwargs): + self.downloads_dir = Path(downloads_dir or DEFAULT_DOWNLOADS).resolve() + super().__init__(*args, directory=str(ROOT), **kwargs) + + def catalog(self): + return json.loads((ROOT / 'data' / 'grade3_catalog.json').read_text()) + + def send_json(self, data): + body = json.dumps(data).encode('utf-8') + self.send_response(HTTPStatus.OK) + self.send_header('Content-Type', 'application/json; charset=utf-8') + self.send_header('Content-Length', str(len(body))) + self.send_header('Cache-Control', 'no-store') + self.end_headers() + self.wfile.write(body) + + def send_pdf(self, material_id): + if not re.fullmatch(r'[0-9a-f]{20}', material_id): + self.send_error(HTTPStatus.NOT_FOUND) + return + pair = lookup_material(material_index(self.catalog()), material_id) + if pair is None: + self.send_error(HTTPStatus.NOT_FOUND) + return + archive_name, internal_path = pair + archive_path = (self.downloads_dir / archive_name).resolve() + if archive_path.parent != self.downloads_dir: + self.send_error(HTTPStatus.NOT_FOUND) + return + try: + with zipfile.ZipFile(archive_path) as archive: + content = archive.read(internal_path) + except (FileNotFoundError, KeyError, zipfile.BadZipFile): + self.send_error(HTTPStatus.NOT_FOUND) + return + filename = Path(internal_path).name + self.send_response(HTTPStatus.OK) + self.send_header('Content-Type', mimetypes.guess_type(filename)[0] or 'application/pdf') + self.send_header('Content-Length', str(len(content))) + self.send_header('Content-Disposition', 'inline; filename="%s"' % filename.replace('"', '')) + self.send_header('Cache-Control', 'private, no-store') + self.end_headers() + self.wfile.write(content) + + def do_GET(self): + path = urlparse(self.path).path + if path == '/api/catalog': + self.send_json(self.catalog()) + return + if path.startswith('/api/pdf/'): + self.send_pdf(unquote(path[len('/api/pdf/'):])) + return + super().do_GET() + + +def run(port, downloads_dir): + def handler(*args, **kwargs): + return ShowcaseHandler(*args, downloads_dir=downloads_dir, **kwargs) + server = ThreadingHTTPServer(('127.0.0.1', port), handler) + print('Serving Grade 3 showcase at http://127.0.0.1:%s' % port) + server.serve_forever() + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--port', type=int, default=8899) + parser.add_argument('--downloads-dir', type=Path, default=DEFAULT_DOWNLOADS) + args = parser.parse_args() + run(args.port, args.downloads_dir) diff --git a/projects/ckmath-interactive-pilot/src/__pycache__/server_catalog.cpython-314.pyc b/projects/ckmath-interactive-pilot/src/__pycache__/server_catalog.cpython-314.pyc new file mode 100644 index 0000000..46325f7 Binary files /dev/null and b/projects/ckmath-interactive-pilot/src/__pycache__/server_catalog.cpython-314.pyc differ diff --git a/projects/ckmath-interactive-pilot/src/catalog.mjs b/projects/ckmath-interactive-pilot/src/catalog.mjs new file mode 100644 index 0000000..ac72ffd --- /dev/null +++ b/projects/ckmath-interactive-pilot/src/catalog.mjs @@ -0,0 +1,20 @@ +export function isGradeThreeSource(source) { + return /\bGrade 3\b/i.test(source.title ?? '') || /(?:^|[_-])G3(?:[_-]|$)/i.test(source.filename ?? ''); +} + +export function classifyUnit(filename) { + const name = String(filename); + if (/CKMath/i.test(name)) return 'Math'; + if (/CKSci/i.test(name)) return 'Science'; + if (/CKLA/i.test(name)) return 'Language Arts'; + if (/CKHG|CKIYS|LABB_CKHG/i.test(name)) return 'History & Geography'; + if (/CKMusic|CKVA/i.test(name)) return 'Arts'; + return 'Other'; +} + +export function roleForPdf(filename) { + const name = String(filename); + if (/(?:^|[_-])(TG|TeacherGuide|Teacher[_ -]?Guide)(?:[_-]|\.)/i.test(name)) return 'Teacher Guide'; + if (/(?:^|[_-])(SR|StudentReader|Student[_ -]?Reader|ActivityBook)(?:[_-]|\.)/i.test(name)) return 'Student Reader'; + return 'Reference'; +} diff --git a/projects/ckmath-interactive-pilot/src/library.mjs b/projects/ckmath-interactive-pilot/src/library.mjs new file mode 100644 index 0000000..5025d54 --- /dev/null +++ b/projects/ckmath-interactive-pilot/src/library.mjs @@ -0,0 +1,15 @@ +export function subjectsFor(units) { + return ['All', ...new Set(units.map((unit) => unit.subject).filter(Boolean))].sort((a, b) => { + if (a === 'All') return -1; + if (b === 'All') return 1; + return a.localeCompare(b); + }); +} + +export function filterUnits(units, subject) { + return subject === 'All' ? units : units.filter((unit) => unit.subject === subject); +} + +export function teacherGuidesFor(unit) { + return (unit.materials ?? []).filter((material) => material.role === 'Teacher Guide'); +} diff --git a/projects/ckmath-interactive-pilot/src/server_catalog.py b/projects/ckmath-interactive-pilot/src/server_catalog.py new file mode 100644 index 0000000..eb2d718 --- /dev/null +++ b/projects/ckmath-interactive-pilot/src/server_catalog.py @@ -0,0 +1,18 @@ +def material_index(catalog): + """Map only generated catalog IDs to their exact archive member paths.""" + index = {} + for unit in catalog.get('units', []): + archive_name = unit.get('filename') + if not archive_name: + continue + for material in unit.get('materials', []): + material_id = material.get('id') + internal_path = material.get('internal_path') + if material_id and internal_path: + index[material_id] = (archive_name, internal_path) + return index + + +def lookup_material(index, material_id): + """Return a declared pair or None; request input is never a filesystem path.""" + return index.get(material_id) diff --git a/projects/ckmath-interactive-pilot/src/session.mjs b/projects/ckmath-interactive-pilot/src/session.mjs new file mode 100644 index 0000000..c11b603 --- /dev/null +++ b/projects/ckmath-interactive-pilot/src/session.mjs @@ -0,0 +1,16 @@ +export function isCorrectTotal(value) { + return Number(String(value).trim()) === 14; +} + +export function isCorrectEquation(value) { + const numbers = String(value).match(/\d+/g)?.map(Number) ?? []; + if (numbers.length !== 3) return false; + const [first, second, product] = numbers; + return product === 14 && ((first === 7 && second === 2) || (first === 2 && second === 7)); +} + +export function hasReasoningEvidence(value) { + const text = String(value).toLowerCase(); + const strategy = /group|each|repeated|add|plus/.test(text); + return strategy && /\b14\b/.test(text); +} diff --git a/projects/ckmath-interactive-pilot/styles.css b/projects/ckmath-interactive-pilot/styles.css new file mode 100644 index 0000000..8fa5e4b --- /dev/null +++ b/projects/ckmath-interactive-pilot/styles.css @@ -0,0 +1,9 @@ +:root { --ink:#142737; --muted:#576a75; --paper:#f7f4ed; --card:#fffdfa; --line:#ded7c7; --blue:#156d92; --blue-deep:#0e526f; --mint:#dceee9; --gold:#edb950; --good:#13765a; --bad:#a13d34; } +* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; min-height:100vh; color:var(--ink); background:var(--paper); font-family:"Avenir Next",Avenir,ui-rounded,system-ui,sans-serif; } +a { color:var(--blue-deep); } .site-header { width:min(100% - 2rem,1160px); margin:auto; padding:1.15rem 0; display:flex; align-items:center; justify-content:space-between; gap:1rem; } .brand { color:var(--ink); text-decoration:none; font-weight:850; letter-spacing:-.04em; font-size:1.17rem; } .brand span { color:var(--blue); } nav { display:flex; gap:1.2rem; } nav a { color:var(--muted); text-decoration:none; font-size:.92rem; font-weight:700; } +main { width:min(100% - 2rem,1160px); margin:auto; } .hero { display:grid; grid-template-columns:1.5fr .78fr; gap:clamp(1.5rem,6vw,6rem); align-items:end; padding:clamp(3rem,8vw,7rem) 0 4rem; border-bottom:1px solid var(--line); } .eyebrow { margin:0 0 .6rem; color:var(--blue-deep); font-size:.73rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; } h1,h2,h3 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.045em; } h1 { max-width:13ch; margin:0; font-size:clamp(3.1rem,7vw,6.3rem); line-height:.92; } h2 { margin:0; font-size:clamp(2rem,4vw,3rem); line-height:1; } h3 { margin:.2rem 0 .8rem; font-size:1.45rem; line-height:1.05; } .lede { max-width:58ch; color:var(--muted); font-size:1.08rem; line-height:1.6; } .hero-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.5rem; } .button,button { appearance:none; border:0; border-radius:.68rem; padding:.8rem 1rem; color:white; background:var(--blue); cursor:pointer; text-decoration:none; font:inherit; font-weight:800; } .button:hover,button:hover { background:var(--blue-deep); } .button.quiet { color:var(--blue-deep); background:#dceef3; } .hero-note { border:1px solid var(--line); border-radius:1rem; padding:1.2rem 1.3rem; background:var(--card); box-shadow:0 1rem 2.4rem #283d4012; } .hero-note p { margin:.55rem 0; } .hero-note strong { font-family:Georgia,serif; color:var(--blue-deep); font-size:1.5rem; } .note-label { color:var(--muted); font-size:.8rem; font-weight:800; text-transform:uppercase; letter-spacing:.09em; } hr { border:0; border-top:1px solid var(--line); margin:1rem 0; } +.teacher-bridge { display:grid; grid-template-columns:.8fr 1.2fr; gap:2rem; padding:4rem 0; } .teacher-bridge>p { margin:0; color:var(--muted); font-size:1.06rem; line-height:1.65; } .library-section,.interactive-wrap { padding:4rem 0; border-top:1px solid var(--line); } .section-head { display:flex; justify-content:space-between; align-items:end; gap:1.5rem; margin-bottom:1.5rem; } .small { color:var(--muted); font-size:.88rem; line-height:1.5; } .filters { display:flex; flex-wrap:wrap; gap:.45rem; margin:1.25rem 0 1.5rem; } .filter { padding:.52rem .75rem; border:1px solid #cbd7d9; color:var(--blue-deep); background:transparent; font-size:.88rem; } .filter.selected { color:white; background:var(--blue-deep); border-color:var(--blue-deep); } +.unit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.85rem; } .unit-card { display:flex; min-height:235px; flex-direction:column; padding:1.15rem; border:1px solid var(--line); border-radius:.95rem; background:var(--card); } .unit-subject { margin:0; color:var(--blue-deep); font-size:.75rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; } .material-count { margin:0 0 .9rem; color:var(--muted); font-size:.86rem; line-height:1.4; } .resource-links { display:grid; gap:.35rem; margin-top:auto; } .resource-link { width:fit-content; color:var(--blue-deep); font-size:.9rem; font-weight:800; } .source-link { margin-top:.85rem; color:var(--muted); font-size:.76rem; } +.interactive-wrap { padding-bottom:2rem; max-width:790px; } .progress { display:flex; gap:.45rem; margin:2rem 0 1.2rem; } .progress span { height:.4rem; flex:1; border-radius:2rem; background:#d8e0e2; } .progress span.active { background:var(--blue); } .session { border:1px solid var(--line); border-radius:1.1rem; background:var(--card); box-shadow:0 1.2rem 3rem #42381610; padding:clamp(1.25rem,4vw,2rem); } .session + .session { margin-top:1rem; } .session h3 { font-size:1.75rem; } .prompt { margin:.9rem 0 1.25rem; font-size:1.1rem; line-height:1.5; } .groups { display:grid; grid-template-columns:repeat(auto-fit,minmax(105px,1fr)); gap:.65rem; margin:1.1rem 0; } .group { min-height:88px; border:2px dashed #b7d0dc; border-radius:.85rem; padding:.65rem; background:#f3fbfd; text-align:center; } .group span { display:block; color:var(--muted); font-size:.78rem; font-weight:700; } .shoes { min-height:42px; padding-top:.45rem; font-size:1.45rem; letter-spacing:.08em; } .answer-row { display:flex; gap:.65rem; flex-wrap:wrap; align-items:center; margin-top:1.15rem; } input,textarea { width:min(100%,320px); border:1px solid #afbac1; border-radius:.65rem; background:white; color:var(--ink); font:inherit; padding:.78rem; } textarea { min-height:112px; width:100%; resize:vertical; } button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid var(--gold); outline-offset:3px; } .feedback { min-height:1.5rem; margin:.8rem 0 0; font-weight:700; } .feedback.good { color:var(--good); } .feedback.bad { color:var(--bad); } .tip { color:var(--muted); font-size:.94rem; line-height:1.45; } [hidden] { display:none!important; } .source { max-width:850px; margin:2rem 0 3.5rem; color:var(--muted); font-size:.8rem; line-height:1.5; } +@media (max-width:800px) { .hero,.teacher-bridge { grid-template-columns:1fr; } .hero { padding-top:3.5rem; } .unit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } } +@media (max-width:520px) { .site-header,main { width:min(100% - 1.2rem,1160px); } nav { gap:.8rem; } .unit-grid { grid-template-columns:1fr; } .section-head { display:block; } .section-head .small { margin-top:.8rem; } h1 { font-size:3.35rem; } .session { padding:1.15rem; } .answer-row input { width:100%; } } diff --git a/projects/ckmath-interactive-pilot/tests/catalog.test.mjs b/projects/ckmath-interactive-pilot/tests/catalog.test.mjs new file mode 100644 index 0000000..4b8d94a --- /dev/null +++ b/projects/ckmath-interactive-pilot/tests/catalog.test.mjs @@ -0,0 +1,21 @@ +import test from 'node:test'; +import assert from 'node:assert/strict'; +import { classifyUnit, roleForPdf, isGradeThreeSource } from '../src/catalog.mjs'; + +test('keeps a Grade 3 unit from the verified source list', () => { + assert.equal(isGradeThreeSource({ title: 'Grade 3 CK Math: Unit 1', filename: 'CKMath_G3U1.zip' }), true); + assert.equal(isGradeThreeSource({ title: 'Grade 2 CK Math: Unit 1', filename: 'CKMath_G2U1.zip' }), false); +}); + +test('classifies major Grade 3 curriculum families', () => { + assert.equal(classifyUnit('CKMath_G3U1_IntroducingMultiplication.zip'), 'Math'); + assert.equal(classifyUnit('CKSci_G3_U1_InvestigatingForces.zip'), 'Science'); + assert.equal(classifyUnit('CKLA_G3_Unit-1.zip'), 'Language Arts'); + assert.equal(classifyUnit('CKHG_G3_U1_WorldRivers.zip'), 'History & Geography'); +}); + +test('labels teacher guides and student resources without exposing arbitrary paths', () => { + assert.equal(roleForPdf('CKMath_G3U1_IntroducingMultiplication_TG_W2.pdf'), 'Teacher Guide'); + assert.equal(roleForPdf('CKMath_G3U1_IntroducingMultiplication_SR_W2.pdf'), 'Student Reader'); + assert.equal(roleForPdf('CoreKnowledge_CurriculumSeries_CCL_TermsOfUse_2024_W1.pdf'), 'Reference'); +}); diff --git a/projects/ckmath-interactive-pilot/tests/library.test.mjs b/projects/ckmath-interactive-pilot/tests/library.test.mjs new file mode 100644 index 0000000..6074a95 --- /dev/null +++ b/projects/ckmath-interactive-pilot/tests/library.test.mjs @@ -0,0 +1,23 @@ +import test from 'node:test'; +import assert from 'node:assert/strict'; +import { filterUnits, subjectsFor, teacherGuidesFor } from '../src/library.mjs'; + +const units = [ + { subject: 'Math', title: 'Grade 3 Math', materials: [{ role: 'Teacher Guide', id: 'math-guide' }] }, + { subject: 'Science', title: 'Grade 3 Science', materials: [{ role: 'Student Reader', id: 'science-reader' }] }, + { subject: 'Math', title: 'Math Literature', materials: [] }, +]; + +test('lists available subjects with All first', () => { + assert.deepEqual(subjectsFor(units), ['All', 'Math', 'Science']); +}); + +test('filters units by selected subject', () => { + assert.deepEqual(filterUnits(units, 'Math').map((unit) => unit.title), ['Grade 3 Math', 'Math Literature']); + assert.equal(filterUnits(units, 'All').length, 3); +}); + +test('selects only a unit’s teacher-plan PDFs', () => { + assert.deepEqual(teacherGuidesFor(units[0]), [{ role: 'Teacher Guide', id: 'math-guide' }]); + assert.deepEqual(teacherGuidesFor(units[1]), []); +}); diff --git a/projects/ckmath-interactive-pilot/tests/session.test.mjs b/projects/ckmath-interactive-pilot/tests/session.test.mjs new file mode 100644 index 0000000..9b7e755 --- /dev/null +++ b/projects/ckmath-interactive-pilot/tests/session.test.mjs @@ -0,0 +1,24 @@ +import test from 'node:test'; +import assert from 'node:assert/strict'; +import { + isCorrectTotal, + isCorrectEquation, + hasReasoningEvidence, +} from '../src/session.mjs'; + +test('accepts the total for seven groups of two', () => { + assert.equal(isCorrectTotal('14'), true); +}); + +test('rejects an incorrect total for seven groups of two', () => { + assert.equal(isCorrectTotal('13'), false); +}); + +test('accepts an equivalent multiplication equation', () => { + assert.equal(isCorrectEquation('2 × 7 = 14'), true); +}); + +test('requires a learner explanation to name groups or repeated addition and the total', () => { + assert.equal(hasReasoningEvidence('There are 7 groups of 2, so there are 14 shoes.'), true); + assert.equal(hasReasoningEvidence('It is 14.'), false); +}); diff --git a/projects/ckmath-interactive-pilot/tests/test_build_grade3_catalog.py b/projects/ckmath-interactive-pilot/tests/test_build_grade3_catalog.py new file mode 100644 index 0000000..f102a5a --- /dev/null +++ b/projects/ckmath-interactive-pilot/tests/test_build_grade3_catalog.py @@ -0,0 +1,40 @@ +import importlib.util +import json +import tempfile +import unittest +import zipfile +from pathlib import Path + +MODULE_PATH = Path(__file__).parents[1] / 'scripts' / 'build_grade3_catalog.py' +spec = importlib.util.spec_from_file_location('catalog_builder', MODULE_PATH) +builder = importlib.util.module_from_spec(spec) +spec.loader.exec_module(builder) + + +class GradeThreeCatalogTest(unittest.TestCase): + def test_build_catalog_keeps_grade_three_archives_and_labels_pdfs(self): + with tempfile.TemporaryDirectory() as temp_dir: + root = Path(temp_dir) + archive = root / 'CKMath_G3U1.zip' + with zipfile.ZipFile(archive, 'w') as zf: + zf.writestr('unit/CKMath_G3U1_TG.pdf', b'not-a-real-pdf') + zf.writestr('unit/CKMath_G3U1_SR.pdf', b'not-a-real-pdf') + zf.writestr('__MACOSX/unit/._ignored.pdf', b'ignored') + manifest = root / 'download-manifest.json' + manifest.write_text(json.dumps([ + {'title': 'Grade 3 CKMath: Unit 1', 'filename': archive.name, 'source': 'https://example.test/g3.zip', 'type': 'zip'}, + {'title': 'Grade 2 CKMath: Unit 1', 'filename': 'CKMath_G2U1.zip', 'source': 'https://example.test/g2.zip', 'type': 'zip'}, + ])) + + catalog = builder.build_catalog(manifest, root) + + self.assertEqual(catalog['unit_count'], 1) + unit = catalog['units'][0] + self.assertEqual(unit['subject'], 'Math') + self.assertEqual([material['role'] for material in unit['materials']], ['Student Reader', 'Teacher Guide']) + self.assertEqual(unit['teacher_guide_count'], 1) + self.assertEqual(unit['student_material_count'], 1) + + +if __name__ == '__main__': + unittest.main() diff --git a/projects/ckmath-interactive-pilot/tests/test_server_catalog.py b/projects/ckmath-interactive-pilot/tests/test_server_catalog.py new file mode 100644 index 0000000..6ff18fe --- /dev/null +++ b/projects/ckmath-interactive-pilot/tests/test_server_catalog.py @@ -0,0 +1,31 @@ +import importlib.util +import unittest +from pathlib import Path + +MODULE_PATH = Path(__file__).parents[1] / 'src' / 'server_catalog.py' +spec = importlib.util.spec_from_file_location('server_catalog', MODULE_PATH) +server_catalog = importlib.util.module_from_spec(spec) +spec.loader.exec_module(server_catalog) + + +class ServerCatalogTest(unittest.TestCase): + def setUp(self): + self.catalog = { + 'units': [{ + 'filename': 'CKMath_G3U1.zip', + 'materials': [{'id': 'guide-1', 'internal_path': 'unit/guide.pdf', 'filename': 'guide.pdf'}], + }] + } + + def test_known_material_id_resolves_to_its_declared_zip_member(self): + index = server_catalog.material_index(self.catalog) + self.assertEqual(server_catalog.lookup_material(index, 'guide-1'), ('CKMath_G3U1.zip', 'unit/guide.pdf')) + + def test_unknown_or_path_like_id_is_not_resolved(self): + index = server_catalog.material_index(self.catalog) + self.assertIsNone(server_catalog.lookup_material(index, '../../etc/passwd')) + self.assertIsNone(server_catalog.lookup_material(index, 'not-in-the-catalog')) + + +if __name__ == '__main__': + unittest.main() diff --git a/projects/colanode-hermes-bridge/.env.example b/projects/colanode-hermes-bridge/.env.example new file mode 100644 index 0000000..8fa1e80 --- /dev/null +++ b/projects/colanode-hermes-bridge/.env.example @@ -0,0 +1,10 @@ +COLANODE_BASE_URL=https://colanode.reynafamily.com/client +COLANODE_SOCKET_BASE_URL=wss://colanode.reynafamily.com/client +COLANODE_WORKSPACE_NAME=FamReynaWorkspace +COLANODE_TOKEN= +COLANODE_EMAIL= +COLANODE_PASSWORD= +STATE_FILE= +HERMES_BIN=hermes +HERMES_TIMEOUT_MS=60000 +HERMES_MAX_OUTPUT_BYTES=12000 diff --git a/projects/colanode-hermes-bridge/.gitignore b/projects/colanode-hermes-bridge/.gitignore new file mode 100644 index 0000000..746087d --- /dev/null +++ b/projects/colanode-hermes-bridge/.gitignore @@ -0,0 +1,3 @@ +dist/ +node_modules/ +*.log diff --git a/projects/colanode-hermes-bridge/README.md b/projects/colanode-hermes-bridge/README.md new file mode 100644 index 0000000..324ecd2 --- /dev/null +++ b/projects/colanode-hermes-bridge/README.md @@ -0,0 +1,39 @@ +# Colanode Hermes Bridge + +Standalone Node 22 TypeScript service that listens to Colanode synchronizer events and replies through Hermes only when a new Colanode `message` node explicitly mentions the bot user. + +## Safety + +- Reads secrets from `$HOME/.hermes/secrets/colanode-family-bot.env`. +- Requires that secret file to be mode `0600`. +- Uses Colanode client HTTP/WebSocket APIs only. +- Does not write to Postgres, Hermes config, Caddy, Colanode deployment files, or Colanode data outside the documented mutation API. +- Tests never send Colanode replies. + +## Secret File + +Expected variables: + +```sh +COLANODE_TOKEN=... +# Optional fallback only if a stored token is unavailable: +COLANODE_EMAIL=bot@example.com +COLANODE_PASSWORD=... +``` + +Optional overrides are shown in `.env.example`. + +## Commands + +```sh +npm install +npm run build +npm test +``` + +Run foreground service after build: + +```sh +npm start +``` + diff --git a/projects/colanode-hermes-bridge/package-lock.json b/projects/colanode-hermes-bridge/package-lock.json new file mode 100644 index 0000000..c26bdf6 --- /dev/null +++ b/projects/colanode-hermes-bridge/package-lock.json @@ -0,0 +1,141 @@ +{ + "name": "colanode-hermes-bridge", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "colanode-hermes-bridge", + "version": "0.1.0", + "dependencies": { + "js-base64": "^3.7.7", + "ws": "^8.18.0", + "yjs": "^13.6.21" + }, + "devDependencies": { + "@types/node": "^22.10.2", + "@types/ws": "^8.5.13", + "typescript": "^5.7.2" + }, + "engines": { + "node": ">=22" + } + }, + "node_modules/@types/node": { + "version": "22.20.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.20.1.tgz", + "integrity": "sha512-EANqOCF9QFyra+4pfxUcX9STKJpCLjMbObVzljIJomAWSnuSIEAvyzEU53GaajbXJEgdh0iEcPL+DGvpUd4k1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/isomorphic.js": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/isomorphic.js/-/isomorphic.js-0.2.5.tgz", + "integrity": "sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==", + "license": "MIT", + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" + } + }, + "node_modules/js-base64": { + "version": "3.9.3", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.9.3.tgz", + "integrity": "sha512-uwYQp+VJ38FVvtim6qNbit6e9uT6dwWQ4Y1+H9TxhW5hcHjpHwoxlR0nMpqUmIFOmu4VqMxwdJA88gIVuZJQ/g==", + "license": "BSD-3-Clause" + }, + "node_modules/lib0": { + "version": "0.2.117", + "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.117.tgz", + "integrity": "sha512-DeXj9X5xDCjgKLU/7RR+/HQEVzuuEUiwldwOGsHK/sfAfELGWEyTcf0x+uOvCvK3O2zPmZePXWL85vtia6GyZw==", + "license": "MIT", + "dependencies": { + "isomorphic.js": "^0.2.4" + }, + "bin": { + "0ecdsa-generate-keypair": "bin/0ecdsa-generate-keypair.js", + "0gentesthtml": "bin/gentesthtml.js", + "0serve": "bin/0serve.js" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/ws": { + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz", + "integrity": "sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/yjs": { + "version": "13.6.32", + "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.32.tgz", + "integrity": "sha512-lfiJIIC4Xayt5ItynE407ehlE03pCjeOc4hkR4yxxvvNJ4kuiN25B0g+Qp8XagYz361LLL7DCzR5bvFJ81QKtQ==", + "license": "MIT", + "dependencies": { + "lib0": "^0.2.99" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=8.0.0" + }, + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" + } + } + } +} diff --git a/projects/colanode-hermes-bridge/package.json b/projects/colanode-hermes-bridge/package.json new file mode 100644 index 0000000..9b56d07 --- /dev/null +++ b/projects/colanode-hermes-bridge/package.json @@ -0,0 +1,25 @@ +{ + "name": "colanode-hermes-bridge", + "version": "0.1.0", + "private": true, + "type": "module", + "engines": { + "node": ">=22" + }, + "scripts": { + "build": "tsc -p tsconfig.json", + "test": "npm run build && node --test dist/test/*.test.js", + "start": "node dist/index.js", + "dev": "tsx src/index.ts" + }, + "dependencies": { + "js-base64": "^3.7.7", + "ws": "^8.18.0", + "yjs": "^13.6.21" + }, + "devDependencies": { + "@types/node": "^22.10.2", + "@types/ws": "^8.5.13", + "typescript": "^5.7.2" + } +} diff --git a/projects/colanode-hermes-bridge/src/colanode.ts b/projects/colanode-hermes-bridge/src/colanode.ts new file mode 100644 index 0000000..ac5290d --- /dev/null +++ b/projects/colanode-hermes-bridge/src/colanode.ts @@ -0,0 +1,82 @@ +import { createHash } from 'node:crypto'; +import WebSocket from 'ws'; +import type { AccountSyncOutput, SynchronizerInput, SynchronizerInputMessage, WorkspaceOutput } from './types.js'; + +export class ColanodeClient { + private token: string | undefined; + + constructor( + private readonly httpBaseUrl: string, + private readonly socketBaseUrl: string, + token?: string + ) { + this.token = token; + } + + async authenticate(email?: string, password?: string): Promise { + if (!this.token) { + if (!email || !password) throw new Error('COLANODE_TOKEN is required unless COLANODE_EMAIL and COLANODE_PASSWORD are provided'); + const login = await this.postJson<{ type: string; token?: string }>('v1/auth/email/login', { email, password }, false); + if (login.type !== 'success' || !login.token) throw new Error('Email login did not return a usable token'); + this.token = login.token; + } + const sync = await this.postJson('v1/accounts/sync', {}); + if (sync.token) this.token = sync.token; + return sync; + } + + async createSocket(): Promise { + const output = await this.postJson<{ id: string }>('v1/sockets', {}); + return new WebSocket(`${this.socketBaseUrl}/v1/sockets/${output.id}`, { + headers: this.authHeader() + }); + } + + async createMessage(workspaceId: string, mutation: unknown): Promise { + const output = await this.postJson<{ results: { id: string; status: number }[] }>( + `v1/workspaces/${workspaceId}/mutations`, + { mutations: [mutation] } + ); + const result = output.results[0]; + if (!result || (result.status !== 200 && result.status !== 201)) { + throw new Error(`Colanode mutation failed with status ${result?.status ?? 'missing'}`); + } + } + + sendSynchronizer(socket: WebSocket, userId: string, input: SynchronizerInput, cursor: string): string { + const id = synchronizerId(userId, input); + const message: SynchronizerInputMessage = { type: 'synchronizer.input', id, userId, input, cursor }; + socket.send(JSON.stringify(message)); + return id; + } + + private async postJson(path: string, body: unknown, useAuth = true): Promise { + const headers: Record = { 'content-type': 'application/json' }; + if (useAuth) Object.assign(headers, this.authHeader()); + const response = await fetch(`${this.httpBaseUrl}/${path}`, { + method: 'POST', + headers, + body: JSON.stringify(body) + }); + if (!response.ok) throw new Error(`Colanode ${path} returned HTTP ${response.status}`); + return (await response.json()) as T; + } + + private authHeader(): Record { + if (!this.token) throw new Error('Missing Colanode token'); + return { authorization: `Bearer ${this.token}` }; + } +} + +export function requireWorkspace(sync: AccountSyncOutput, name: string): WorkspaceOutput { + const workspace = sync.workspaces.find((item) => item.name === name); + if (!workspace) throw new Error(`Required workspace membership not found: ${name}`); + console.log(`Colanode account: ${sync.account.name}`); + console.log(`Workspace: ${workspace.name}`); + console.log(`Role: ${workspace.user.role}`); + return workspace; +} + +export function synchronizerId(userId: string, input: SynchronizerInput): string { + return createHash('sha256').update(JSON.stringify({ userId, input })).digest('hex'); +} diff --git a/projects/colanode-hermes-bridge/src/config.ts b/projects/colanode-hermes-bridge/src/config.ts new file mode 100644 index 0000000..894faeb --- /dev/null +++ b/projects/colanode-hermes-bridge/src/config.ts @@ -0,0 +1,65 @@ +import { readFile, stat } from 'node:fs/promises'; +import { homedir } from 'node:os'; +import { join } from 'node:path'; + +export type Config = { + httpBaseUrl: string; + socketBaseUrl: string; + workspaceName: string; + token?: string; + email?: string; + password?: string; + stateFile: string; + hermesBin: string; + hermesTimeoutMs: number; + hermesMaxOutputBytes: number; +}; + +const SECRET_PATH = join(homedir(), '.hermes/secrets/colanode-family-bot.env'); + +export async function loadConfig(): Promise { + const secrets = await readSecretEnv(SECRET_PATH); + const env = { ...process.env, ...secrets }; + return { + httpBaseUrl: stripTrailingSlash(env.COLANODE_BASE_URL ?? 'https://colanode.reynafamily.com/client'), + socketBaseUrl: stripTrailingSlash(env.COLANODE_SOCKET_BASE_URL ?? 'wss://colanode.reynafamily.com/client'), + workspaceName: env.COLANODE_WORKSPACE_NAME ?? 'FamReynaWorkspace', + token: emptyToUndefined(env.COLANODE_TOKEN ?? env.COLANODE_BOT_TOKEN), + email: emptyToUndefined(env.COLANODE_EMAIL ?? env.COLANODE_BOT_EMAIL), + password: emptyToUndefined(env.COLANODE_PASSWORD ?? env.COLANODE_BOT_PASSWORD), + stateFile: env.STATE_FILE ?? join(homedir(), '.hermes/colanode-family-bot-state.json'), + hermesBin: env.HERMES_BIN ?? 'hermes', + hermesTimeoutMs: Number(env.HERMES_TIMEOUT_MS ?? 60_000), + hermesMaxOutputBytes: Number(env.HERMES_MAX_OUTPUT_BYTES ?? 12_000) + }; +} + +async function readSecretEnv(path: string): Promise> { + const info = await stat(path); + if ((info.mode & 0o777) !== 0o600) { + throw new Error(`Secret file must be mode 0600: ${path}`); + } + const text = await readFile(path, 'utf8'); + const result: Record = {}; + for (const rawLine of text.split(/\r?\n/)) { + const line = rawLine.trim(); + if (!line || line.startsWith('#')) continue; + const eq = line.indexOf('='); + if (eq <= 0) continue; + const key = line.slice(0, eq).trim(); + let value = line.slice(eq + 1).trim(); + if ((value.startsWith('"') && value.endsWith('"')) || (value.startsWith("'") && value.endsWith("'"))) { + value = value.slice(1, -1); + } + result[key] = value; + } + return result; +} + +function stripTrailingSlash(value: string): string { + return value.replace(/\/+$/, ''); +} + +function emptyToUndefined(value: string | undefined): string | undefined { + return value && value.length > 0 ? value : undefined; +} diff --git a/projects/colanode-hermes-bridge/src/crdt.ts b/projects/colanode-hermes-bridge/src/crdt.ts new file mode 100644 index 0000000..547a3b6 --- /dev/null +++ b/projects/colanode-hermes-bridge/src/crdt.ts @@ -0,0 +1,52 @@ +import { fromUint8Array, toUint8Array } from 'js-base64'; +import * as Y from 'yjs'; + +export function decodeAttributes(encoded: string): T { + const doc = new Y.Doc(); + Y.applyUpdate(doc, toUint8Array(encoded)); + return doc.getMap('object').toJSON() as T; +} + +export function encodeAttributes(attributes: Record): string { + const doc = new Y.Doc(); + const updates: Uint8Array[] = []; + doc.on('update', (update) => updates.push(update)); + doc.transact(() => applyObject(doc.getMap('object'), attributes)); + if (updates.length !== 1) throw new Error('Expected one Yjs update'); + return fromUint8Array(Y.encodeStateAsUpdate(doc)); +} + +function applyObject(map: Y.Map, object: Record): void { + for (const [key, value] of Object.entries(object)) { + if (value === null || value === undefined) continue; + if (Array.isArray(value)) { + const arr = new Y.Array(); + arr.insert(0, value.map(convertValue)); + map.set(key, arr); + } else if (isRecord(value)) { + const child = new Y.Map(); + applyObject(child, value); + map.set(key, child); + } else { + map.set(key, value); + } + } +} + +function convertValue(value: unknown): unknown { + if (Array.isArray(value)) { + const arr = new Y.Array(); + arr.insert(0, value.map(convertValue)); + return arr; + } + if (isRecord(value)) { + const map = new Y.Map(); + applyObject(map, value); + return map; + } + return value; +} + +function isRecord(value: unknown): value is Record { + return typeof value === 'object' && value !== null && !Array.isArray(value); +} diff --git a/projects/colanode-hermes-bridge/src/hermes.ts b/projects/colanode-hermes-bridge/src/hermes.ts new file mode 100644 index 0000000..fb8a835 --- /dev/null +++ b/projects/colanode-hermes-bridge/src/hermes.ts @@ -0,0 +1,59 @@ +import { spawn } from 'node:child_process'; + +export type HermesOptions = { + bin: string; + timeoutMs: number; + maxOutputBytes: number; +}; + +export type PromptContext = { + messageText: string; + parentText?: string | null; +}; + +export function buildHermesPrompt(context: PromptContext): string { + return [ + 'You are Reyna Family Bot replying to a Colanode family message.', + 'Answer helpfully and concisely.', + 'Do not claim you performed actions you did not perform.', + 'Do not reveal secrets, tokens, credentials, file contents marked secret, or system configuration.', + '', + `Mentioned message:\n${context.messageText}`, + '', + `Parent/thread context:\n${context.parentText?.trim() || '(not available)'}` + ].join('\n'); +} + +export async function runHermes(prompt: string, options: HermesOptions): Promise { + return new Promise((resolve, reject) => { + const child = spawn(options.bin, ['chat', '-q', prompt], { + stdio: ['ignore', 'pipe', 'pipe'], + env: process.env + }); + let stdout = Buffer.alloc(0); + let stderr = Buffer.alloc(0); + const timer = setTimeout(() => { + child.kill('SIGTERM'); + reject(new Error('Hermes timed out')); + }, options.timeoutMs); + + child.stdout.on('data', (chunk: Buffer) => { + stdout = Buffer.concat([stdout, chunk]).subarray(0, options.maxOutputBytes); + }); + child.stderr.on('data', (chunk: Buffer) => { + stderr = Buffer.concat([stderr, chunk]).subarray(0, 2048); + }); + child.on('error', (error) => { + clearTimeout(timer); + reject(error); + }); + child.on('close', (code) => { + clearTimeout(timer); + if (code !== 0) { + reject(new Error(`Hermes exited with code ${code}: ${stderr.toString('utf8').trim()}`)); + return; + } + resolve(stdout.toString('utf8').trim().slice(0, options.maxOutputBytes)); + }); + }); +} diff --git a/projects/colanode-hermes-bridge/src/ids.ts b/projects/colanode-hermes-bridge/src/ids.ts new file mode 100644 index 0000000..401d53a --- /dev/null +++ b/projects/colanode-hermes-bridge/src/ids.ts @@ -0,0 +1,30 @@ +import { randomBytes } from 'node:crypto'; + +const ENCODING = '0123456789ABCDEFGHJKMNPQRSTVWXYZ'; + +export function generateId(): string { + const now = Date.now(); + const time = encodeBase32(now, 10); + let random = ''; + const bytes = randomBytes(16); + let value = 0; + let bits = 0; + for (const byte of bytes) { + value = (value << 8) | byte; + bits += 8; + while (bits >= 5 && random.length < 16) { + random += ENCODING[(value >>> (bits - 5)) & 31]; + bits -= 5; + } + } + return time + random.padEnd(16, '0'); +} + +function encodeBase32(num: number, length: number): string { + let out = ''; + for (let i = length - 1; i >= 0; i--) { + out = ENCODING[num % 32] + out; + num = Math.floor(num / 32); + } + return out; +} diff --git a/projects/colanode-hermes-bridge/src/index.ts b/projects/colanode-hermes-bridge/src/index.ts new file mode 100644 index 0000000..4b509f4 --- /dev/null +++ b/projects/colanode-hermes-bridge/src/index.ts @@ -0,0 +1,123 @@ +import { setTimeout as delay } from 'node:timers/promises'; +import { loadConfig } from './config.js'; +import { ColanodeClient, requireWorkspace, synchronizerId } from './colanode.js'; +import { StateStore } from './state.js'; +import { processNodeUpdate, type NodeCache } from './processor.js'; +import type { SyncCollaborationData, SyncNodeUpdateData, SynchronizerInput } from './types.js'; + +const config = await loadConfig(); +const state = new StateStore(config.stateFile); +await state.load(); + +let stopping = false; +process.on('SIGTERM', () => { + stopping = true; +}); +process.on('SIGINT', () => { + stopping = true; +}); + +const colanode = new ColanodeClient(config.httpBaseUrl, config.socketBaseUrl, config.token); +const sync = await colanode.authenticate(config.email, config.password); +const workspace = requireWorkspace(sync, config.workspaceName); +const botUserId = workspace.user.id; +const activeRoots = new Set(); +const cache: NodeCache = new Map(); + +let backoff = 1000; +while (!stopping) { + try { + await runSocketLoop(); + backoff = 1000; + } catch (error) { + if (!stopping) { + console.error(`Bridge loop error: ${(error as Error).message}`); + await delay(backoff); + backoff = Math.min(backoff * 2, 30_000); + } + } +} + +async function runSocketLoop(): Promise { + const socket = await colanode.createSocket(); + const ids = new Map(); + const subscribe = (input: SynchronizerInput) => { + const key = cursorKey(input); + const id = colanode.sendSynchronizer(socket, botUserId, input, state.getCursor(key)); + ids.set(id, { key, input }); + }; + + await new Promise((resolve, reject) => { + const ping = setInterval(() => { + if (socket.readyState !== socket.OPEN) return; + for (const item of ids.values()) colanode.sendSynchronizer(socket, botUserId, item.input, state.getCursor(item.key)); + }, 60_000); + + socket.on('open', () => { + subscribe({ type: 'users' }); + subscribe({ type: 'collaborations' }); + for (const rootId of activeRoots) subscribe({ type: 'node.updates', rootId }); + }); + socket.on('message', (raw) => { + void handleMessage(raw.toString(), ids, subscribe).catch((error) => console.error(`Event handling error: ${error.message}`)); + }); + socket.on('close', () => { + clearInterval(ping); + resolve(); + }); + socket.on('error', (error) => { + clearInterval(ping); + reject(error); + }); + const stopTimer = setInterval(() => { + if (stopping) { + clearInterval(stopTimer); + socket.close(); + } + }, 500); + }); +} + +async function handleMessage( + raw: string, + ids: Map, + subscribe: (input: SynchronizerInput) => void +): Promise { + let message: { type?: string; id?: string; items?: { cursor: string; data: unknown }[] }; + try { + message = JSON.parse(raw) as typeof message; + } catch { + return; + } + if (message.type !== 'synchronizer.output' || !message.id || !Array.isArray(message.items)) return; + const registration = ids.get(message.id); + if (!registration) return; + let lastCursor: string | null = null; + for (const item of message.items) { + if (registration.input.type === 'collaborations') { + const data = item.data as SyncCollaborationData; + if (!data.deletedAt && !activeRoots.has(data.nodeId)) { + activeRoots.add(data.nodeId); + subscribe({ type: 'node.updates', rootId: data.nodeId }); + } + } else if (registration.input.type === 'node.updates') { + await processNodeUpdate({ + update: item.data as SyncNodeUpdateData, + botUserId, + workspaceId: workspace.id, + cache, + state, + hermes: { bin: config.hermesBin, timeoutMs: config.hermesTimeoutMs, maxOutputBytes: config.hermesMaxOutputBytes }, + colanode + }); + } + lastCursor = item.cursor; + } + if (lastCursor) await state.setCursor(registration.key, lastCursor); +} + +function cursorKey(input: SynchronizerInput): string { + return input.type === 'node.updates' ? `${input.rootId}.node.updates` : input.type; +} + +void synchronizerId; diff --git a/projects/colanode-hermes-bridge/src/mutations.ts b/projects/colanode-hermes-bridge/src/mutations.ts new file mode 100644 index 0000000..5c9c95d --- /dev/null +++ b/projects/colanode-hermes-bridge/src/mutations.ts @@ -0,0 +1,24 @@ +import { encodeAttributes } from './crdt.js'; +import { generateId } from './ids.js'; +import { makePlainMessageAttributes } from './text.js'; + +export function createReplyMutation(parentId: string, text: string, now = new Date()): { mutation: unknown; nodeId: string } { + const nodeId = generateId(); + const updateId = generateId(); + const createdAt = now.toISOString(); + const attributes = makePlainMessageAttributes(nodeId, parentId, text); + return { + nodeId, + mutation: { + id: generateId(), + type: 'node.create', + createdAt, + data: { + nodeId, + updateId, + createdAt, + data: encodeAttributes(attributes as unknown as Record) + } + } + }; +} diff --git a/projects/colanode-hermes-bridge/src/processor.ts b/projects/colanode-hermes-bridge/src/processor.ts new file mode 100644 index 0000000..5c3a627 --- /dev/null +++ b/projects/colanode-hermes-bridge/src/processor.ts @@ -0,0 +1,41 @@ +import type { MessageAttributes, SyncNodeUpdateData } from './types.js'; +import { decodeAttributes } from './crdt.js'; +import { extractMentionTargets, plainTextFromMessage } from './text.js'; +import { buildHermesPrompt, runHermes, type HermesOptions } from './hermes.js'; +import { createReplyMutation } from './mutations.js'; +import type { ColanodeClient } from './colanode.js'; +import type { StateStore } from './state.js'; + +export type NodeCache = Map; +export type HermesRunner = (prompt: string, options: HermesOptions) => Promise; + +export async function processNodeUpdate(input: { + update: SyncNodeUpdateData; + botUserId: string; + workspaceId: string; + cache: NodeCache; + state: StateStore; + hermes: HermesOptions; + colanode: ColanodeClient; + runHermesFn?: HermesRunner; +}): Promise { + const attrs = decodeAttributes>(input.update.data); + if (attrs.type !== 'message' || !attrs.parentId) return; + const messageAttrs = attrs as MessageAttributes; + input.cache.set(input.update.nodeId, { id: input.update.nodeId, attrs: messageAttrs, createdBy: input.update.createdBy }); + + if (input.update.createdBy === input.botUserId) return; + if (input.state.hasProcessed(input.update.nodeId)) return; + if (!extractMentionTargets(input.update.nodeId, messageAttrs.content).includes(input.botUserId)) return; + + const messageText = plainTextFromMessage(input.update.nodeId, messageAttrs); + const parentText = input.cache.get(messageAttrs.parentId)?.attrs + ? plainTextFromMessage(messageAttrs.parentId, input.cache.get(messageAttrs.parentId)!.attrs) + : null; + const prompt = buildHermesPrompt({ messageText, parentText }); + const reply = await (input.runHermesFn ?? runHermes)(prompt, input.hermes); + if (!reply) throw new Error('Hermes returned an empty reply'); + const { mutation, nodeId } = createReplyMutation(messageAttrs.parentId, reply); + await input.colanode.createMessage(input.workspaceId, mutation); + await input.state.markProcessed(input.update.nodeId, nodeId); +} diff --git a/projects/colanode-hermes-bridge/src/state.ts b/projects/colanode-hermes-bridge/src/state.ts new file mode 100644 index 0000000..c52af4d --- /dev/null +++ b/projects/colanode-hermes-bridge/src/state.ts @@ -0,0 +1,53 @@ +import { mkdir, open, readFile, writeFile } from 'node:fs/promises'; +import { dirname } from 'node:path'; + +export type BridgeState = { + cursors: Record; + processedMessages: Record; +}; + +const EMPTY_STATE: BridgeState = { cursors: {}, processedMessages: {} }; + +export class StateStore { + private state: BridgeState = structuredClone(EMPTY_STATE); + constructor(private readonly path: string) {} + + async load(): Promise { + await mkdir(dirname(this.path), { recursive: true, mode: 0o700 }); + try { + const text = await readFile(this.path, 'utf8'); + this.state = { ...structuredClone(EMPTY_STATE), ...JSON.parse(text) }; + } catch (error) { + if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error; + await this.save(); + } + } + + getCursor(key: string): string { + return this.state.cursors[key] ?? '0'; + } + + async setCursor(key: string, cursor: string): Promise { + this.state.cursors[key] = cursor; + await this.save(); + } + + hasProcessed(messageId: string): boolean { + return Boolean(this.state.processedMessages[messageId]); + } + + async markProcessed(messageId: string, repliedNodeId: string): Promise { + this.state.processedMessages[messageId] = { repliedNodeId, at: new Date().toISOString() }; + await this.save(); + } + + private async save(): Promise { + const handle = await open(this.path, 'w', 0o600); + try { + await handle.writeFile(`${JSON.stringify(this.state, null, 2)}\n`, 'utf8'); + await handle.chmod(0o600); + } finally { + await handle.close(); + } + } +} diff --git a/projects/colanode-hermes-bridge/src/text.ts b/projects/colanode-hermes-bridge/src/text.ts new file mode 100644 index 0000000..4e0b8f4 --- /dev/null +++ b/projects/colanode-hermes-bridge/src/text.ts @@ -0,0 +1,64 @@ +import type { Block, MessageAttributes } from './types.js'; +import { generateId } from './ids.js'; + +export function extractBlockText(nodeId: string, blocks: Record | null | undefined): string | null { + if (!blocks) return null; + const text = collectText(nodeId, blocks).trim(); + return text.length > 0 ? text : null; +} + +export function extractMentionTargets(nodeId: string, blocks: Record | null | undefined): string[] { + if (!blocks) return []; + return collectMentions(nodeId, blocks); +} + +export function plainTextFromMessage(id: string, attrs: MessageAttributes): string { + return extractBlockText(id, attrs.content) ?? ''; +} + +export function makePlainMessageAttributes(nodeId: string, parentId: string, text: string): MessageAttributes { + const blockId = generateId(); + return { + type: 'message', + subtype: 'standard', + name: 'Reyna Family Bot', + parentId, + content: { + [blockId]: { + id: blockId, + type: 'paragraph', + parentId: nodeId, + index: 'a0', + content: [{ type: 'text', text }] + } + } + }; +} + +function collectText(blockId: string, blocks: Record): string { + const texts: string[] = []; + const block = blocks[blockId]; + if (block?.content) { + texts.push(block.content.map((leaf) => leaf.text ?? '').join('')); + } + for (const child of children(blockId, blocks)) texts.push(collectText(child.id, blocks)); + return texts.join('\n'); +} + +function collectMentions(blockId: string, blocks: Record): string[] { + const mentions: string[] = []; + const block = blocks[blockId]; + if (block?.content) { + for (const leaf of block.content) { + if (leaf.type === 'mention' && typeof leaf.attrs?.target === 'string') mentions.push(leaf.attrs.target); + } + } + for (const child of children(blockId, blocks)) mentions.push(...collectMentions(child.id, blocks)); + return mentions; +} + +function children(blockId: string, blocks: Record): Block[] { + return Object.values(blocks) + .filter((child) => child.parentId === blockId) + .sort((a, b) => a.index.localeCompare(b.index)); +} diff --git a/projects/colanode-hermes-bridge/src/types.ts b/projects/colanode-hermes-bridge/src/types.ts new file mode 100644 index 0000000..9a62a2e --- /dev/null +++ b/projects/colanode-hermes-bridge/src/types.ts @@ -0,0 +1,81 @@ +export type WorkspaceRole = 'owner' | 'admin' | 'collaborator' | 'guest' | 'none'; + +export type WorkspaceOutput = { + id: string; + name: string; + user: { id: string; accountId: string; role: WorkspaceRole }; + status: number; +}; + +export type AccountSyncOutput = { + account: { id: string; email: string; name: string; avatar?: string | null }; + workspaces: WorkspaceOutput[]; + token?: string; +}; + +export type SynchronizerInput = + | { type: 'users' } + | { type: 'collaborations' } + | { type: 'node.updates'; rootId: string }; + +export type SynchronizerInputMessage = { + type: 'synchronizer.input'; + id: string; + userId: string; + input: SynchronizerInput; + cursor: string; +}; + +export type SyncItem = { cursor: string; data: T }; + +export type SynchronizerOutputMessage = { + type: 'synchronizer.output'; + userId: string; + id: string; + items: SyncItem[]; +}; + +export type SyncCollaborationData = { + collaboratorId: string; + nodeId: string; + workspaceId: string; + role: string; + deletedAt?: string | null; +}; + +export type SyncNodeUpdateData = { + id: string; + nodeId: string; + rootId: string; + workspaceId: string; + revision: string; + data: string; + createdAt: string; + createdBy: string; +}; + +export type BlockLeaf = { + type: string; + text?: string | null; + attrs?: Record | null; + marks?: unknown[] | null; +}; + +export type Block = { + id: string; + type: string; + parentId: string; + content?: BlockLeaf[] | null; + attrs?: Record | null; + index: string; +}; + +export type MessageAttributes = { + type: 'message'; + subtype: 'standard' | 'question' | 'answer'; + name?: string; + parentId: string; + referenceId?: string | null; + content?: Record | null; + selectedContextNodeIds?: string[] | null; +}; diff --git a/projects/colanode-hermes-bridge/test/bridge.test.ts b/projects/colanode-hermes-bridge/test/bridge.test.ts new file mode 100644 index 0000000..2511169 --- /dev/null +++ b/projects/colanode-hermes-bridge/test/bridge.test.ts @@ -0,0 +1,120 @@ +import { mkdtemp, rm } from 'node:fs/promises'; +import { tmpdir } from 'node:os'; +import { join } from 'node:path'; +import assert from 'node:assert/strict'; +import test from 'node:test'; +import { encodeAttributes, decodeAttributes } from '../src/crdt.js'; +import { buildHermesPrompt } from '../src/hermes.js'; +import { createReplyMutation } from '../src/mutations.js'; +import { processNodeUpdate, type NodeCache } from '../src/processor.js'; +import { StateStore } from '../src/state.js'; +import type { BlockLeaf, MessageAttributes, SyncNodeUpdateData } from '../src/types.js'; + +const botUserId = 'bot-user'; + +test('mention extraction gates replies and ignores non-mentioned messages', async () => { + const env = await setupProcessor(); + await processNodeUpdate({ + ...env, + update: makeUpdate('msg1', 'human', messageAttrs('msg1', 'parent', [{ type: 'text', text: 'hello' }])) + }); + assert.equal(env.created.length, 0); +}); + +test('mentioned messages invoke Hermes and dedupe by source message id', async () => { + const env = await setupProcessor(); + const update = makeUpdate('msg2', 'human', messageAttrs('msg2', 'parent', [ + { type: 'mention', text: '@bot', attrs: { id: 'm1', target: botUserId } }, + { type: 'text', text: ' please summarize this' } + ])); + await processNodeUpdate({ ...env, update }); + await processNodeUpdate({ ...env, update }); + assert.equal(env.prompts.length, 1); + assert.equal(env.created.length, 1); +}); + +test('messages created by the bot are ignored even when they mention the bot', async () => { + const env = await setupProcessor(); + await processNodeUpdate({ + ...env, + update: makeUpdate('msg3', botUserId, messageAttrs('msg3', 'parent', [ + { type: 'mention', attrs: { id: 'm1', target: botUserId } } + ])) + }); + assert.equal(env.created.length, 0); +}); + +test('prompt includes safety instruction, mentioned message, and parent context', () => { + const prompt = buildHermesPrompt({ messageText: 'Can you help?', parentText: 'Family logistics thread' }); + assert.match(prompt, /Colanode family message/); + assert.match(prompt, /Do not reveal secrets/); + assert.match(prompt, /Can you help\?/); + assert.match(prompt, /Family logistics thread/); +}); + +test('reply mutation encodes a decodable Colanode message attributes document', () => { + const { mutation, nodeId } = createReplyMutation('parent-id', 'A helpful reply.', new Date('2026-01-01T00:00:00.000Z')); + const data = mutationData(mutation).data; + const attrs = decodeAttributes(data); + assert.equal(attrs.type, 'message'); + assert.equal(attrs.subtype, 'standard'); + assert.equal(attrs.name, 'Reyna Family Bot'); + assert.equal(attrs.parentId, 'parent-id'); + assert.equal(Object.values(attrs.content ?? {})[0]?.content?.[0]?.text, 'A helpful reply.'); +}); + +async function setupProcessor() { + const dir = await mkdtemp(join(tmpdir(), 'bridge-test-')); + const state = new StateStore(join(dir, 'state.json')); + await state.load(); + test.after(async () => rm(dir, { recursive: true, force: true })); + const prompts: string[] = []; + const created: unknown[] = []; + const cache: NodeCache = new Map([ + ['parent', { id: 'parent', createdBy: 'human', attrs: messageAttrs('parent', 'thread', [{ type: 'text', text: 'Parent context' }]) }] + ]); + return { + botUserId, + workspaceId: 'workspace', + cache, + state, + hermes: { bin: 'hermes', timeoutMs: 1000, maxOutputBytes: 1000 }, + colanode: { createMessage: async (_workspaceId: string, mutation: unknown) => { created.push(mutation); } } as never, + runHermesFn: async (prompt: string) => { + prompts.push(prompt); + return 'Hermes reply'; + }, + prompts, + created + }; +} + +function makeUpdate(nodeId: string, createdBy: string, attrs: MessageAttributes): SyncNodeUpdateData { + return { + id: `${nodeId}-update`, + nodeId, + rootId: 'root', + workspaceId: 'workspace', + revision: '1', + data: encodeAttributes(attrs as unknown as Record), + createdAt: new Date().toISOString(), + createdBy + }; +} + +function messageAttrs(id: string, parentId: string, content: BlockLeaf[]): MessageAttributes { + const blockId = `${id}-block`; + return { + type: 'message', + subtype: 'standard', + parentId, + content: { + [blockId]: { id: blockId, type: 'paragraph', parentId: id, index: 'a0', content } + } + }; +} + +function mutationData(mutation: unknown): { data: string } { + const outer = mutation as { data: { data: string } }; + return outer.data; +} diff --git a/projects/colanode-hermes-bridge/tsconfig.json b/projects/colanode-hermes-bridge/tsconfig.json new file mode 100644 index 0000000..eb69557 --- /dev/null +++ b/projects/colanode-hermes-bridge/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext", + "lib": ["ES2022"], + "types": ["node"], + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "outDir": "dist", + "rootDir": "." + }, + "include": ["src/**/*.ts", "test/**/*.ts"] +} diff --git a/projects/covenant_parenting_bryan_hickman.md b/projects/covenant_parenting_bryan_hickman.md new file mode 100644 index 0000000..4080eb6 --- /dev/null +++ b/projects/covenant_parenting_bryan_hickman.md @@ -0,0 +1,767 @@ +--- +title: "The Pattern of Covenant Parenting — Bryan Hickman Teaching" +status: active +source: "NotebookLM book-style synthesis from audio recordings of Bryan Hickman's teaching sessions" +tags: + - parenting + - covenant-parenting + - church-teaching + - family + - discipleship + - Bryan-Hickman + - book-draft +--- + +# The Pattern of Covenant Parenting + +> **Source note:** This document preserves the supplied NotebookLM chapter synthesis from audio recordings of teaching given by Bryan Hickman. The chapter is stored verbosely for later development into parent-focused book content. Scripture quotations, interpretations, terminology, and practical recommendations below are retained as source material and have not been independently fact-checked or editorially revised. + +## Chapter 0: Introduction — The Pattern of Covenant Parenting + +The true purpose of child training is not to construct a superficial set of behavioral modifications or to simply "tweak" outward conduct [1, 113]. It is to lay a foundational, structural establishment in the heart of a child [1]. The ultimate goal of our instruction is to raise children who can transition cleanly into their own spiritual inheritance [1], as we are exhorted in 1 Timothy 1:5: + +> "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." [1] + +Our target is to have children who seamlessly step into a personal relationship with their heavenly Father, and in that secure place, find their true Kingdom identity and walk out their designated Kingdom purpose in this generation [2, 48]. + +To build this foundation, we must first look at our own hearts [7, 195]. Child training is, in its deepest sense, a profound process of parent training [7, 169]. Parents are called to model the Father to their children [4]. Jesus did not come to earth merely to perform miracles, but to model what a son can do when entirely dependent upon his Father [3], living by the simple standard: "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." [3] In the eyes of a young child, the parent is effectively "God"—the ultimate representation of authority, love, and security [4]. This is a sobering reality [4]. + +The single most powerful force that will affect our children is for us to become obedient sons and daughters of God [5]. As we allow the Lord to heal our own brokenness, we grow in our reverence and fear of the Lord, gaining a strong confidence that creates a literal shield of security and a place of refuge for our households [7], as promised in Proverbs 14:26: + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [8] + +This model of love requires a stable, unified household [24, 182]. A peaceful home is anchored in the absolute unity between husband and wife [18]. By maintaining a completely united front, parents protect their children from division and manipulation [18, 188]. Differing views on discipline must be discussed strictly in private, behind closed doors, so that the child always sees their parents standing as one [21, 186]. This horizontal peace is nurtured through intentional daily investments in the marriage relationship—such as the specific, daily appreciation of the thirty-day breakfast covenant [26, 204]—and a firm commitment to honor the scriptural command in Ephesians 4:26: + +> "...do not let the sun go down on your anger." [28] + +Within this safe ecosystem, correction becomes a beautiful act of redemption [14, 15]. Biblical training requires us to "narrow up" and straighten our children's paths [10], protecting them from the broad roads of worldly conformity [11], as warned in Matthew 7:13: + +> "Enter through the narrow gate, for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it." [11] + +When disobedience occurs, we reject anger-driven reactions, emotional isolation, or lingering punishments [15, 16, 70]. Instead, we step into a private "correction room" of calm and ultimate reassurance [17, 70]. Using a gentle, limber switch produces a harmless, quick sting that instantly captures attention and pays the spiritual debt of disobedience [14, 15]. Guilt and shame are completely removed, and the child is immediately embraced by hands that are reserved exclusively for holding, hugging, and expressing love [14, 15]. + +This heart-level training is woven naturally into the practical affairs of daily life [34, 169]. It begins in infancy with simple, physical boundaries—such as blanket training [30]—that teach a child to listen to and obey the parent's voice [31]. We guard our children's minds from media systems designed to "tell their vision" [32]. We recognize the high calling of a mother's nurturing presence at home [33] and a father's mandate to "own his time" and be fully present [33]. We actively integrate our children into our daily chores, showing them that work is a natural, joyful expression of family life rather than a burden [34, 169]. + +Ultimately, we parent with a multi-generational vision [5]. We build and train our children as if the work will span multiple generations, serving God's purposes just as King David did [6]. We must be vulnerable enough to show our children that we are not perfect, teaching them to "cut the penny in half" [36]—setting the healthy expectation that while the Father is working to remove brokenness from our lives, they too will have their own portion to deal with under His sovereign hand [36]. + +As we maintain strict covenant priorities of God first, family second, and ministry third [37, 38], and rely on the wisdom of the local body [39], we achieve generational advancement [35]. The spiritual victories we win become the floor upon which our children stand, letting them stand on our shoulders and leap forward into their own divine destiny [35]. + +## Initial themes captured for future book development + +- Child training as heart-level formation rather than external behavior modification. +- The goal of instruction: love, a pure heart, a good conscience, and sincere faith. +- Parents as models of the heavenly Father and as the first representation of authority, love, and security. +- Parent training and healing as prerequisites for healthy child training. +- Reverent fear of the Lord as a source of confidence and refuge for children. +- Marital unity and a peaceful, stable household as the ecosystem for parenting. +- Correction framed as redemption, reassurance, and restoration rather than anger, shame, or emotional isolation. +- Daily household life—boundaries, media, presence, chores, and work—as the setting for discipleship. +- Multi-generational vision: children standing on the spiritual victories of their parents and advancing into their own calling. +- Covenant priorities: God first, family second, ministry third. +- Vulnerability and parental humility concerning the ongoing work of healing and brokenness. + +## Editorial and pastoral review flags for later work + +- Preserve the distinction between the chapter's source claims and later editorial interpretation. +- Verify all Scripture references and quotations against the intended Bible translation before publication. +- Carefully review and contextualize the chapter's physical-discipline recommendations, including the references to a "limber switch," "blanket training," and a "correction room," before sharing this material with parents or adapting it for church use. +- Consider adding age-appropriate, safety-conscious, non-violent alternatives and pastoral guidance in the final parent resource. +- Clarify the meaning and practical method of the "thirty-day breakfast covenant" when the relevant chapter or recording context is available. +- Clarify the phrase "cut the penny in half" and preserve its original illustration/context when later chapters provide it. + +--- + +## Chapter 1: The Foundations of Modeling & Multi-Generational Vision + +> **Source note:** This chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. Scripture quotations, interpretations, terminology, and practical recommendations have not been independently fact-checked or editorially revised. + +### The Ultimate Goal of Training + +The true purpose of child training is not to construct a superficial set of behavioral modifications or to simply "tweak" outward conduct. It is to lay a foundational, structural establishment. Specifically, the ultimate goal is to raise children who can transition cleanly into their own spiritual inheritance. As the scriptures state in 1 Timothy 1:5: + +> "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." + +Our target is to have children who seamlessly step into a personal relationship with their heavenly Father, and in that place find their Kingdom identity and faithfully walk out their Kingdom purpose in this generation. [7] + +The transition from childhood through adolescence is intended by God to be a seamless, direct journey into relationship with the Father [17, 18]. Society has largely convinced itself that teenagers must undergo a painful, mandatory phase of rebellion simply because they do not know what else to do [17]. However, this expectation is a deception that lowers our standards and shapes our actions toward failure [17]. God’s design is for children to move directly from childhood into a vibrant, personal relationship with Him [17, 18]. + +### Jesus as the Ultimate Model + +To understand how to train children, we must first look at Jesus. Jesus did not come to earth merely to perform miracles or display His divinity; rather, He came to model what a son can do when entirely dependent upon his Father [11, 12]. He walked out His earthly life as a man, not as God, to demonstrate that obedience is fully possible for a heart surrendered to the Father [12]. He lived by a simple, profound standard: + +> "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." [12, 23] + +Just as Jesus modeled sonship for us, parents are called to model the Father to their children [12]. In the eyes of a young child, the parent is effectively "God"—the ultimate representation of authority, love, and security in their life [15]. This is a sobering reality [13, 15]. Parents have both the privilege and the solemn responsibility to demonstrate face-to-face what a loving Father and Mother are like until the child reaches an age of spiritual understanding where that devotion is transitioned to the Lord [15]. + +The single most powerful force that will affect your children is for you, the parent, to become an obedient son of God [14]. Because parents are always modeling, every reaction—even after a hard day when we are on edge—sets an example [13]. We cannot expect our children to walk in instant obedience to our voice if we ourselves are not walking in instant obedience to the voice of our heavenly Father [13]. + +### Building for Generations + +To parent effectively, we must reject short-sightedness and adopt a multi-generational vision [8, 9, 10]. We see the danger of passivity illustrated in the history of the Church. During the "Jesus movement" of the 1970s, a wave of believers dropped out of school and stopped preparing for the future under the premise that "Jesus is coming back" [9]. Because they failed to build for the next generation, the world quickly stepped in and took over every major institution [9]. + +Conversely, if we believe that the Kingdom will be fully established only in our lifetime, we risk failing to prepare our children for the long-term work [9]. While we must always look for the "end suddenly," we must build and train our children as if the work will span multiple generations [9, 10]. We are not going to build it all in our lifetime; our task is to raise up the little ones placed in our hands so that they will be faithful to God's purposes in their own generation [7]. As Acts 13:36 records of King David: + +> "For David, after he had served God's purposes in his own generation, fell asleep and was laid among his fathers and underwent decay." [7] + +### Healing the Parents First + +Because children copy what we model, the child training process is, in reality, a parent training process [15, 128]. If we carry unresolved brokenness, anger, or fear, we will pass those patterns down [15, 46]. Allowing the Lord to heal us requires deep humility and submission, but it is the greatest gift we can offer our children [15]. As we grow in our reverence and fear of the Lord, we gain a strong confidence that creates a literal shield of security and a place of refuge for our households [16]. This is beautifully promised in Proverbs 14:26: + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [16] + +When we allow the Lord to deal with our own deep-seated insecurities, we achieve what is called "generational advancement" [46, 47, 161, 162]. Children who are raised in an atmosphere of genuine spiritual security do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome [46, 47, 162]. Instead, they get to stand on their parents' advancements and leap forward into their own destiny [46, 162]. This establishes the foundation for the lifelong training command found in Proverbs 22:6: + +> "Train up a child in the way that he should go, and even when he grows old, he will not abandon it." [16] + +### Themes captured for future book development + +- The intended goal of training is a child's personal relationship with the heavenly Father, Kingdom identity, and Kingdom purpose—not merely compliant behavior. +- Adolescence is presented as a potential continuation of relationship with God rather than an inevitably rebellious stage. +- Jesus is presented as the ultimate model of dependent sonship and surrendered obedience. +- Parents model constantly; their reactions under pressure are formative just as much as their deliberate instruction. +- Parent healing and obedience are central to breaking the transmission of fear, anger, insecurity, and family brokenness. +- Multi-generational parenting requires building for a future beyond the parents' own lifetime. +- "Generational advancement" describes children standing on the spiritual and relational progress of their parents. +- The chapter connects parental modeling, healing, refuge, and lifelong formation with Proverbs 22:6. + +### Editorial and pastoral review flags + +- Verify the Scripture quotations and references, including the intended Bible translations. +- Preserve the distinction between the teaching's theological claims and later editorial commentary. +- The historical claim concerning the 1970s Jesus movement should be sourced or qualified if included in a published edition. +- The claim that rebellion is not an inevitable feature of adolescence should be presented pastorally and carefully, acknowledging individual development, temperament, disability, trauma, and family context. +- Clarify the phrase "until the child reaches an age of spiritual understanding" and how the teaching defines that transition. + +--- + +## Chapter 2: Redemptive Correction: Straightening the Path with Love + +> **Source note:** This chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. Scripture quotations, interpretations, terminology, and practical recommendations have not been independently fact-checked or editorially revised. The physical-discipline material is retained for source fidelity and is not an endorsement or safety determination. + +### "Narrowing Up" vs. The Demand for "Experiences" + +Scripture defines training a child through the Hebrew lens of "dedicating, disciplining, narrowing up, or choking out" [18]. It means to straighten a child's path, protecting their outlook, behavior, ideals, views, and influences from being overwhelmed by the weeds of the world [18]. This directly contradicts modern humanistic reasoning, which insists children must be given broad "experiences" to discover themselves [19]. This humanistic philosophy is a widening of the way, which the Bible explicitly warns against in Matthew 7:13: + +> "Enter through the narrow gate, for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it." [19] + +Parents are given the responsibility to shape their children's minds and protect them from worldly conformity [18, 21]. As Romans 12:2 charges us: + +> "And do not be conformed to this world, but be transformed by the renewing of your mind, so that you may prove what the will of God is, that which is good and acceptable and perfect." [21] + +The renewal of the child's mind is a task delegated directly to the parents [21, 22]. It requires parents to actively narrow up their child's path, choosing carefully what enters their hearts and minds rather than letting them wander broad roads of secular influence [18, 22]. + +### Debunking the Myth of Adolescent Rebellion + +A cornerstone of modern parenting is the belief that teenagers must naturally go through a painful, dramatic season of rebellion [17]. We are told this is just a normal developmental phase [17]. However, this expectation is a deceptive lie that shapes our thoughts and actions toward failure [17]. + +In God's design, there is no mandatory period of rebellion [17]. The scriptural transition from childhood to maturity is intended to be a seamless progression directly into a personal relationship with the Father [17, 18]. When boundaries are clearly laid and maintained with love, teenagers do not have to wander into rebellion; they can walk straight from parental guidance into divine devotion [17, 18]. + +### The Mechanics of Correction: The Switch and the Loving Hand + +To remove the foolishness that is naturally bound up in a young heart, God has provided specific, loving tools [23, 24]. As Proverbs 22:15 states: + +> "Foolishness is bound up in the heart of a child. The rod of discipline will remove it far from him." [24] + +Scripture is rich with wisdom regarding the diligent application of this rod of reproof: + +- **Proverbs 13:24:** "He who withholds the rod hates his son, but he who loves him disciplines him diligently." [25] +- **Proverbs 19:18:** "Discipline while there's hope, and do not desire his death." [25] +- **Proverbs 29:15:** "The rod of reproof gives wisdom, but a child who gets his own way brings shame to his mother." [25] +- **Proverbs 29:17:** "Correct your son and he will give you comfort. He will also delight your soul." [25, 26] + +While humanism rejects these commands or distorts them into abuse, biblical correction is defined by tenderness and absolute control [26, 28, 29]. In our home, we established a strict physical boundary: our hands were made exclusively for holding, hugging, and expressing love [26, 29, 31]. We never used our hands to strike a child, nor did we use heavy, rigid tools like belts or wooden spoons, which can cause physical harm or anger [26]. + +Instead, the biblical "rod" refers to a tender, limber shoot or reed—such as a small lilac switch (roughly a quarter of an inch or smaller) with shaved bumps [27, 117]. This tool is designed to produce a quick, harmless sting on the bottom or thigh that instantly captures the child's attention without ever causing physical damage [26, 27, 118]. + +Crucially, this physical correction serves a redemptive spiritual purpose: it completely removes guilt and shame [26]. When a child is corrected, the spiritual debt of their disobedience is paid instantly [26, 30]. There is no lingering condemnation, no standing in corners, and no emotional isolation [26, 29, 30]. Once corrected, the child is immediately embraced, loved, and restored to perfect right standing within the home [26, 29, 30]. + +### The Rule of Calmness: Correcting Without Anger + +Scripture issues a vital warning to fathers in Ephesians 6:4: + +> "Fathers, do not provoke your children to anger, but bring them up in the discipline and instruction of the Lord." [22] + +A parent must never, under any circumstance, correct a child while feeling angry, agitated, or on edge [26, 29, 53, 54]. Correcting in anger is not biblical discipline; it is an expression of the parent's lack of self-control [54]. It models anger to the child, which violates our primary calling as models of the Father [54]. + +If you find yourself becoming agitated or losing your emotional composure during a correction, you must stop immediately [29, 54]. It is far better to let an act of disobedience go uncorrected in that moment than to correct your child in anger [54]. The parent must first go before the Lord, find peace, and handle the situation only when they can do so with a calm voice, a peaceful facial expression, and a tender heart [29, 52, 53, 54]. + +### The Correction Room: Restoring Dignity in Private + +To preserve a child's security and dignity, correction must never be a public spectacle [116]. It should not be done in front of guests, siblings, or in public places [34, 116]. + +Instead, correction should take place in a private, designated area—such as a bedroom or bathroom [29, 116]. This private environment—the "correction room"—is a place of calm, reassurance, and ultimate security [29, 116]. By keeping correction private, we honor our children, shield them from public embarrassment, and ensure that the process remains a tender, focused interaction of restoration between parent and child [29, 116]. + +### Themes captured for future book development + +- "Narrowing up" is presented as intentional formation and protection of a child's heart, mind, influences, ideals, and direction. +- The chapter contrasts parental formation with a philosophy of broad, unbounded experience and self-discovery. +- Adolescent rebellion is presented as neither inevitable nor divinely required. +- Correction is framed as a redemptive process intended to remove shame, restore relationship, and return the child to belonging within the household. +- The source teaching emphasizes calmness, self-control, privacy, and immediate reassurance during correction. +- The chapter distinguishes the source's preferred correction tool from striking with hands or using heavy, rigid objects. +- Private correction is connected to the preservation of a child's dignity and security. + +### Editorial, safeguarding, and pastoral review flags + +- Verify all Scripture references, wording, and translation choices before publication. +- The teaching's interpretation of the Hebrew concept translated as "train" and its use of terms such as "narrowing up" or "choking out" should be checked against reputable Hebrew lexicons and the original recording context. +- The claims about adolescent rebellion, humanism, and the history of parenting should be framed as the speaker's theological and cultural argument rather than presented as settled developmental or historical fact. +- The physical-discipline recommendations require careful safeguarding review before any public distribution. Do not present a thin implement, a specific body location, or a claimed "harmless" sting as universally safe; laws, professional guidance, child age, disability, trauma history, and individual circumstances vary. +- For a parent-facing publication, prioritize non-violent, developmentally appropriate correction and include clear guidance for pausing, de-escalating, seeking help, and protecting children from injury or fear. +- The phrase "spiritual debt ... paid instantly" should be examined theologically and pastorally so that children are not taught that physical pain is required to obtain forgiveness, belonging, or restored relationship. +- Clarify what safeguards make a private correction setting genuinely safe and accountable, especially when the child is isolated with an adult. + +--- + +## Chapter 3: Parental Unity & the Atmosphere of the Home + +> **Source note:** This chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. Scripture quotations, interpretations, terminology, marriage teaching, and practical recommendations have not been independently fact-checked or editorially revised. + +### The Principle of a Unified Front + +A central pillar of a peaceful home is the absolute, seamless unity between husband and wife [159]. Parents must understand that children are highly astute observers; they are experts at sensing any lack of alignment and will naturally seek to exploit any crack to sow division or pit one parent against the other [159, 164]. + +To prevent this, parents must maintain a completely united front [159]. In our home, we established a simple but powerful protocol. Whenever a child approached one parent asking for a treat, more television time, or a specific permission, the immediate response was always: + +> "What did Dad say?" or "What did Mom say?" [168, 169] + +If the other parent had already given an answer, the discussion was instantly over [169]. The parent receiving the second appeal would simply state, "Well, there is your answer," ensuring that the child’s attempt to bypass authority was met with a solid wall of parental agreement [169]. This level of consistency and predictability is not a rigid, legalistic exercise; rather, it provides children with an immense sense of security because they know exactly where the boundaries stand [47, 62, 185]. + +### Private Alignment over Public Disagreements + +Maintaining a united front means that parents must make a covenant never to disagree, correct, or expose each other's faults in front of their children [162, 163, 164]. Doing so publicizes division and teaches children how to manipulate their parents, which ultimately tears down the spiritual authority of the home [164]. + +Inevitably, there will be moments when one parent observes their spouse making a decision or handling a disciplinary situation in a way they wouldn't have chosen [169, 170]. The natural temptation is to immediately step in and express "wisdom" or correct the spouse on the spot [170]. This is a critical mistake [170]. + +When you feel that irritation rise, you must first deal with your own internal reaction [170]. In front of the children, you must completely support your spouse's decision [162, 163]. Any adjustments, differing views, or scale of discipline must be discussed strictly in private, behind closed doors [162]. In our home, if Deanna handled a situation and I disagreed with the method, we would discuss it privately later so that we could align our hearts before the Lord, but the child always saw us standing as one [55, 162]. + +### Healing the Crack: Humility and Restoration + +Because parents are human, there will be times when they fail to maintain this standard and inadvertently display division or disrespect in front of the child [167]. When this happens, it must be corrected immediately in the spirit of humility [164, 166]. + +First, the parents must align privately [164]. The offending parent should go to their spouse and say: + +> "Cariño, lo siento. I realize that I made you look bad in front of the child, and I repent." [164] + +Second, depending on the situation, it is often necessary to go directly to the child to model genuine repentance and restore the standard of honor [164, 165]: + +> "What I said to you about your mother/father was wrong. The Lord is working in my heart, and I cannot make an excuse for what I did. I want to apologize to you for deshonrar (dishonoring) them in front of you, because they deserve honor." [165] + +There is extraordinary, transformative power when a parent is willing to be authentic and humble before their children [166]. It models a soft, teachable heart and teaches children how to walk out repentance in their own lives [166]. + +### Atmosphere of Peace and Order + +The physical environment of the home directly affects its spiritual atmosphere [157, 159]. A clean, orderly house is a powerful catalyst for a home filled with peace [159]. When a mother takes joy and satisfaction in nurturing and keeping the home, and the husband actively notices, appreciates, and verbalizes his gratitude, it weaves a beautiful bond of peace over the entire household [159, 160]. + +This atmosphere also requires parents to be highly sensitive to one another's limits [160]. Parenting is a demanding, daily labor, and there are times when "too much is too much" and one spouse is exhausted or on edge [143, 160]. In those moments of high stress, the other spouse must be ready to step in, "take the ball," and cover for them [48, 160]. This mutual support ensures that correction is never administered out of exhaustion or emotional agitation [48, 71, 185]. + +### Nurturing the Marriage: Horizontal and Vertical Communication + +We must recognize that child training is not an isolated task; it is completely interwoven with every other area of family life, particularly the marriage relationship [157, 158]. If there is no peace between husband and wife, it is impossible to have lasting peace in training the children [158]. + +Healthy communication requires us to stop simply waiting for our turn to speak so we can make our own point, and instead learn to truly listen to one another’s hearts [171, 172]. This communication must be intentionally nurtured [173]. + +To build this horizontal connection, we must make constant, deliberate "positive deposits" into our spouse's emotional bank account [181, 182]. As the proverb of the household says, if you put a coin in the piggy bank every single day, it will eventually be filled [182]. + +A highly practical and transformative exercise for married couples is to commit to a 30-day breakfast covenant [180]. For thirty consecutive days, sit down together for breakfast, and each day, make a specific, intentional positive deposit by telling your spouse one thing you sincerely estimate and appreciate about them [180, 181]. + +For husbands, this requires stepping away from vague, general statements like "You know I love you" or "You look good," and instead sharing specific, particular details of appreciation [183]. For wives, it means actively finding ways to make their husbands feel proud and respected, rather than assuming they only need to receive appreciation without giving it [183, 184]. This intentional focus changes the entire climate of the home because, as Scripture principles teach: + +> "Buscad y hallaréis (Seek and you will find)." [181] + +If you look for faults, you will surely find them; but if you intentionally seek the good in your spouse, you will find it and multiply it [181]. + +### The Covenant Rule: Never Go to Bed Angry + +To safeguard the home's atmosphere, couples must establish a firm covenant line that they resolve never to cross [180]. Chief among these is the scriptural command: + +> "...do not let the sun go down on your anger." [180] + +In our thirty-seven years of marriage, we decided we would never go to sleep angry with one another [174, 177]. If a disagreement arose, we would take a "time out" to pray individually, allowing the Lord to deal with our own hearts first [175]. Then, we would return, ask for forgiveness where we had failed, and pray together [178]. We did not always agree on the specific point of contention immediately, but we agreed on God and gave Him the place of preeminence in our marriage [178]. + +As a husband, the Lord taught me that I must function as the priest of my home [177]. When my wife made a mistake or did something wrong, the Lord would use it to deal with me first, instructing me to carry the burden, be silent, and go to the cross for her just as Christ did for the Church [177]. When both husband and wife surrender their right to be right and prioritize the covenant, they establish a secure spiritual foundation that their children will naturally inherit, creating a magnificent generational advancement [8, 178, 179]. + +### Themes captured for future book development + +- Parental unity is presented as a source of security, predictability, and authority within the home. +- The chapter emphasizes checking with the other parent rather than allowing children to bypass a previously given answer. +- Disagreements about decisions or discipline are to be handled privately rather than displayed before the children. +- When parents fail publicly, immediate humility, apology, and restoration are presented as a model of repentance. +- Household order, appreciation, mutual awareness, and practical support are connected to a peaceful atmosphere. +- Marriage communication is framed as intentional listening and the repeated making of positive relational deposits. +- The 30-day breakfast covenant is presented as a concrete practice of daily appreciation. +- The command not to let the sun go down on anger is applied as a marriage covenant of prayer, forgiveness, and reconciliation. +- The chapter presents parental surrender, marital covenant, and generational advancement as closely connected. + +### Editorial and pastoral review flags + +- Verify all Scripture references, quotations, translations, and the Spanish phrase “Buscad y hallaréis” before publication. +- Preserve the distinction between the teaching's source claims and later editorial interpretation. +- Clarify the difference between healthy parental unity and coercive control. A united front should not require a parent to conceal abuse, unsafe conduct, serious error, or a child's legitimate disclosure. +- Children should be able to speak safely with either parent. The “What did Dad/Mom say?” practice should not be used to shut down questions, conceal a mistake, or prevent a child from reporting harm. +- The instruction to support a spouse publicly and resolve disagreements privately needs explicit safeguarding exceptions for abuse, intimidation, coercive control, threats, or unsafe discipline. In those situations, protecting the child and seeking qualified help takes priority over preserving appearances. +- The chapter's gendered descriptions of mothers nurturing the home, husbands leading as “priest,” and wives making husbands feel proud should be identified as the speaker's marital framework rather than treated as the only faithful model for every family. +- “Never go to bed angry” should be presented with room for healthy time-outs, sleep, boundaries, and professional help; immediate resolution is not always safe or wise during escalation. +- Clarify the meaning, origin, and practical structure of the 30-day breakfast covenant when the original recording context is available. + +--- + +## Chapter 4: Guarding Influences & Practical Daily Wisdom + +> **Source note:** This chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. Scripture references, interpretations, terminology, role descriptions, and practical recommendations have not been independently fact-checked or editorially revised. The blanket-training and physical-correction material is retained for source fidelity and is not an endorsement or safety determination. + +### Textile Boundaries & Early Training + +To train a child to listen to their parents' voices, training must begin in infancy with simple, knowable boundaries. Rather than overwhelming a toddler with a laundry list of hundreds of rules that they are incapable of following, parents should establish a few select, physical boundaries [72, 73]. + +A highly practical and successful method for this is blanket training [73]. Spreading a small blanket on the floor, the parent instructs the infant (typically starting around six to nine months of age): + +> "I don't want you going off of that." [73] + +Inevitably, the child's curiosity or old nature will lead them to test the boundary and attempt to crawl off [73, 79, 80]. In that moment, the parent administers a light, instant correction—such as a gentle tap on the hand—and places them back on the blanket, reinforcing the instruction [73]. Within just a few repetitions, the infant learns to associate their disobedience with the immediate correction and willingly remains within the border [73]. + +The goal of this training is not merely to restrict the child's movement or to protect household furniture, such as a coffee table [73]. Rather, it is to train the child to listen to and obey the parent's voice [73]. These physical boundaries provide children with immense security [74]. Just as the Lord establishes boundaries for our lives to keep us secure, clear boundaries in the home let children know exactly what is acceptable, preventing a frantic, heavily policed household and fostering an environment of deep spiritual peace [73, 74, 112]. + +### Guarding the Mind: "Tell-a-Vision" and Media + +In a modern world saturated with technology, parents must exercise extreme vigilance regarding television, tablets, and media [115, 116]. The world's media system is highly intentional; it is designed with specific "channels" and "programming" to literally "tell your vision"—shaping the ideals, desires, and minds of children away from the Kingdom of God [116]. + +Allowing a television or a tablet to act as a surrogate parent is a dangerous convenience [116]. It acts as a deliberate distraction designed by the adversary to draw parents away from their greatest earthly blessing and responsibility: actively training their children [116]. While completely avoiding media in today's society is a challenge, limiting it strictly produces extraordinary, healthy fruit [115, 116]. By closing the door to secular programming, we prevent the enemy from exploiting gaps in our children's security and instead keep their minds pure and focused on the atmosphere of the home [105, 116]. + +### Nurturing, Presence, and Owning Your Time + +Effective child training cannot be outsourced; it is a precious gift and responsibility given directly by God to the parents [114, 118]. This training requires physical and mental presence [52]. You cannot train up a child in the way they should go if you are not there to walk beside them [52, 118]. + +This truth carries profound implications for the roles of both the mother and the father: + +#### The Mother as the Nurturer + +A mother's primary calling in most circumstances is to stay home, keeping the house and nurturing the family [117, 166]. In this sacred role, she fulfills her God-given ability to multiply [117, 118]. When a husband brings home a paycheck, the wife multiplies it into food and a meal; when provided a house, she multiplies it into a warm, peaceful home [118]. The work a mother does in the home far surpasses any secular career or paycheck [117, 118, 166]. Husbands must actively celebrate, honor, and protect this role rather than allowing the diabolical wisdom of the world to demean it [117, 118, 166]. + +#### The Father as the Provider of Time + +For a mother to stay home, the father must be willing to step outside of the conventional worldly system to prioritize his family [120]. The Lord gave a specific word of wisdom: "Own your time." [120]. Fathers must seek the Lord for creative strategies to free up their schedules so they can be available, present parents [120]. This may mean starting a simple business or adjusting financial expectations to avoid the diabolical trap of Egypt, which demands two incomes and keeps parents too busy making bricks to build the family altar [117, 119, 120]. + +### Integrating Children into Daily Work + +A common mistake parents make is separating their daily lives into strict categories of "work" (which is treated as a burden to be done alone) and "fun" (which is treated as the only desirable activity) [157]. While it is often faster and easier for a parent to paint a wall, do the dishes, or fold the laundry by themselves, this misses a critical opportunity for training [157]. + +Parents should actively integrate their children into all the affairs of daily life [115, 157]. Give an eight-year-old a paint roller and teach them how to paint; let the toddlers help push the buttons on the washing machine or play in the sink while doing dishes [157]. When children are included in these tasks, they do not grow up hating work or viewing it as an awful chore [157]. Instead, they learn that work is a natural, joyful expression of family life [157]. Ultimately, children do not need constant, artificial entertainment; they simply want to be with their parents, and sharing in daily labor bonds the family together in purpose [157]. + +### Themes captured for future book development + +- Early training is presented as the establishment of a small number of clear, physical, understandable boundaries rather than an overwhelming list of rules. +- The source teaching uses blanket training as an example of teaching an infant to respond to a parent's voice and remain within a defined boundary. +- Boundaries are framed not only as restrictions but also as sources of security, predictability, and peace. +- Media is presented as a formative influence that can shape a child's imagination, desires, ideals, and worldview. +- The chapter calls parents to intentional presence rather than allowing devices to become surrogate caregivers. +- The teaching presents a home-centered maternal role and a time-owning, financially creative paternal role as its preferred family framework. +- Children are encouraged to participate in ordinary household work so that labor becomes a joyful expression of family life rather than an isolated burden. +- Family presence and shared work are presented as more formative than constant artificial entertainment. + +### Editorial, developmental, and safeguarding review flags + +- Verify all Scripture references, quotations, translations, and word-study claims before publication. +- Confirm whether the chapter title “Textile Boundaries” is the intended wording or whether it refers specifically to blanket/physical boundaries; preserve the supplied title until the recording context is available. +- The blanket-training example involves an infant, physical correction, and a potentially hazardous environment. Before any parent-facing use, consult current pediatric, child-safety, and safeguarding guidance; do not reproduce the method as a universal instruction or imply that a “gentle tap” is necessary for learning obedience. +- Any early-childhood boundary practice should prioritize supervision, childproofing, developmentally appropriate expectations, non-violent redirection, and prevention of falls or access to unsafe objects. Infant behavior and repeated boundary-testing are normal developmental processes, not proof of an “old nature.” +- The language that media is designed by “the adversary,” tells a child’s vision, or necessarily displaces parental responsibility should be identified as the speaker's theological framing. A final resource should distinguish thoughtful media guidance from fear-based claims and acknowledge educational, relational, accessibility, and family-context differences. +- The claims that child training cannot be outsourced and that mothers should ordinarily stay home should be presented as the teaching's family model, not as a universal measure of faithfulness or parental love. Account for single parents, dual-income households, adoptive and foster families, disability, illness, economic necessity, education, cultural context, and families with different vocational callings. +- The language about two incomes, Egypt, and “making bricks” should be retained as source imagery but carefully contextualized so financial hardship is not treated as a moral failure and so the final book does not impose unsafe or unrealistic economic expectations. +- When children participate in household work, include age-appropriate supervision and safety precautions. Paint, appliances, hot water, sinks, tools, chemicals, ladders, and other household hazards require adult judgment. +- Clarify what “own your time” means in practical, sustainable terms and avoid presenting entrepreneurship or schedule changes as guaranteed solutions for every family. + +--- + +## Chapter 5: Generational Advancement & the Covenant Family + +> **Source note:** This chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. Scripture references, interpretations, terminology, family structures, and practical recommendations have not been independently fact-checked or editorially revised. + +### The Principle of Generational Advancement + +A primary objective of the covenant family structure is what we call "generational advancement" [8, 178, 179]. This means that the spiritual victories, emotional healing, and behavioral discipline established by the parents become the floor upon which the children stand [8, 46, 162]. Because children raised in a genuinely secure, peaceful environment do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome, they are uniquely positioned to stand on their parents’ advancements and leap forward into their own divine destinies [8, 46, 162]. + +Our children still have their own struggles and areas of life that the Lord must work on [81]. This is a beautiful and necessary reality because everyone needs something in their life that forces them to cry out to the Lord and depend on Him [81]. However, generational advancement ensures that they do not start from scratch; they start from a position of inherited spiritual security [8, 46, 162]. + +### "Cutting the Penny in Half" + +To keep our children from expecting perfection from us—while still keeping them engaged in the process of growth—we taught them a foundational concept [82]. When our daughters were around seven to nine years of age, we sat down for a teaching moment and told them [82]: + +> "Girls, listen. Mom and I are going to be able to cut this penny in half. All this stuff on this half of the penny, the Father is going to work with us to remove it from our lives. But there is still going to be half of a penny left for you to deal with in your own life. And then you are going to have children, and you are going to cut that penny in half again. But you will always have half of the half that remains. Why? Because the Father needs to be sovereign to your children, and He will be." [82] + +This simple, powerful teaching set a healthy expectation within our home [82]. Our daughters did not expect us to be flawless, perfect parents, but they constantly saw us leaning into the Lord, seeking His face, and working to deal with our own "half of the penny" [82]. This vulnerability and transparency created a beautiful, authentic environment where the entire family advanced together before the Lord [82]. + +### Covenant Priorities: God, Family, and Ministry + +In establishing a stable, secure home, parents must walk in strict alignment with God's divine order of priorities [131]. We are firm believers in a covenant hierarchy that must never be compromised [131]: + +1. **God First** +2. **Family Second** +3. **Ministry Third** + +Tragically, when this order is inverted, the home suffers immensely [131]. We see this manifest in the lives of many "preacher's kids" who grow up bitter and distant from the Lord because their parents prioritized public ministry or the affairs of the church over the spiritual and emotional security of their own household [131]. Even for those carrying a powerful ministerial anointing, fathers must seek the Lord for the creative wisdom and divine provision necessary to protect their family time [131]. We must lift our vision higher to see that our children are our primary, most significant ministry [41, 131]. + +### Relying on the Greater Body + +No family is designed to function as an isolated island. Part of walking in the covenant is recognizing that you are not alone when you are parenting [133]. The Lord has intentionally structured the Body of Christ so that you have older, more mature people around you who have been given pastoral or apostolic responsibility over your life to speak wisdom, correction, and guidance into your household [133]. + +Furthermore, parents must actively teach and model honor for others [134]. In our home, we wanted our daughters to know that they were not restricted to only receiving help from us [134]. We gave them explicit permission that if they ever felt they needed outside spiritual help or counseling, they had the freedom to reach out directly to our trusted leaders and spiritual counselors [134]. By removing the fear of being threatened by outside help, we established a network of absolute security around our daughters [132, 134]. They grew up knowing that if Mom and Dad were struggling, there was a safe, ordained place in the local headship where help, restoration, and life-giving counseling could be found [133]. + +### Blended Families and Late Starts: Rebuilding the Foundation + +We frequently meet parents who are entering the child training journey late—whether because they have recently come to know the Lord after their children are older, or because they are navigating the unique complexities of a blended family [147, 148]. In these situations, parents often ask how they can remove old, ungodly foundations that were laid before they entered the picture [147]. + +In these cases, the primary strategy is to become the model of the Father's love in their presence [148]. Walk before them as a consistent, unshakeable, secure place that they can count on day in and day out [148]. + +If you are dealing with older children where the primary training window has passed, look backward to see if there are any broken bridges of trust [148]. Seek the Lord and ask yourself: “Have I ever made any promises to my children that I have not kept?” [148] + +If the answer is yes, you must do whatever it takes—no matter how difficult or costly to your finances—to keep your word and fulfill those promises [148]. This act of sacrificial integrity sends a powerful message that you are a parent of truth, modeling the covenant-keeping nature of our heavenly Father [148]. Combine this with doing extraordinary, unexpected things to display your love, and stay closely submitted to your local spiritual headship, who can help navigate the specific nuances of your household [148]. The Lord’s grace is fully sufficient to heal, restore, and rebuild the foundations of any home that yields completely to His pattern [148]. + +### Themes captured for future book development + +- Generational advancement is presented as children inheriting a foundation of spiritual security, emotional healing, and parental growth rather than having to begin from the same level of brokenness. +- The “cutting the penny in half” illustration gives children permission to see parental imperfection while also seeing parents actively submit their lives to God’s transforming work. +- The teaching holds together two ideas: parents can remove or reduce patterns of brokenness, while children still have their own agency, struggles, and relationship with God. +- The proposed covenant priority is God first, family second, and ministry third. +- Children are presented as a primary ministry and a responsibility that should not be sacrificed to public ministry demands. +- Parenting is framed as a communal responsibility in which mature, trusted members of the local church can provide wisdom, correction, counseling, and restoration. +- Children are encouraged, in the source account, to have access to safe outside help rather than being limited to their parents alone. +- Parents who begin later or who are navigating blended-family complexity are called to rebuild trust through consistency, integrity, fulfilled promises, demonstrated love, and patient presence. + +### Editorial, theological, and safeguarding review flags + +- Verify all Scripture references, quotations, translations, and the theological language surrounding “generational advancement” before publication. +- Preserve the “cutting the penny in half” illustration and its source context, but clarify that children are not responsible for repairing or carrying their parents’ unresolved wounds. Parental healing should reduce burdens on children, not assign them a quantified share of family brokenness. +- The teaching's statement that everyone needs struggles that force dependence on God should be handled carefully. Do not romanticize trauma, abuse, poverty, disability, mental-health challenges, or other suffering as divinely necessary or as evidence of spiritual deficiency. +- “God first, family second, ministry third” should be explained rather than used as a slogan that automatically resolves competing responsibilities. The final resource should address safety, marriage and parenting obligations, work, health, community, and the needs of vulnerable family members. +- The claim concerning “preacher's kids” should be qualified and supported if retained. Children’s experiences of ministry families are varied, and bitterness or distance from faith should not be attributed simplistically to parental prioritization. +- Outside spiritual leaders, pastors, counselors, and “local headship” must be safe, qualified, accountable, and subject to appropriate safeguarding standards. Children should have confidential, age-appropriate ways to disclose concerns, including access to adults outside the parents' chosen circle when needed. +- “Submission” to spiritual authorities must never mean unquestioning obedience, secrecy, isolation, surrender of parental or child safety, or protection of leaders from scrutiny. The final book should explicitly preserve the right to seek independent professional help and report abuse. +- In blended families, rebuilding trust requires consent, patience, predictable care, respect for existing parent-child bonds, and attention to grief, loyalty conflicts, trauma, and legal/custody realities. A new spouse or parent figure cannot demand instant spiritual or relational authority. +- The instruction to fulfill promises “no matter how difficult or costly” should be bounded by safety, legality, financial sustainability, and the child’s best interests. Parents should not keep an unsafe, impossible, manipulative, or harmful promise merely to preserve appearances. +- “Extraordinary, unexpected” demonstrations of love should be age-appropriate, non-coercive, and responsive to the child’s actual needs rather than used to purchase trust or compliance. +- Clarify whether “late” refers to age, conversion, remarriage, or a previous parenting approach, and avoid framing earlier family history as an “ungodly foundation” in a way that shames parents or children. + +--- + +## Chapter 6: The Covenant Parenting Workbook — Reflection and Action + +> **Source note:** This workbook chapter preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. The questions, exercises, and covenant commitments below reflect the source teaching and have not been independently fact-checked, clinically reviewed, or editorially revised. Physical-discipline and infant-training exercises are retained for source fidelity only and are not an endorsement, safety determination, or instruction to implement them. + +This workbook is designed to help you and your spouse move beyond information and step into active, structural transformation [119]. Covenant parenting is not a formula to be checked off; it is a living relationship that must be intentionally walked out before the Lord and before your children [51, 52]. Use these reflective questions, practical exercises, and covenant commitments to build a secure sanctuary of peace in your home [14, 130]. + +--- + +### Section 1: Modeling & Generational Vision (Chapter 1) + +#### I. Heart-Level Reflections + +**Dependent Sonship:** Jesus modeled a life of complete dependence on His Father ("I don't do anything but I see my father do it" [9]). In what areas of your daily life are you struggling to walk in instant obedience to your Heavenly Father? How might this struggle affect your children's ability to obey your voice [11]? + +**The Power of the Model:** In the eyes of a young child, you represent God—His authority, His love, and His safety [10, 62]. When you come home on edge or exhausted, what kind of father or mother are you modeling [11, 60]? + +**Multi-Generational Legacy:** Are there areas where you have fallen into passive parenting or short-sightedness [11, 12]? If you parented with a vision that extended three generations deep, what would you change about your household today [12, 55]? + +#### II. Action Steps + +**The Refuge Audit:** Identify one major source of fear, anger, or insecurity in your own heart [13]. Set aside a specific time to bring this before the Lord, asking Him to deal with the root of this brokenness [13]. Re-read Proverbs 14:26: + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [13] + +Write down how you will yield to His healing hand this week to make your home a stronger refuge [13, 62]. + +--- + +### Section 2: Redemptive Correction (Chapter 2) + +#### I. Heart-Level Reflections + +**The Rule of Calmness:** Do you ever correct your children out of irritation, frustration, or a desire for convenience [22, 101]? What is the difference between biblical discipline (which restores) and humanistic punishment (which lingers) [21, 76]? + +**Removing Shame:** Does correction in your home leave a lingering shadow of guilt or emotional distance, or does it result in immediate restoration, hugs, and perfect right standing [21, 76, 79]? + +#### II. Action Steps + +**The Hand Consecration:** Make a solemn covenant with your spouse today that your hands are strictly reserved for holding, hugging, and expressing love [20, 73]. Remove all wooden spoons, belts, and other rigid implements from your parenting toolbox [20, 73]. + +**Setting Up the “Correction Room”:** Identify a private room in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 163]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that designated room [20, 164]. Agree to never correct your child in front of guests, siblings, or in public [23, 163]. + +**Practice Stopping:** If you feel your blood pressure rising during a correction, commit to saying: "I am not in a position to handle this right now." Ask your spouse to cover for you, or find a controlled situation before the Lord until you can speak in a calm, tender voice [22, 78, 101]. + +--- + +### Section 3: Parental Unity & Atmosphere (Chapter 3) + +#### I. Heart-Level Reflections + +**The Cracks of Division:** Children are astute observers who look for alignment [24]. Can your children find any "cracks" between you and your spouse to get a different answer [24, 189]? + +**Private Alignment:** Have you fallen into the trap of correcting, undermining, or arguing with your spouse in front of the kids [26, 193]? How can you build a stronger habit of waiting until you are behind closed doors to resolve parenting differences [26, 27, 192]? + +#### II. Action Steps + +**The "What Did They Say?" Protocol:** Practice the immediate gatekeeping response. Whenever a child asks for permission or a treat, always ask: "What did Dad say?" or "What did Mom say?" [24, 25, 198]. If the other spouse has given an answer, the discussion is permanently closed [25, 199]. + +**The 30-Day Breakfast Covenant:** Set your alarm 30 minutes earlier. Sit down together for breakfast every day for the next 30 days [32, 210]. Each morning, share one specific, particular detail that you sincerely estimate and appreciate about your spouse [32, 33, 211, 213]. Focus on finding the good, and watch the atmosphere of your marriage and home transform [34, 211]. + +**The Sunset Covenant:** Commit to the rule of Ephesians 4:26: + +> "...do not let the sun go down on your anger." [34, 210] + +Agree that no matter the disagreement, you will pray individually, come together, ask for forgiveness, and pray together before sleeping [34, 208]. + +--- + +### Section 4: Guarding Influences & Daily Wisdom (Chapter 4) + +#### I. Heart-Level Reflections + +**Surrogate Parenting:** Is television or digital media acting as a surrogate parent or a distraction from your training responsibilities [38, 134]? How is "tell-a-vision" programming shaping the minds and desires of your children away from the Kingdom [38, 134]? + +**Owning Your Time:** Fathers, are you caught in the "Egyptian" bricks-and-mortar trap of overworking at the expense of being present to train your children [39, 137]? What adjustments do you need to make to own your time [39, 138]? + +#### II. Action Steps + +**The Blanket Training Trial:** For infants (6–9 months), lay down a small blanket on the floor [36, 91]. Practice giving the quiet command: "I don't want you going off of that." [37, 91] Gently correct their hand when they test the boundary, and place them back on [37, 91]. Use this tool to train their ears to listen to your voice [37, 91]. + +**Integrating vs. Separating:** Stop treating household chores as a solo burden. This week, give your child a paint roller, have them help push buttons on the washing machine, or pull up a chair to help wash dishes [40, 175]. Let them participate in your daily life, reinforcing that the family works together with joy [40, 175]. + +--- + +### Section 5: Generational Advancement & Covenant Priorities (Chapter 5) + +#### I. Heart-Level Reflections + +**The Penny in Half:** Do your children carry the heavy burden of expecting you to be perfect [42, 43]? How can you model humility and the pursuit of growth rather than a false image of perfection [43, 95]? + +**The Priority Order:** Honestly assess your calendar and energy. Are you living according to the covenant order: God First, Family Second, Ministry/Work Third [43, 44, 144]? + +#### II. Action Steps + +**The "Half-Penny" Conversation:** Gather your children (especially those ages 7–9 or older) [42, 95]. Share the "half-penny" teaching with them: + +> "Mom and I are not perfect parents, but we are working with the Lord to clear away old battles so you don't have to fight them [41, 42, 95]. There will still be a portion left for you to deal with, but you will stand on our shoulders." [41, 42, 95] + +**Rebuilding Broken Bridges (Late Starts / Blended Families):** Seek the Holy Spirit and ask: "Have I ever made any promises to my children that I have not kept?" [47, 161] If a promise comes to mind—no matter how small or how financially challenging—make a concrete plan to keep your word and fulfill that promise this month [47, 161]. + +### Themes captured for future workbook development + +- The material moves from teaching content into self-examination, shared marital practices, and concrete household commitments. +- The workbook treats parental transformation and modeling as the starting point for changes in the home. +- The questions invite parents to examine obedience, emotional regulation, presence, priorities, division, media use, and generational vision. +- The proposed exercises include a refuge audit, a calmness practice, parental-unity protocols, a 30-day appreciation covenant, media and time audits, shared household work, a half-penny conversation, and promise-repair work. +- The source workbook is intended to be used by spouses together, not merely read individually. +- Each chapter's practical section mirrors the book's larger sequence: model first, correct redemptively, build unity, guard influences, and advance the covenant family. + +### Editorial, pastoral, developmental, and safeguarding review flags + +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between the workbook citations and the original audio/NotebookLM source. +- The physical-discipline exercises in Sections 2 and 4 should not be presented as ready-to-use instructions in a parent-facing workbook. Replace or substantially revise them after professional safeguarding review, with non-violent, age-appropriate alternatives centered on supervision, redirection, natural/logical consequences, repair, and emotional regulation. +- The “correction room” exercise should not encourage isolating a child with an adult or imply that privacy overrides safety, accountability, or a child’s right to disclose harm. Any final version should include clear safeguarding boundaries and appropriate access to trusted, independent help. +- The suggestion to place a switch in the home should be removed from a practical action checklist unless the final theological and safeguarding review explicitly justifies its inclusion; the current source note must not be mistaken for an endorsement. +- “Perfect right standing” and the idea that correction removes a spiritual debt require theological review so that children are not taught that physical pain is required for forgiveness, belonging, or restoration. +- “If the other spouse has given an answer, the discussion is permanently closed” should be softened to allow clarification, correction of mistakes, accessibility needs, changing circumstances, and safe disclosure. Children must not be trained to stop asking questions or reporting concerns. +- The 30-day breakfast and sunset covenants should allow for work schedules, illness, disability, conflict de-escalation, sleep, safety, and circumstances in which immediate reconciliation is not appropriate. +- The blanket-training trial should not be reproduced without current pediatric and child-safety review. Infant crawling and boundary-testing are normal development; safe supervision and childproofing should come before obedience training. +- The “Egyptian” overwork metaphor and “own your time” exercise should not shame parents who must work, rely on childcare, or manage financial hardship. Include varied family structures and realistic economic constraints. +- Household-work activities require age-appropriate supervision around paint, appliances, water, heat, tools, chemicals, and other hazards. +- The half-penny conversation should be adapted so children are not assigned responsibility for parental wounds or told they must inherit a predetermined portion of brokenness. Emphasize parental accountability, the child’s agency, and freedom to seek help. +- Promise-repair exercises should be bounded by safety, legality, financial sustainability, custody arrangements, and the child’s best interests; a parent should not fulfill a harmful or impossible promise. +- The workbook should include an explicit “when to seek help” page covering trusted pastoral care, licensed counseling, child-protection concerns, domestic abuse, mental-health crises, and situations in which a parent cannot stay calm or keep a child safe. + +--- + +## The 30-Day Covenant Parenting Challenge Calendar + +> **Source note:** This practical, day-by-day companion calendar preserves the supplied NotebookLM synthesis from audio recordings of Bryan Hickman's teaching sessions. It is stored verbosely as source material for the developing parent-focused book. The schedule, Scripture references, exercises, theological claims, and practical recommendations have not been independently fact-checked, clinically reviewed, or editorially revised. Physical-discipline and infant-training exercises are retained for source fidelity only and are not an endorsement, safety determination, or instruction to implement them. + +This practical, day-by-day companion calendar is designed to help you and your spouse actively move from information to structural, heart-level transformation in your home [48]. Covenant parenting is a living relationship that must be intentionally walked out before the Lord and before your children [48, 62]. Use this daily tracker to build a secure sanctuary of peace in your household [48, 141]. + +--- + +### Week 1: Laying the Marital Foundation + +The spiritual atmosphere of the home is anchored in the absolute unity of husband and wife [3, 199]. This week, we focus entirely on sealing the "cracks" of division, aligning our hearts privately, and nurturing horizontal communication [3, 24, 31, 200]. + +#### Day 1: The Sunset Covenant (Ephesians 4:26) + +**Action:** Sit down with your spouse tonight and make a solemn covenant that you will never go to sleep angry [34, 218]. If a disagreement arises, commit to taking a private "time out" to pray individually, then come together to ask for forgiveness and pray together before sleeping [34, 216, 219]. + +**Scripture:** "...do not let the sun go down on your anger." [34, 54, 218, 221] + +#### Day 2: Launching the 30-Day Breakfast Covenant + +**Action:** Set your alarm 30 minutes earlier [54, 221]. Sit down for breakfast together (just the two of you) and share one specific, particular detail you sincerely appreciate and estimate about your spouse [32, 33, 54, 221, 224]. **Rule for Husbands:** Avoid generalities like "you look good"—find a particular, concrete action to celebrate [33, 224]. + +**Scripture:** "Seek, and you will find." [33, 222] + +#### Day 3: The "What Did Dad/Mom Say?" Gatekeeping Protocol + +**Action:** Align on the gatekeeping protocol [54, 210]. Whenever a child approaches you asking for a treat, permission, or a change in rules, your immediate, unthinking response must be: "What did Dad say?" or "What did Mom say?" [24, 25, 54, 210]. If the other spouse has given an answer, the discussion is permanently closed [25, 54, 210]. + +#### Day 4: Day 3 of the Breakfast Covenant + +**Action:** Share your daily specific deposit [32, 33]. Today, focus on celebrating how your spouse handles pressure or exhaustion [30, 143, 201]. + +#### Day 5: Private Discipline Alignment Check + +**Action:** Covenant together that you will never correct, undermine, or disagree with each other's disciplinary actions in front of the children [26, 204, 205]. If you disagree with how a situation was handled, deal with your own irritation privately and discuss it strictly behind closed doors later [27, 211]. + +#### Day 6: Modeling Humility & Repentance + +**Action:** If you slipped up this week and displayed division or disrespect in front of your children, execute the restoration protocol [28, 205]. First, apologize to your spouse privately: + +> "My love, I am sorry. I realize that I made you look bad in front of the child, and I repent." [28, 205] + +Second, go to the child: + +> "What I said to you about your mother/father was wrong. I want to apologize to you for dishonoring them in front of you." [29, 206] + +#### Day 7: Weekly Reflection & Rest + +**Action:** During your breakfast covenant today, evaluate the atmosphere of the home [32, 221]. Has the spirit of peace and security increased? Ask: "Are we taking time to truly listen to one another’s hearts, or are we just waiting for our turn to speak?" [31, 213]. + +--- + +### Week 2: Establishing Heart-Level Security & Early Boundaries + +This week, we transition into early training boundaries and emotional security. We examine how our physical actions, voice tone, and early limits build a protective shield around our children [3, 20, 37, 103]. + +#### Day 8: Consecrating the Hands & the Voice + +**Action:** Consecrate your hands and voice today [20, 226]. Declare that your hands are made exclusively for hugging, holding, and expressing love and tenderness [20, 84, 226]. Agree that your voice will never be the vehicle of correction, but only of instruction, praise, and love [226]. Remove all rigid correction implements (belts, heavy spoons) from the home [20, 84, 52]. + +#### Day 9: Establishing the "Correction Room" + +**Action:** Identify a private, designated area in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 174]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that room [20, 175]. Commit to never correcting your children publicly or in front of siblings [23, 174]. + +#### Day 10: Expressive Love Deposits + +**Action:** Be intentionally expressive today [139, 140]. Hug your children unexpectedly, write them a sweet note, or tell them specific reasons why you love them and estimate who they are [139, 140]. Ensure they know their security is unshakeable [87, 103]. + +#### Day 11: Blanket Training Setup (For Infants 6–9 Months) + +**Action:** Spread a small blanket on the floor [36, 102]. Place the infant on it and say quietly: "I don't want you going off of that." [37, 102] When they attempt to crawl off, gently tap their hand to associate disobedience with instant correction, and place them back on the blanket [37, 102]. Repeat this several times in a focused, calm session [37, 102]. **(For older children, choose a single, clear boundary—like not touching the coffee table—to train their ears to listen to your voice [102].)** + +#### Day 12: The Rule of Calmness Practice + +**Action:** If you feel your blood pressure rising or feel on edge during a disciplinary moment today, practice stopping immediately [22, 112]. Say to your spouse: "I am not in a position to handle this right now," and let them step in and cover for you, or find a calm place before the Lord before addressing the situation [22, 30, 52, 112, 185]. + +#### Day 13: Instant Obedience Check + +**Action:** Evaluate if you have fallen into the trap of counting to three or repeating commands multiple times [227]. Commit today to expecting instant obedience to your voice [141, 227]. Give clear, loving instruction once, and address any delay as disobedience [140, 141, 227]. + +#### Day 14: Mid-Point Reflection + +**Action:** Reflect on Proverbs 14:26 [3, 74]. Write down how growing in your own reverent fear and instant obedience to the Heavenly Father has created a physical and spiritual "shield of refuge" for your children this week [3, 13, 74]. + +--- + +### Week 3: Integrating Work, Joy, and Presence + +We are called to own our time, stay present, and include our children in the everyday affairs of life so they learn that labor is a joyful, natural expression of the family [5, 39, 40]. + +#### Day 15: Media Audit ("Tell-a-Vision") + +**Action:** Walk through your home and evaluate the media intake [38, 145]. Identify where tablets, phones, or television are acting as "surrogate parents" or distractions [38, 145]. Agree to strictly limit or close the door to secular programming to keep the atmosphere of the home pure [38, 145]. + +#### Day 16: Erasing the Work vs. Fun Boundary + +**Action:** Stop treating household chores as a solo burden [40, 186]. Today, pull up a chair and let your toddler help wash dishes, push the buttons on the washing machine, fold laundry, or give your older child a paint roller to help paint [40, 186]. Make work a shared, joyful experience of living life together [40, 186]. + +#### Day 17: Father’s Covenant: Owning Your Time + +**Action:** Fathers, spend time before the Lord today asking for creative, Kingdom strategies to "own your time" [39, 149]. Examine your schedule to ensure you are physically and mentally present for your family rather than caught in the "Egyptian brick-making trap" of excessive work [39, 148, 149]. + +#### Day 18: Celebrating the Mother’s Role + +**Action:** Husbands, take time today to actively celebrate, verbalize, and honor the sacred work your wife does in nurturing the home and multiplying your family's resources [30, 39, 147]. Let her know that her presence far surpasses any secular career or paycheck [39, 146, 147]. + +#### Day 19: The "I Will Say Yes" Promise + +**Action:** Look for opportunities to say "Yes!" to your children today [151]. Tell them: "There are times I have to say no to protect you, but I am looking for every opportunity to say yes to you." [151, 152] Plan a family-appropriate trip, surprise outing, or special treat to fulfill this promise [151, 153]. + +#### Day 20: Outdoor Activity Shift + +**Action:** If the atmosphere of the home feels pent up or stressful today, physically shift locations [179, 180]. Take the children outside to build a fort, play in the yard, go to the park, or take a simple drive [179, 180]. Use nature and play as a release valve for energy [178, 180]. + +#### Day 21: Weekly Reflection: Celebration of Individuality + +**Action:** Discuss how your children are uniquely wired [118, 121]. Repent of any verbal comparisons between siblings [119, 120]. Ask the Holy Spirit for custom wisdom (Rhema word) for each child's specific, unique design [117, 118]. + +--- + +### Week 4: Generational Legacy & Deep Restoration + +We parent with a multi-generational vision, preparing our children to stand on our spiritual shoulders and leap forward into their own divine destinies [6, 12, 41]. + +#### Day 22: The "Half-Penny" Conversation + +**Action:** Gather your children (especially those ages 7–9 or older) for a teaching moment [42, 106]. Explain the "half-penny" concept: + +> "Mom and Dad are not perfect, and we are working with the Lord to clear away old battles so you don't have to fight them [42, 106]. There will still be a portion left for you to deal with under His sovereign hand, but you will stand on our shoulders." [41, 42, 106] + +#### Day 23: Rebuilding Broken Bridges (Late Starts & Blended Families) + +**Action:** Ask the Holy Spirit: "Have I ever made any promises to my children that I have not kept?" [47, 172] If a promise comes to mind—no matter how small or financially difficult—write down a concrete plan to keep your word and fulfill it this month [47, 172]. Fulfilling your promises models our covenant-keeping Father [47, 172]. + +#### Day 24: Covenant Priority Check + +**Action:** Audit your calendar, finances, and energy [57]. Are you walking in strict alignment with God's covenant order of priorities: God First, Family Second, Ministry/Work Third? [43, 44, 57] Adjust any inverted priorities today [44]. + +#### Day 25: Honoring the Greater Body + +**Action:** Teach your children that they are not alone, and that they have the freedom to reach out to trusted, ordained local leaders or counseling elders if they ever need help or counsel [45, 157]. Model this by showing submission and honor to local headship yourself [45, 157]. + +#### Day 26: Facing Insecurities + +**Action:** Realize that any insecurities you carry do not have to be passed down [14, 104]. Bring your deep-seated fears or past family wounds to the Lord, allowing Him to heal you so that your children can walk in total, inherited spiritual security [14, 73, 104, 105]. + +#### Day 27: Concluding the 30-Day Breakfast Covenant Challenge + +**Action:** As you complete your 30th breakfast together, commit to making these daily specific deposits a permanent, lifelong habit of your marriage [32, 223]. Celebrate how focusing on finding the good has transformed your relationship [34, 222]. + +#### Day 28: Preparing the Next Generation to Model + +**Action:** Reflect on Acts 13:36 [12]. Pray a blessing over your children, asking the Lord to equip them to serve His purposes faithfully in their own generation [12, 65]. + +--- + +### Days 29 & 30: Evaluation & Generational Forwarding + +#### Day 29: Joint Spouse Review + +**Action:** Review the completed 30-day challenge. Where did you see the most significant fruit? Where did the Holy Spirit highlight areas that still need to be "narrowed up" or healed? [14, 73, 76] + +#### Day 30: Sealing the Legacy + +**Action:** Commit this parenting journey to the Lord in prayer [193]. Declare that your family is stepping into generational advancement, and that the spiritual ceiling of your life has officially become the floor upon which your children stand [6, 41, 105]. + +### Calendar themes captured for future book development + +- The calendar begins with marital unity and communication before moving into child-focused boundaries and correction. +- Its sequence progresses from household atmosphere, to heart-level security, to presence and shared work, and finally to generational legacy and restoration. +- The daily practices emphasize appreciation, repentance, calmness, parental consistency, presence, media awareness, shared labor, individualized attention, promise keeping, and prayer. +- The calendar translates the broader teaching into a structured rhythm of daily action, weekly reflection, and final evaluation. +- The challenge repeatedly connects parental transformation with the security and future formation of children. +- The calendar includes both couple-centered practices and child-centered conversations, allowing later editions to distinguish exercises for spouses, infants, older children, blended families, and ministry families. + +### Editorial, pastoral, developmental, and safeguarding review flags + +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between this calendar's citations and the original audio/NotebookLM source. +- The calendar contains repeated instructions to use a switch, tap an infant's hand, and conduct private physical correction. These instructions should not be distributed as a ready-to-use parent program. Before any public edition, replace or substantially revise them after professional pediatric, child-development, and safeguarding review, centering non-violent redirection, supervision, natural/logical consequences, repair, and emotional regulation. +- The “correction room” should not be framed as a private space where a child is isolated with an adult without safety, accountability, and access to independent help. Privacy should protect dignity, not conceal harm. +- “Never go to sleep angry” and the sunset covenant should allow safe time-outs, sleep, boundaries, and delayed conversation. Immediate reconciliation is not appropriate in every conflict, particularly where there is intimidation, coercive control, abuse, or escalating danger. +- The “What Did Dad/Mom Say?” protocol and the phrase “the discussion is permanently closed” require safeguards. Parents may need to correct a mistake, hear a child's question, accommodate disability or changing circumstances, or receive a disclosure of harm. Unity must not become silencing. +- Day 8's instruction that the voice should never be a vehicle of correction conflicts with the broader source teaching's emphasis on correcting disobedience and should be clarified in the original recording context. +- Day 13's “instant obedience” exercise should be reviewed developmentally. Young children may need repetition, processing time, communication support, or an explanation of a request; delay is not automatically defiance. +- The 30-day breakfast count appears internally inconsistent: the calendar launches the breakfast covenant on Day 2, labels Day 4 as “Day 3,” and calls Day 27 the 30th breakfast even though the listed daily breakfast actions do not clearly account for thirty meetings. Reconcile the schedule before publication. +- The “I Will Say Yes” promise should not pressure parents into purchasing outings or treats, or make a child's felt love dependent on receiving a yes. Define realistic, relational ways to say yes while preserving necessary boundaries and financial sustainability. +- The “Egyptian brick-making trap,” the instruction that a mother's presence surpasses a secular career, and the gendered roles should be presented as the speaker's family framework, not a universal measure of faithfulness. Include single parents, dual-income families, childcare, disability, illness, economic necessity, adoptive/foster families, and varied vocational callings. +- Outdoor drives and activities require ordinary safety planning, supervision, weather awareness, transportation restraints, and age-appropriate expectations. +- Day 21's language about each child being uniquely wired is valuable, but “Rhema word” should be explained and should not replace listening to the child, developmental knowledge, qualified support, or medical/mental-health care. +- The half-penny exercise should not tell children they inherit a predetermined portion of parental brokenness. Emphasize parental accountability, the child's agency, and freedom to seek help. +- Trusted local leaders, “counseling elders,” and “local headship” must be qualified, accountable, safeguarding-compliant, and open to independent scrutiny. Children must retain access to safe adults outside the parents' chosen leadership circle and to licensed professional help. +- “Submission” to church authority must never require secrecy, unquestioning obedience, isolation, surrender of safety, or protection of leaders from scrutiny. +- Promise-repair exercises should be bounded by safety, legality, custody arrangements, financial sustainability, and the child's best interests. An unsafe or impossible promise should be addressed honestly rather than fulfilled at any cost. +- “Generational forwarding” and the statement that a parent's spiritual ceiling becomes a child's floor should be framed as an aspirational metaphor, not a guarantee or a burden placed on children to continue a parent's ministry or spiritual achievements. diff --git a/projects/covenant_parenting_bryan_hickman_nkjv_verification.md b/projects/covenant_parenting_bryan_hickman_nkjv_verification.md new file mode 100644 index 0000000..a325e8e --- /dev/null +++ b/projects/covenant_parenting_bryan_hickman_nkjv_verification.md @@ -0,0 +1,257 @@ +--- +title: "The Pattern of Covenant Parenting — NKJV Scripture Verification Register" +status: verification-draft +translation: "New King James Version (NKJV)" +source: "BibleGateway NKJV passage pages" +retrieved: 2026-08-14 +related: + - "[[covenant_parenting_bryan_hickman]]" + - "[[covenant_parenting_bryan_hickman_revised]]" +tags: + - parenting + - covenant-parenting + - church-teaching + - scripture + - NKJV + - editorial-review +--- + +# NKJV Scripture Verification Register + +**Purpose:** This register verifies the Scripture references and Scripture-like quotations used in [[covenant_parenting_bryan_hickman_revised]]. + +**Interpretive status:** The parenting manuscript is an interpretation and synthesis of Bryan Hickman's voice recordings, not a verified verbatim transcript. Bryan Hickman's review is pending. The Scripture comparison below is also an editorial working document for his review; it does not imply that Bryan approved any wording, application, or theological conclusion. + +**Method:** Explicit Bible references were enumerated from the revised draft and compared with the New King James Version (NKJV) text retrieved from the linked BibleGateway passage pages on 2026-08-14. Existing source renderings are not silently replaced here. Each entry identifies whether the wording in the manuscript is exact, partial, interpretive, or a probable allusion. + +**NKJV attribution:** Scripture taken from the New King James Version®. Copyright © 1982 by Thomas Nelson. Used by permission. All rights reserved. The linked BibleGateway pages identify the translation as NKJV and provide the text used for this comparison. + +## Coverage summary + +| Reference | Where it is used in the revised draft | Verification result | +|---|---|---| +| 1 Timothy 1:5 | Chapter 0 and Chapter 1 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 14:26 | Chapters 0, 1, and 4 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Matthew 7:13 | Chapters 0 and 1 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Acts 13:36 | Chapters 0 and 5 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 22:6 | Chapter 1 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Romans 12:2 | Chapter 1 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 22:15 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 13:24 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 19:18 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 29:15 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Proverbs 29:17 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Ephesians 4:26 | Chapters 0 and 3; Calendar Day 1 | Reference is explicit; body wording is a partial quotation and does not reproduce the complete NKJV verse. | +| Ephesians 6:4 | Chapter 2 | Reference is explicit; body wording is an interpretive rendering, not verbatim NKJV. | +| Matthew 7:7 | Chapter 3 and Calendar Day 2 | Probable allusion; the reference is not stated in the source material and should be confirmed with Bryan. | +| John 5:19 | Chapter 0 and Chapter 1 | Probable allusion; the reference is not stated in the source material and should be confirmed with Bryan. | + +## Verified NKJV reference text + +### 1 Timothy 1:5 + +**Draft use:** The goal of instruction and the formation of love, a pure heart, a good conscience, and sincere faith. + +**NKJV text:** + +> Now the purpose of the commandment is love from a pure heart, from a good conscience, and from sincere faith, + +**Comparison:** The draft says, “The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith.” This is a source rendering or paraphrase, not verbatim NKJV. + +**Source:** [1] + +### Proverbs 14:26 + +**Draft use:** Reverent fear of the Lord, confidence, and refuge for children. + +**NKJV text:** + +> In the fear of the Lord there is strong confidence, And His children will have a place of refuge. + +**Comparison:** The draft expands “the fear of the Lord” to “the reverent fear of the Lord” and says that children “will always have a place of refuge.” Retain as source wording unless Bryan approves an editorial replacement with the NKJV wording. + +**Source:** [2] + +### Matthew 7:13 + +**Draft use:** The narrow path versus the broad way in the discussion of redemptive correction. + +**NKJV text:** + +> Enter by the narrow gate; for wide is the gate and broad is the way that leads to destruction, and there are many who go in by it. + +**Comparison:** The draft says, “Enter through the narrow gate, for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it.” The meaning is similar, but the wording is not verbatim NKJV. + +**Source:** [3] + +### Acts 13:36 + +**Draft use:** David serving his own generation and the multi-generational vision. + +**NKJV text:** + +> For David, after he had served his own generation by the will of God, fell asleep, was buried with his fathers, and saw corruption; + +**Comparison:** The draft says that David “served God's purposes in his own generation” and “was laid among his fathers and underwent decay.” This is an interpretive rendering, not verbatim NKJV. + +**Source:** [4] + +### Proverbs 22:6 + +**Draft use:** Training a child in the way he should go. + +**NKJV text:** + +> Train up a child in the way he should go, And when he is old he will not depart from it. + +**Comparison:** The draft says, “Train up a child in the way that he should go, and even when he grows old, he will not abandon it.” This is close in meaning but not verbatim NKJV. + +**Source:** [5] + +### Romans 12:2 + +**Draft use:** Renewal of the mind and refusing conformity to the world. + +**NKJV text:** + +> And do not be conformed to this world, but be transformed by the renewing of your mind, that you may prove what is that good and acceptable and perfect will of God. + +**Comparison:** The draft is a rearranged or interpretive rendering of the verse and should not be presented as a verbatim NKJV quotation without revision. + +**Source:** [6] + +### Proverbs 22:15 + +**Draft use:** Foolishness in a child's heart and correction. + +**NKJV text:** + +> Foolishness is bound up in the heart of a child; The rod of correction will drive it far from him. + +**Comparison:** The draft says, “The rod of discipline will remove it far from him.” The reference is correct, but the wording differs from NKJV. This passage requires separate safeguarding, developmental, theological, and pastoral review; NKJV verification does not constitute approval of an application. + +**Source:** [7] + +### Proverbs 13:24 + +**Draft use:** One of the correction-related Proverbs listed in Chapter 2. + +**NKJV text:** + +> He who spares his rod hates his son, But he who loves him disciplines him promptly. + +**Comparison:** Verify the quotation against this wording before publication. Any application to physical discipline must remain clearly separated from translation verification and undergo safeguarding review. + +**Source:** [8] + +### Proverbs 19:18 + +**Draft use:** One of the correction-related Proverbs listed in Chapter 2. + +**NKJV text:** + +> Chasten your son while there is hope, And do not set your heart on his destruction. + +**Comparison:** Verify the quotation against this wording before publication. The verse must not be presented as automatic approval of a discipline method. + +**Source:** [9] + +### Proverbs 29:15 + +**Draft use:** One of the correction-related Proverbs listed in Chapter 2. + +**NKJV text:** + +> The rod and rebuke give wisdom, But a child left to himself brings shame to his mother. + +**Comparison:** Verify the quotation against this wording before publication. The verse's presence does not resolve developmental, legal, safeguarding, or pastoral questions about application. + +**Source:** [10] + +### Proverbs 29:17 + +**Draft use:** One of the correction-related Proverbs listed in Chapter 2. + +**NKJV text:** + +> Correct your son, and he will give you rest; Yes, he will give delight to your soul. + +**Comparison:** Verify the quotation against this wording before publication and distinguish the biblical reference from the source teaching's proposed method of correction. + +**Source:** [11] + +### Ephesians 4:26 + +**Draft use:** The “do not let the sun go down” principle in the marriage discussion and Calendar Day 1. + +**NKJV text:** + +> “Be angry, and do not sin”: do not let the sun go down on your wrath, + +**Comparison:** The draft uses only the latter portion, “...do not let the sun go down on your anger.” It is a partial quotation and changes “wrath” to “anger.” If retained, identify it as a partial source rendering or replace it with the complete NKJV quotation after Bryan's review. + +**Source:** [12] + +### Ephesians 6:4 + +**Draft use:** Fathers, anger/provocation, and training and instruction of children. + +**NKJV text:** + +> And you, fathers, do not provoke your children to wrath, but bring them up in the training and admonition of the Lord. + +**Comparison:** The draft says, “Fathers, do not provoke your children to anger, but bring them up in the discipline and instruction of the Lord.” This is interpretive wording, not verbatim NKJV. + +**Source:** [13] + +## Probable allusions requiring Bryan's confirmation + +### Matthew 7:7 + +**Draft use:** “Buscad y hallaréis (Seek and you will find)” in Chapter 3 and “Seek, and you will find” in Calendar Day 2. + +**NKJV text:** + +> Ask, and it will be given to you; seek, and you will find; knock, and it will be opened to you. + +**Status:** Matthew 7:7 is the probable source, but the source material does not state the reference. Confirm the intended reference with Bryan before adding it to the body as a Scripture citation. + +**Source:** [14] + +### John 5:19 + +**Draft use:** “I don't do anything but I see my father do it. I don't say anything but I hear my father say it.” + +**NKJV text:** + +> Then Jesus answered and said to them, “Most assuredly, I say to you, the Son can do nothing of Himself, but what He sees the Father do; for whatever He does, the Son also does in like manner. + +**Status:** John 5:19 is a probable allusion to the source teaching's wording, but the source material does not state the reference and the wording is not verbatim NKJV. Confirm with Bryan before attaching the reference or replacing the source quotation. + +**Source:** [15] + +## Editorial actions still required + +1. Bryan should confirm whether the body should retain the source renderings, replace them with exact NKJV quotations, or show both side by side. +2. Any replacement of source wording is an editorial change and must remain visible for Bryan's review. +3. Add explicit NKJV labels to body quotations only after the wording has been reconciled with this register. +4. Keep Scripture verification separate from safeguarding approval. In particular, the Proverbs passages and the manuscript's switch, rod, blanket-training, and correction-room material require independent safeguarding, developmental, legal, theological, and pastoral review. +5. Confirm all probable allusions—especially Matthew 7:7 and John 5:19—with Bryan before treating them as intended references. + +## Sources + +[1] https://www.biblegateway.com/passage/?search=1%20Timothy%201%3A5&version=NKJV +[2] https://www.biblegateway.com/passage/?search=Proverbs%2014%3A26&version=NKJV +[3] https://www.biblegateway.com/passage/?search=Matthew%207%3A13&version=NKJV +[4] https://www.biblegateway.com/passage/?search=Acts%2013%3A36&version=NKJV +[5] https://www.biblegateway.com/passage/?search=Proverbs%2022%3A6&version=NKJV +[6] https://www.biblegateway.com/passage/?search=Romans%2012%3A2&version=NKJV +[7] https://www.biblegateway.com/passage/?search=Proverbs%2022%3A15&version=NKJV +[8] https://www.biblegateway.com/passage/?search=Proverbs%2013%3A24&version=NKJV +[9] https://www.biblegateway.com/passage/?search=Proverbs%2019%3A18&version=NKJV +[10] https://www.biblegateway.com/passage/?search=Proverbs%2029%3A15&version=NKJV +[11] https://www.biblegateway.com/passage/?search=Proverbs%2029%3A17&version=NKJV +[12] https://www.biblegateway.com/passage/?search=Ephesians%204%3A26&version=NKJV +[13] https://www.biblegateway.com/passage/?search=Ephesians%206%3A4&version=NKJV +[14] https://www.biblegateway.com/passage/?search=Matthew%207%3A7&version=NKJV +[15] https://www.biblegateway.com/passage/?search=John%205%3A19&version=NKJV diff --git a/projects/covenant_parenting_bryan_hickman_parent_review.md b/projects/covenant_parenting_bryan_hickman_parent_review.md new file mode 100644 index 0000000..35e0781 --- /dev/null +++ b/projects/covenant_parenting_bryan_hickman_parent_review.md @@ -0,0 +1,716 @@ +--- +title: "The Pattern of Covenant Parenting — Parent Review Edition" +status: parent-review-edition +source: "NotebookLM book-style synthesis from audio recordings of Bryan Hickman's teaching sessions" +derived_from: "[[covenant_parenting_bryan_hickman]]" +tags: + - parenting + - covenant-parenting + - church-teaching + - family + - discipleship + - Bryan-Hickman + - book-draft + - parent-review +--- + + + + +## Chapter 0: Introduction + +Parenting is often reduced to the question of how to make a child behave. We ask how to stop the arguing, correct the disobedience, establish better habits, or get through the next difficult stage. Those questions matter, but they are not the whole purpose of training a child. The deeper work is to form a heart that can grow in love, a clear conscience, and sincere faith. As 1 Timothy 1:5 (NKJV) says, "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." The hope is not simply to produce outward compliance. It is to raise sons and daughters who can come to know their heavenly Father, receive their identity from Him, and walk faithfully in the purpose He gives them. + +That kind of formation begins with the parents. Children learn far more from what they see in us than from what we say to them. They watch how we respond when we are tired, disappointed, interrupted, or afraid. They notice whether our words agree with our lives. In the early years, a parent becomes a child's first picture of authority, love, protection, and security. This makes parenting a form of discipleship, but it also makes it a form of parent training. Before we can ask our children to listen, we have to become people who listen to the Lord. Before we can ask for self-control, we have to let God deal with our anger. Before we can lead a child toward healing, we have to be willing to bring our own wounds into His light. + +The model for this surrendered life is Jesus. His life shows what it looks like to depend on the Father rather than act from self-protection or self-importance: "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." The point is not to make parents flawless. It is to help us become honest, obedient, teachable people whose children can see us turning toward God when we fail. Proverbs 14:26 (NKJV) says, "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." A child's security grows when the adults around them are learning where true security comes from. + +That refuge is built inside the atmosphere of the home. Parenting does not happen in isolation from marriage, family rhythms, work, money, or the condition of the parents' hearts. A peaceful household requires husband and wife to pursue unity, repair conflict, and refuse to make their children carry the weight of adult disagreement. It requires daily deposits of appreciation, patient listening, and the humility to apologize when we have dishonored one another. It also requires practical care: noticing when a spouse is exhausted, stepping in when help is needed, and protecting the home from becoming a place where pressure is constantly passed down to the children. The thirty-day breakfast covenant and the command in Ephesians 4:26 (NKJV) not to let the sun go down on anger belong to this larger work of building peace, not to a formula for pretending that conflict never exists. + +Within that atmosphere, parents can establish boundaries without making fear the center of the relationship. Children need direction. They need to know what is safe, what is expected, and what belongs outside the life of the family. Jesus' warning about the broad and narrow ways in Matthew 7:13–14 (NKJV) gives this work a larger frame. Training means helping children learn to listen, to turn away from harmful influences, and to practice what is good until wisdom becomes part of their own character. When a child disobeys, the goal must be restoration rather than humiliation. A parent who is angry or out of control should pause rather than use discipline to release frustration. Correction should protect the child's dignity, leave room for truth and disclosure, and lead the family back toward calm, belonging, and trust. The practical questions of boundaries, correction, and safety require care, patience, and age-appropriate wisdom; they should never be separated from love. + +This formation takes place in ordinary life. It happens while parents are deciding what enters the home through television, phones, tablets, and other media. It happens when a mother or father chooses presence over constant distraction, when a family shares work instead of treating chores as an interruption, and when children are welcomed into the real responsibilities of household life. The goal is not to create an artificial world where children never encounter difficulty. It is to give them a secure place from which they can learn how to meet difficulty with faith, responsibility, and compassion. A boundary can be an expression of care. A shared task can become a lesson in service. A quiet conversation can shape a child's understanding of God more deeply than a lecture. + +The book also looks beyond the immediate moment. Parents are not only managing today's behavior; they are building on behalf of people they may never meet. This is the long view behind Proverbs 22:6 (NKJV): "Train up a child in the way he should go, and even when he grows old, he will not abandon it." The healing we pursue, the patterns we refuse to pass on, the promises we keep, and the way we order our lives all become part of the foundation our children inherit. This is the idea of generational advancement: children should not have to begin by fighting every battle their parents were given grace to face. They will have their own struggles and their own relationship with God, but they can stand on a foundation of greater security, honesty, and wisdom. That is why parental humility matters. We can tell our children that we are still growing, that the Lord is still dealing with us, and that our imperfections do not cancel our responsibility to keep moving toward Him. + +This vision also changes how we think about the place of family in the wider work of the church. God comes first, family cannot be sacrificed to public ministry, and ministry must flow from a life that is being lived truthfully at home. Parents need the wisdom of mature and trustworthy people around them, and children need safe access to help beyond their parents when they need it. A covenant family is not an isolated family. It is a household learning to receive correction, offer hospitality, repair what has been damaged, and make room for the work God is doing across generations. + +The pages that follow develop these convictions through the realities of family life: how parents model the Father, how a home learns to respond to conflict, how husband and wife protect the atmosphere of the household, how families guard the influences shaping their children, how ordinary work and presence become part of discipleship, and how parents can rebuild trust when they are beginning late or carrying a complicated history. The final reflections and exercises are meant to move these ideas out of the abstract and into conversations, prayers, decisions, and small daily practices. Covenant parenting is not a checklist that proves we are doing everything right. It is a living relationship, walked out before the Lord and before our children, one faithful response at a time. + +--- + + +## Chapter 1: The Foundations of Modeling & Multi-Generational Vision + + +The true purpose of child training is not to construct a superficial set of behavioral modifications or to simply "tweak" outward conduct. It is to lay a foundational, structural establishment. Specifically, the ultimate goal is to raise children who can transition cleanly into their own spiritual inheritance. As the scriptures state in 1 Timothy 1:5 (NKJV): + +> "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." + +Our target is to have children who seamlessly step into a personal relationship with their heavenly Father, and in that place find their Kingdom identity and faithfully walk out their Kingdom purpose in this generation. [7] + +![The covenant parenting pathway](assets/covenant-parenting-pathway.svg) + +The transition from childhood through adolescence is intended by God to be a seamless, direct journey into relationship with the Father [17, 18]. Society has largely convinced itself that teenagers must undergo a painful, mandatory phase of rebellion simply because they do not know what else to do [17]. However, this expectation is a deception that lowers our standards and shapes our actions toward failure [17]. God's design is for children to move directly from childhood into a vibrant, personal relationship with Him [17, 18]. + +To understand how to train children, we must first look at Jesus. Jesus did not come to earth merely to perform miracles or display His divinity; rather, He came to model what a son can do when entirely dependent upon his Father [11, 12]. He walked out His earthly life as a man, not as God, to demonstrate that obedience is fully possible for a heart surrendered to the Father [12]. He lived by a simple, profound standard: + +> "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." [12, 23] + +Just as Jesus modeled sonship for us, parents are called to model the Father to their children [12]. In the eyes of a young child, the parent is effectively "God"—the ultimate representation of authority, love, and security in their life [15]. This is a sobering reality [13, 15]. Parents have both the privilege and the solemn responsibility to demonstrate face-to-face what a loving Father and Mother are like until the child reaches an age of spiritual understanding where that devotion is transitioned to the Lord [15]. + +The single most powerful force that will affect your children is for you, the parent, to become an obedient son of God [14]. Because parents are always modeling, every reaction—even after a hard day when we are on edge—sets an example [13]. We cannot expect our children to walk in instant obedience to our voice if we ourselves are not walking in instant obedience to the voice of our heavenly Father [13]. + +To parent effectively, we must reject short-sightedness and adopt a multi-generational vision [8, 9, 10]. We see the danger of passivity illustrated in the history of the Church. During the "Jesus movement" of the 1970s, a wave of believers dropped out of school and stopped preparing for the future under the premise that "Jesus is coming back" [9]. Because they failed to build for the next generation, the world quickly stepped in and took over every major institution [9]. + +Conversely, if we believe that the Kingdom will be fully established only in our lifetime, we risk failing to prepare our children for the long-term work [9]. While we must always look for the "end suddenly," we must build and train our children as if the work will span multiple generations [9, 10]. We are not going to build it all in our lifetime; our task is to raise up the little ones placed in our hands so that they will be faithful to God's purposes in their own generation [7]. As Acts 13:36 (NKJV) records of King David: + +> "For David, after he had served God's purposes in his own generation, fell asleep and was laid among his fathers and underwent decay." [7] + +Because children copy what we model, the child training process is, in reality, a parent training process [15, 128]. If we carry unresolved brokenness, anger, or fear, we will pass those patterns down [15, 46]. Allowing the Lord to heal us requires deep humility and submission, but it is the greatest gift we can offer our children [15]. As we grow in our reverence and fear of the Lord, we gain a strong confidence that creates a literal shield of security and a place of refuge for our households [16]. This is beautifully promised in Proverbs 14:26 (NKJV): + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [16] + +When we allow the Lord to deal with our own deep-seated insecurities, we achieve what is called "generational advancement" [46, 47, 161, 162]. Children who are raised in an atmosphere of genuine spiritual security do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome [46, 47, 162]. Instead, they get to stand on their parents' advancements and leap forward into their own destiny [46, 162]. This establishes the foundation for the lifelong training command found in Proverbs 22:6 (NKJV): + +> "Train up a child in the way that he should go, and even when he grows old, he will not abandon it." [16] + +### Themes captured for future book development + +- The intended goal of training is a child's personal relationship with the heavenly Father, Kingdom identity, and Kingdom purpose—not merely compliant behavior. +- Adolescence is presented as a potential continuation of relationship with God rather than an inevitably rebellious stage. +- Jesus is presented as the ultimate model of dependent sonship and surrendered obedience. +- Parents model constantly; their reactions under pressure are formative just as much as their deliberate instruction. +- Parent healing and obedience are central to breaking the transmission of fear, anger, insecurity, and family brokenness. +- Multi-generational parenting requires building for a future beyond the parents' own lifetime. +- "Generational advancement" describes children standing on the spiritual and relational progress of their parents. +- The chapter connects parental modeling, healing, refuge, and lifelong formation with Proverbs 22:6 (NKJV). + +### Editorial and pastoral review flags + +- Verify the Scripture quotations and references, including the intended Bible translations. +- Preserve the distinction between the teaching's theological claims and later editorial commentary. +- The historical claim concerning the 1970s Jesus movement should be sourced or qualified if included in a published edition. +- The claim that rebellion is not an inevitable feature of adolescence should be presented pastorally and carefully, acknowledging individual development, temperament, disability, trauma, and family context. +- Clarify the phrase "until the child reaches an age of spiritual understanding" and how the teaching defines that transition. + +--- + + + +### Reflection and Action + +#### Heart-level reflections +**Dependent Sonship:** Jesus modeled a life of complete dependence on His Father ("I don't do anything but I see my father do it" [9]). In what areas of your daily life are you struggling to walk in instant obedience to your Heavenly Father? How might this struggle affect your children's ability to obey your voice [11]? + +**The Power of the Model:** In the eyes of a young child, you represent God—His authority, His love, and His safety [10, 62]. When you come home on edge or exhausted, what kind of father or mother are you modeling [11, 60]? + +**Multi-Generational Legacy:** Are there areas where you have fallen into passive parenting or short-sightedness [11, 12]? If you parented with a vision that extended three generations deep, what would you change about your household today [12, 55]? + +#### Action steps +**The Refuge Audit:** Identify one major source of fear, anger, or insecurity in your own heart [13]. Set aside a specific time to bring this before the Lord, asking Him to deal with the root of this brokenness [13]. Re-read Proverbs 14:26 (NKJV): + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [13] + +Write down how you will yield to His healing hand this week to make your home a stronger refuge [13, 62]. + + +## Chapter 2: Redemptive Correction: Straightening the Path with Love + + +### "Narrowing Up" vs. The Demand for "Experiences" + +Scripture defines training a child through the Hebrew lens of "dedicating, disciplining, narrowing up, or choking out" [18]. It means to straighten a child's path, protecting their outlook, behavior, ideals, views, and influences from being overwhelmed by the weeds of the world [18]. This directly contradicts modern humanistic reasoning, which insists children must be given broad "experiences" to discover themselves [19]. This humanistic philosophy is a widening of the way, which the Bible explicitly warns against in Matthew 7:13 (NKJV): + +> "Enter through the narrow gate, for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it." [19] + +Parents are given the responsibility to shape their children's minds and protect them from worldly conformity [18, 21]. As Romans 12:2 (NKJV) charges us: + +> "And do not be conformed to this world, but be transformed by the renewing of your mind, so that you may prove what the will of God is, that which is good and acceptable and perfect." [21] + +The renewal of the child's mind is a task delegated directly to the parents [21, 22]. It requires parents to actively narrow up their child's path, choosing carefully what enters their hearts and minds rather than letting them wander broad roads of secular influence [18, 22]. + +### Debunking the Myth of Adolescent Rebellion + +A cornerstone of modern parenting is the belief that teenagers must naturally go through a painful, dramatic season of rebellion [17]. We are told this is just a normal developmental phase [17]. However, this expectation is a deceptive lie that shapes our thoughts and actions toward failure [17]. + +In God's design, there is no mandatory period of rebellion [17]. The scriptural transition from childhood to maturity is intended to be a seamless progression directly into a personal relationship with the Father [17, 18]. When boundaries are clearly laid and maintained with love, teenagers do not have to wander into rebellion; they can walk straight from parental guidance into divine devotion [17, 18]. + + +### The Mechanics of Correction: The Switch and the Loving Hand + +To remove the foolishness that is naturally bound up in a young heart, God has provided specific, loving tools [23, 24]. As Proverbs 22:15 (NKJV) states: + +> "Foolishness is bound up in the heart of a child. The rod of discipline will remove it far from him." [24] + +Scripture is rich with wisdom regarding the diligent application of this rod of reproof: + +- **Proverbs 13:24 (NKJV):** "He who withholds the rod hates his son, but he who loves him disciplines him diligently." [25] +- **Proverbs 19:18 (NKJV):** "Discipline while there's hope, and do not desire his death." [25] +- **Proverbs 29:15 (NKJV):** "The rod of reproof gives wisdom, but a child who gets his own way brings shame to his mother." [25] +- **Proverbs 29:17 (NKJV):** "Correct your son and he will give you comfort. He will also delight your soul." [25, 26] + +While humanism rejects these commands or distorts them into abuse, biblical correction is defined by tenderness and absolute control [26, 28, 29]. In our home, we established a strict physical boundary: our hands were made exclusively for holding, hugging, and expressing love [26, 29, 31]. We never used our hands to strike a child, nor did we use heavy, rigid tools like belts or wooden spoons, which can cause physical harm or anger [26]. + +Instead, the biblical "rod" refers to a tender, limber shoot or reed—such as a small lilac switch (roughly a quarter of an inch or smaller) with shaved bumps [27, 117]. This tool is designed to produce a quick, harmless sting on the bottom or thigh that instantly captures the child's attention without ever causing physical damage [26, 27, 118]. + +Crucially, this physical correction serves a redemptive spiritual purpose: it completely removes guilt and shame [26]. When a child is corrected, the spiritual debt of their disobedience is paid instantly [26, 30]. There is no lingering condemnation, no standing in corners, and no emotional isolation [26, 29, 30]. Once corrected, the child is immediately embraced, loved, and restored to perfect right standing within the home [26, 29, 30]. + +### The Rule of Calmness: Correcting Without Anger + +Scripture issues a vital warning to fathers in Ephesians 6:4 (NKJV): + +> "Fathers, do not provoke your children to anger, but bring them up in the discipline and instruction of the Lord." [22] + +A parent must never, under any circumstance, correct a child while feeling angry, agitated, or on edge [26, 29, 53, 54]. Correcting in anger is not biblical discipline; it is an expression of the parent's lack of self-control [54]. It models anger to the child, which violates our primary calling as models of the Father [54]. + +If you find yourself becoming agitated or losing your emotional composure during a correction, you must stop immediately [29, 54]. It is far better to let an act of disobedience go uncorrected in that moment than to correct your child in anger [54]. The parent must first go before the Lord, find peace, and handle the situation only when they can do so with a calm voice, a peaceful facial expression, and a tender heart [29, 52, 53, 54]. + + +### The Correction Room: Restoring Dignity in Private + +To preserve a child's security and dignity, correction must never be a public spectacle [116]. It should not be done in front of guests, siblings, or in public places [34, 116]. + +Instead, correction should take place in a private, designated area—such as a bedroom or bathroom [29, 116]. This private environment—the "correction room"—is a place of calm, reassurance, and ultimate security [29, 116]. By keeping correction private, we honor our children, shield them from public embarrassment, and ensure that the process remains a tender, focused interaction of restoration between parent and child [29, 116]. + +### Themes captured for future book development + +- "Narrowing up" is presented as intentional formation and protection of a child's heart, mind, influences, ideals, and direction. +- The chapter contrasts parental formation with a philosophy of broad, unbounded experience and self-discovery. +- Adolescent rebellion is presented as neither inevitable nor divinely required. +- Correction is framed as a redemptive process intended to remove shame, restore relationship, and return the child to belonging within the household. +- The source teaching emphasizes calmness, self-control, privacy, and immediate reassurance during correction. +- The chapter distinguishes the source's preferred correction tool from striking with hands or using heavy, rigid objects. +- Private correction is connected to the preservation of a child's dignity and security. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, wording, and translation choices before publication. +- The teaching's interpretation of the Hebrew concept translated as "train" and its use of terms such as "narrowing up" or "choking out" should be checked against reputable Hebrew lexicons and the original recording context. +- The claims about adolescent rebellion, humanism, and the history of parenting should be framed as the speaker's theological and cultural argument rather than presented as settled developmental or historical fact. +- The physical-discipline recommendations require careful safeguarding review before any public distribution. Do not present a thin implement, a specific body location, or a claimed "harmless" sting as universally safe; laws, professional guidance, child age, disability, trauma history, and individual circumstances vary. +- For a parent-facing publication, prioritize non-violent, developmentally appropriate correction and include clear guidance for pausing, de-escalating, seeking help, and protecting children from injury or fear. +- The phrase "spiritual debt ... paid instantly" should be examined theologically and pastorally so that children are not taught that physical pain is required to obtain forgiveness, belonging, or restored relationship. +- Clarify what safeguards make a private correction setting genuinely safe and accountable, especially when the child is isolated with an adult. + +--- + + + +### Reflection and Action + +#### Heart-level reflections +**The Rule of Calmness:** Do you ever correct your children out of irritation, frustration, or a desire for convenience [22, 101]? What is the difference between biblical discipline (which restores) and humanistic punishment (which lingers) [21, 76]? + +**Removing Shame:** Does correction in your home leave a lingering shadow of guilt or emotional distance, or does it result in immediate restoration, hugs, and perfect right standing [21, 76, 79]? + +#### Action steps +**The Hand Consecration:** Make a solemn covenant with your spouse today that your hands are strictly reserved for holding, hugging, and expressing love [20, 73]. Remove all wooden spoons, belts, and other rigid implements from your parenting toolbox [20, 73]. + +**Setting Up the "Correction Room":** Identify a private room in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 163]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that designated room [20, 164]. Agree to never correct your child in front of guests, siblings, or in public [23, 163]. + +**Practice Stopping:** If you feel your blood pressure rising during a correction, commit to saying: "I am not in a position to handle this right now." Ask your spouse to cover for you, or find a controlled situation before the Lord until you can speak in a calm, tender voice [22, 78, 101]. + +## Chapter 3: Parental Unity & the Atmosphere of the Home + + + +### The Principle of a Unified Front + +A central pillar of a peaceful home is the absolute, seamless unity between husband and wife [159]. Parents must understand that children are highly astute observers; they are experts at sensing any lack of alignment and will naturally seek to exploit any crack to sow division or pit one parent against the other [159, 164]. + +To prevent this, parents must maintain a completely united front [159]. In our home, we established a simple but powerful protocol. Whenever a child approached one parent asking for a treat, more television time, or a specific permission, the immediate response was always: + +> "What did Dad say?" or "What did Mom say?" [168, 169] + +If the other parent had already given an answer, the discussion was instantly over [169]. The parent receiving the second appeal would simply state, "Well, there is your answer," ensuring that the child's attempt to bypass authority was met with a solid wall of parental agreement [169]. This level of consistency and predictability is not a rigid, legalistic exercise; rather, it provides children with an immense sense of security because they know exactly where the boundaries stand [47, 62, 185]. + +### Private Alignment over Public Disagreements + +Maintaining a united front means that parents must make a covenant never to disagree, correct, or expose each other's faults in front of their children [162, 163, 164]. Doing so publicizes division and teaches children how to manipulate their parents, which ultimately tears down the spiritual authority of the home [164]. + +Inevitably, there will be moments when one parent observes their spouse making a decision or handling a disciplinary situation in a way they wouldn't have chosen [169, 170]. The natural temptation is to immediately step in and express "wisdom" or correct the spouse on the spot [170]. This is a critical mistake [170]. + +When you feel that irritation rise, you must first deal with your own internal reaction [170]. In front of the children, you must completely support your spouse's decision [162, 163]. Any adjustments, differing views, or scale of discipline must be discussed strictly in private, behind closed doors [162]. In our home, if Deanna handled a situation and I disagreed with the method, we would discuss it privately later so that we could align our hearts before the Lord, but the child always saw us standing as one [55, 162]. + +### Healing the Crack: Humility and Restoration + +Because parents are human, there will be times when they fail to maintain this standard and inadvertently display division or disrespect in front of the child [167]. When this happens, it must be corrected immediately in the spirit of humility [164, 166]. + +First, the parents must align privately [164]. The offending parent should go to their spouse and say: + +> "Cariño, lo siento. I realize that I made you look bad in front of the child, and I repent." [164] + +Second, depending on the situation, it is often necessary to go directly to the child to model genuine repentance and restore the standard of honor [164, 165]: + +> "What I said to you about your mother/father was wrong. The Lord is working in my heart, and I cannot make an excuse for what I did. I want to apologize to you for deshonrar (dishonoring) them in front of you, because they deserve honor." [165] + +There is extraordinary, transformative power when a parent is willing to be authentic and humble before their children [166]. It models a soft, teachable heart and teaches children how to walk out repentance in their own lives [166]. + +![A family rhythm of humility, repair, and peace](assets/family-rhythm-of-repair.svg) + +### Atmosphere of Peace and Order + +The physical environment of the home directly affects its spiritual atmosphere [157, 159]. A clean, orderly house is a powerful catalyst for a home filled with peace [159]. When a mother takes joy and satisfaction in nurturing and keeping the home, and the husband actively notices, appreciates, and verbalizes his gratitude, it weaves a beautiful bond of peace over the entire household [159, 160]. + +This atmosphere also requires parents to be highly sensitive to one another's limits [160]. Parenting is a demanding, daily labor, and there are times when "too much is too much" and one spouse is exhausted or on edge [143, 160]. In those moments of high stress, the other spouse must be ready to step in, "take the ball," and cover for them [48, 160]. This mutual support ensures that correction is never administered out of exhaustion or emotional agitation [48, 71, 185]. + +### Nurturing the Marriage: Horizontal and Vertical Communication + +We must recognize that child training is not an isolated task; it is completely interwoven with every other area of family life, particularly the marriage relationship [157, 158]. If there is no peace between husband and wife, it is impossible to have lasting peace in training the children [158]. + +Healthy communication requires us to stop simply waiting for our turn to speak so we can make our own point, and instead learn to truly listen to one another's hearts [171, 172]. This communication must be intentionally nurtured [173]. + +To build this horizontal connection, we must make constant, deliberate "positive deposits" into our spouse's emotional bank account [181, 182]. As the proverb of the household says, if you put a coin in the piggy bank every single day, it will eventually be filled [182]. + +A highly practical and transformative exercise for married couples is to commit to a 30-day breakfast covenant [180]. For thirty consecutive days, sit down together for breakfast, and each day, make a specific, intentional positive deposit by telling your spouse one thing you sincerely estimate and appreciate about them [180, 181]. + +For husbands, this requires stepping away from vague, general statements like "You know I love you" or "You look good," and instead sharing specific, particular details of appreciation [183]. For wives, it means actively finding ways to make their husbands feel proud and respected, rather than assuming they only need to receive appreciation without giving it [183, 184]. This intentional focus changes the entire climate of the home because, as Scripture principles teach: + +> "Buscad y hallaréis (Seek and you will find)." [181] + +If you look for faults, you will surely find them; but if you intentionally seek the good in your spouse, you will find it and multiply it [181]. + + +### The Covenant Rule: Never Go to Bed Angry + +To safeguard the home's atmosphere, couples must establish a firm covenant line that they resolve never to cross [180]. Chief among these is the scriptural command: + +> "...do not let the sun go down on your anger." [180] + +In our thirty-seven years of marriage, we decided we would never go to sleep angry with one another [174, 177]. If a disagreement arose, we would take a "time out" to pray individually, allowing the Lord to deal with our own hearts first [175]. Then, we would return, ask for forgiveness where we had failed, and pray together [178]. We did not always agree on the specific point of contention immediately, but we agreed on God and gave Him the place of preeminence in our marriage [178]. + +As a husband, the Lord taught me that I must function as the priest of my home [177]. When my wife made a mistake or did something wrong, the Lord would use it to deal with me first, instructing me to carry the burden, be silent, and go to the cross for her just as Christ did for the Church [177]. When both husband and wife surrender their right to be right and prioritize the covenant, they establish a secure spiritual foundation that their children will naturally inherit, creating a magnificent generational advancement [8, 178, 179]. + +### Themes captured for future book development + +- Parental unity is presented as a source of security, predictability, and authority within the home. +- The chapter emphasizes checking with the other parent rather than allowing children to bypass a previously given answer. +- Disagreements about decisions or discipline are to be handled privately rather than displayed before the children. +- When parents fail publicly, immediate humility, apology, and restoration are presented as a model of repentance. +- Household order, appreciation, mutual awareness, and practical support are connected to a peaceful atmosphere. +- Marriage communication is framed as intentional listening and the repeated making of positive relational deposits. +- The 30-day breakfast covenant is presented as a concrete practice of daily appreciation. +- The command not to let the sun go down on anger is applied as a marriage covenant of prayer, forgiveness, and reconciliation. +- The chapter presents parental surrender, marital covenant, and generational advancement as closely connected. + +### Editorial and pastoral review flags + +- Verify all Scripture references, quotations, translations, and the Spanish phrase "Buscad y hallaréis" before publication. +- Preserve the distinction between the teaching's source claims and later editorial interpretation. +- Clarify the difference between healthy parental unity and coercive control. A united front should not require a parent to conceal abuse, unsafe conduct, serious error, or a child's legitimate disclosure. +- Children should be able to speak safely with either parent. The "What did Dad/Mom say?" practice should not be used to shut down questions, conceal a mistake, or prevent a child from reporting harm. +- The instruction to support a spouse publicly and resolve disagreements privately needs explicit safeguarding exceptions for abuse, intimidation, coercive control, threats, or unsafe discipline. In those situations, protecting the child and seeking qualified help takes priority over preserving appearances. +- The chapter's gendered descriptions of mothers nurturing the home, husbands leading as "priest," and wives making husbands feel proud should be identified as the speaker's marital framework rather than treated as the only faithful model for every family. +- "Never go to bed angry" should be presented with room for healthy time-outs, sleep, boundaries, and professional help; immediate resolution is not always safe or wise during escalation. +- Clarify the meaning, origin, and practical structure of the 30-day breakfast covenant when the original recording context is available. + +--- + + + +### Reflection and Action + +#### Heart-level reflections +**The Cracks of Division:** Children are astute observers who look for alignment [24]. Can your children find any "cracks" between you and your spouse to get a different answer [24, 189]? + +**Private Alignment:** Have you fallen into the trap of correcting, undermining, or arguing with your spouse in front of the kids [26, 193]? How can you build a stronger habit of waiting until you are behind closed doors to resolve parenting differences [26, 27, 192]? + +#### Action steps +**The "What Did They Say?" Protocol:** Practice the immediate gatekeeping response. Whenever a child asks for permission or a treat, always ask: "What did Dad say?" or "What did Mom say?" [24, 25, 198]. If the other spouse has given an answer, the discussion is permanently closed [25, 199]. + +**The 30-Day Breakfast Covenant:** Set your alarm 30 minutes earlier. Sit down together for breakfast every day for the next 30 days [32, 210]. Each morning, share one specific, particular detail that you sincerely estimate and appreciate about your spouse [32, 33, 211, 213]. Focus on finding the good, and watch the atmosphere of your marriage and home transform [34, 211]. + +**The Sunset Covenant:** Commit to the rule of Ephesians 4:26 (NKJV): + +> "...do not let the sun go down on your anger." [34, 210] + +Agree that no matter the disagreement, you will pray individually, come together, ask for forgiveness, and pray together before sleeping [34, 208]. + + +## Chapter 4: Guarding Influences & Practical Daily Wisdom + + + +### Textile Boundaries & Early Training + +To train a child to listen to their parents' voices, training must begin in infancy with simple, knowable boundaries. Rather than overwhelming a toddler with a laundry list of hundreds of rules that they are incapable of following, parents should establish a few select, physical boundaries [72, 73]. + +A highly practical and successful method for this is blanket training [73]. Spreading a small blanket on the floor, the parent instructs the infant (typically starting around six to nine months of age): + +> "I don't want you going off of that." [73] + +Inevitably, the child's curiosity or old nature will lead them to test the boundary and attempt to crawl off [73, 79, 80]. In that moment, the parent administers a light, instant correction—such as a gentle tap on the hand—and places them back on the blanket, reinforcing the instruction [73]. Within just a few repetitions, the infant learns to associate their disobedience with the immediate correction and willingly remains within the border [73]. + +The goal of this training is not merely to restrict the child's movement or to protect household furniture, such as a coffee table [73]. Rather, it is to train the child to listen to and obey the parent's voice [73]. These physical boundaries provide children with immense security [74]. Just as the Lord establishes boundaries for our lives to keep us secure, clear boundaries in the home let children know exactly what is acceptable, preventing a frantic, heavily policed household and fostering an environment of deep spiritual peace [73, 74, 112]. + +### Guarding the Mind: "Tell-a-Vision" and Media + +In a modern world saturated with technology, parents must exercise extreme vigilance regarding television, tablets, and media [115, 116]. The world's media system is highly intentional; it is designed with specific "channels" and "programming" to literally "tell your vision"—shaping the ideals, desires, and minds of children away from the Kingdom of God [116]. + +Allowing a television or a tablet to act as a surrogate parent is a dangerous convenience [116]. It acts as a deliberate distraction designed by the adversary to draw parents away from their greatest earthly blessing and responsibility: actively training their children [116]. While completely avoiding media in today's society is a challenge, limiting it strictly produces extraordinary, healthy fruit [115, 116]. By closing the door to secular programming, we prevent the enemy from exploiting gaps in our children's security and instead keep their minds pure and focused on the atmosphere of the home [105, 116]. + + +### Nurturing, Presence, and Owning Your Time + +Effective child training cannot be outsourced; it is a precious gift and responsibility given directly by God to the parents [114, 118]. This training requires physical and mental presence [52]. You cannot train up a child in the way they should go if you are not there to walk beside them [52, 118]. + +This truth carries profound implications for the roles of both the mother and the father: + +#### The Mother as the Nurturer + +A mother's primary calling in most circumstances is to stay home, keeping the house and nurturing the family [117, 166]. In this sacred role, she fulfills her God-given ability to multiply [117, 118]. When a husband brings home a paycheck, the wife multiplies it into food and a meal; when provided a house, she multiplies it into a warm, peaceful home [118]. The work a mother does in the home far surpasses any secular career or paycheck [117, 118, 166]. Husbands must actively celebrate, honor, and protect this role rather than allowing the diabolical wisdom of the world to demean it [117, 118, 166]. + +#### The Father as the Provider of Time + +For a mother to stay home, the father must be willing to step outside of the conventional worldly system to prioritize his family [120]. The Lord gave a specific word of wisdom: "Own your time." [120]. Fathers must seek the Lord for creative strategies to free up their schedules so they can be available, present parents [120]. This may mean starting a simple business or adjusting financial expectations to avoid the diabolical trap of Egypt, which demands two incomes and keeps parents too busy making bricks to build the family altar [117, 119, 120]. + +### Integrating Children into Daily Work + +A common mistake parents make is separating their daily lives into strict categories of "work" (which is treated as a burden to be done alone) and "fun" (which is treated as the only desirable activity) [157]. While it is often faster and easier for a parent to paint a wall, do the dishes, or fold the laundry by themselves, this misses a critical opportunity for training [157]. + +Parents should actively integrate their children into all the affairs of daily life [115, 157]. Give an eight-year-old a paint roller and teach them how to paint; let the toddlers help push the buttons on the washing machine or play in the sink while doing dishes [157]. When children are included in these tasks, they do not grow up hating work or viewing it as an awful chore [157]. Instead, they learn that work is a natural, joyful expression of family life [157]. Ultimately, children do not need constant, artificial entertainment; they simply want to be with their parents, and sharing in daily labor bonds the family together in purpose [157]. + +### Themes captured for future book development + +- Early training is presented as the establishment of a small number of clear, physical, understandable boundaries rather than an overwhelming list of rules. +- The source teaching uses blanket training as an example of teaching an infant to respond to a parent's voice and remain within a defined boundary. +- Boundaries are framed not only as restrictions but also as sources of security, predictability, and peace. +- Media is presented as a formative influence that can shape a child's imagination, desires, ideals, and worldview. +- The chapter calls parents to intentional presence rather than allowing devices to become surrogate caregivers. +- The teaching presents a home-centered maternal role and a time-owning, financially creative paternal role as its preferred family framework. +- Children are encouraged to participate in ordinary household work so that labor becomes a joyful expression of family life rather than an isolated burden. +- Family presence and shared work are presented as more formative than constant artificial entertainment. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, and word-study claims before publication. +- Confirm whether the chapter title "Textile Boundaries" is the intended wording or whether it refers specifically to blanket/physical boundaries; preserve the supplied title until the recording context is available. +- The blanket-training example involves an infant, physical correction, and a potentially hazardous environment. Before any parent-facing use, consult current pediatric, child-safety, and safeguarding guidance; do not reproduce the method as a universal instruction or imply that a "gentle tap" is necessary for learning obedience. +- Any early-childhood boundary practice should prioritize supervision, childproofing, developmentally appropriate expectations, non-violent redirection, and prevention of falls or access to unsafe objects. Infant behavior and repeated boundary-testing are normal developmental processes, not proof of an "old nature." +- The language that media is designed by "the adversary," tells a child's vision, or necessarily displaces parental responsibility should be identified as the speaker's theological framing. A final resource should distinguish thoughtful media guidance from fear-based claims and acknowledge educational, relational, accessibility, and family-context differences. +- The claims that child training cannot be outsourced and that mothers should ordinarily stay home should be presented as the teaching's family model, not as a universal measure of faithfulness or parental love. Account for single parents, dual-income households, adoptive and foster families, disability, illness, economic necessity, education, cultural context, and families with different vocational callings. +- The language about two incomes, Egypt, and "making bricks" should be retained as source imagery but carefully contextualized so financial hardship is not treated as a moral failure and so the final book does not impose unsafe or unrealistic economic expectations. +- When children participate in household work, include age-appropriate supervision and safety precautions. Paint, appliances, hot water, sinks, tools, chemicals, ladders, and other household hazards require adult judgment. +- Clarify what "own your time" means in practical, sustainable terms and avoid presenting entrepreneurship or schedule changes as guaranteed solutions for every family. + +--- + + + +### Reflection and Action + +#### Heart-level reflections +**Surrogate Parenting:** Is television or digital media acting as a surrogate parent or a distraction from your training responsibilities [38, 134]? How is "tell-a-vision" programming shaping the minds and desires of your children away from the Kingdom [38, 134]? + +**Owning Your Time:** Fathers, are you caught in the "Egyptian" bricks-and-mortar trap of overworking at the expense of being present to train your children [39, 137]? What adjustments do you need to make to own your time [39, 138]? + +#### Action steps +**The Blanket Training Trial:** For infants (6–9 months), lay down a small blanket on the floor [36, 91]. Practice giving the quiet command: "I don't want you going off of that." [37, 91] Gently correct their hand when they test the boundary, and place them back on [37, 91]. Use this tool to train their ears to listen to your voice [37, 91]. + +**Integrating vs. Separating:** Stop treating household chores as a solo burden. This week, give your child a paint roller, have them help push buttons on the washing machine, or pull up a chair to help wash dishes [40, 175]. Let them participate in your daily life, reinforcing that the family works together with joy [40, 175]. + +## Chapter 5: Generational Advancement & the Covenant Family + + +### The Principle of Generational Advancement + +A primary objective of the covenant family structure is what we call "generational advancement" [8, 178, 179]. This means that the spiritual victories, emotional healing, and behavioral discipline established by the parents become the floor upon which the children stand [8, 46, 162]. Because children raised in a genuinely secure, peaceful environment do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome, they are uniquely positioned to stand on their parents' advancements and leap forward into their own divine destinies [8, 46, 162]. + +Our children still have their own struggles and areas of life that the Lord must work on [81]. This is a beautiful and necessary reality because everyone needs something in their life that forces them to cry out to the Lord and depend on Him [81]. However, generational advancement ensures that they do not start from scratch; they start from a position of inherited spiritual security [8, 46, 162]. + +### "Cutting the Penny in Half" + +To keep our children from expecting perfection from us—while still keeping them engaged in the process of growth—we taught them a foundational concept [82]. When our daughters were around seven to nine years of age, we sat down for a teaching moment and told them [82]: + +> "Girls, listen. Mom and I are going to be able to cut this penny in half. All this stuff on this half of the penny, the Father is going to work with us to remove it from our lives. But there is still going to be half of a penny left for you to deal with in your own life. And then you are going to have children, and you are going to cut that penny in half again. But you will always have half of the half that remains. Why? Because the Father needs to be sovereign to your children, and He will be." [82] + +This simple, powerful teaching set a healthy expectation within our home [82]. Our daughters did not expect us to be flawless, perfect parents, but they constantly saw us leaning into the Lord, seeking His face, and working to deal with our own "half of the penny" [82]. This vulnerability and transparency created a beautiful, authentic environment where the entire family advanced together before the Lord [82]. + +### Covenant Priorities: God, Family, and Ministry + +In establishing a stable, secure home, parents must walk in strict alignment with God's divine order of priorities [131]. We are firm believers in a covenant hierarchy that must never be compromised [131]: + +1. **God First** +2. **Family Second** +3. **Ministry Third** + +Tragically, when this order is inverted, the home suffers immensely [131]. We see this manifest in the lives of many "preacher's kids" who grow up bitter and distant from the Lord because their parents prioritized public ministry or the affairs of the church over the spiritual and emotional security of their own household [131]. Even for those carrying a powerful ministerial anointing, fathers must seek the Lord for the creative wisdom and divine provision necessary to protect their family time [131]. We must lift our vision higher to see that our children are our primary, most significant ministry [41, 131]. + + +### Relying on the Greater Body + +No family is designed to function as an isolated island. Part of walking in the covenant is recognizing that you are not alone when you are parenting [133]. The Lord has intentionally structured the Body of Christ so that you have older, more mature people around you who have been given pastoral or apostolic responsibility over your life to speak wisdom, correction, and guidance into your household [133]. + +Furthermore, parents must actively teach and model honor for others [134]. In our home, we wanted our daughters to know that they were not restricted to only receiving help from us [134]. We gave them explicit permission that if they ever felt they needed outside spiritual help or counseling, they had the freedom to reach out directly to our trusted leaders and spiritual counselors [134]. By removing the fear of being threatened by outside help, we established a network of absolute security around our daughters [132, 134]. They grew up knowing that if Mom and Dad were struggling, there was a safe, ordained place in the local headship where help, restoration, and life-giving counseling could be found [133]. + + +### Blended Families and Late Starts: Rebuilding the Foundation + +We frequently meet parents who are entering the child training journey late—whether because they have recently come to know the Lord after their children are older, or because they are navigating the unique complexities of a blended family [147, 148]. In these situations, parents often ask how they can remove old, ungodly foundations that were laid before they entered the picture [147]. + +In these cases, the primary strategy is to become the model of the Father's love in their presence [148]. Walk before them as a consistent, unshakeable, secure place that they can count on day in and day out [148]. + +If you are dealing with older children where the primary training window has passed, look backward to see if there are any broken bridges of trust [148]. Seek the Lord and ask yourself: "Have I ever made any promises to my children that I have not kept?" [148] + +If the answer is yes, you must do whatever it takes—no matter how difficult or costly to your finances—to keep your word and fulfill those promises [148]. This act of sacrificial integrity sends a powerful message that you are a parent of truth, modeling the covenant-keeping nature of our heavenly Father [148]. Combine this with doing extraordinary, unexpected things to display your love, and stay closely submitted to your local spiritual headship, who can help navigate the specific nuances of your household [148]. The Lord's grace is fully sufficient to heal, restore, and rebuild the foundations of any home that yields completely to His pattern [148]. + +### Themes captured for future book development + +- Generational advancement is presented as children inheriting a foundation of spiritual security, emotional healing, and parental growth rather than having to begin from the same level of brokenness. +- The "cutting the penny in half" illustration gives children permission to see parental imperfection while also seeing parents actively submit their lives to God's transforming work. +- The teaching holds together two ideas: parents can remove or reduce patterns of brokenness, while children still have their own agency, struggles, and relationship with God. +- The proposed covenant priority is God first, family second, and ministry third. +- Children are presented as a primary ministry and a responsibility that should not be sacrificed to public ministry demands. +- Parenting is framed as a communal responsibility in which mature, trusted members of the local church can provide wisdom, correction, counseling, and restoration. +- Children are encouraged, in the source account, to have access to safe outside help rather than being limited to their parents alone. +- Parents who begin later or who are navigating blended-family complexity are called to rebuild trust through consistency, integrity, fulfilled promises, demonstrated love, and patient presence. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, and the theological language surrounding "generational advancement" before publication. +- Preserve the "cutting the penny in half" illustration and its source context, but clarify that children are not responsible for repairing or carrying their parents' unresolved wounds. Parental healing should reduce burdens on children, not assign them a quantified share of family brokenness. +- The teaching's statement that everyone needs struggles that force dependence on God should be handled carefully. Do not romanticize trauma, abuse, poverty, disability, mental-health challenges, or other suffering as divinely necessary or as evidence of spiritual deficiency. +- "God first, family second, ministry third" should be explained rather than used as a slogan that automatically resolves competing responsibilities. The final resource should address safety, marriage and parenting obligations, work, health, community, and the needs of vulnerable family members. +- The claim concerning "preacher's kids" should be qualified and supported if retained. Children's experiences of ministry families are varied, and bitterness or distance from faith should not be attributed simplistically to parental prioritization. +- Outside spiritual leaders, pastors, counselors, and "local headship" must be safe, qualified, accountable, and subject to appropriate safeguarding standards. Children should have confidential, age-appropriate ways to disclose concerns, including access to adults outside the parents' chosen circle when needed. +- "Submission" to spiritual authorities must never mean unquestioning obedience, secrecy, isolation, surrender of parental or child safety, or protection of leaders from scrutiny. The final book should explicitly preserve the right to seek independent professional help and report abuse. +- In blended families, rebuilding trust requires consent, patience, predictable care, respect for existing parent-child bonds, and attention to grief, loyalty conflicts, trauma, and legal/custody realities. A new spouse or parent figure cannot demand instant spiritual or relational authority. +- The instruction to fulfill promises "no matter how difficult or costly" should be bounded by safety, legality, financial sustainability, and the child's best interests. Parents should not keep an unsafe, impossible, manipulative, or harmful promise merely to preserve appearances. +- "Extraordinary, unexpected" demonstrations of love should be age-appropriate, non-coercive, and responsive to the child's actual needs rather than used to purchase trust or compliance. +- Clarify whether "late" refers to age, conversion, remarriage, or a previous parenting approach, and avoid framing earlier family history as an "ungodly foundation" in a way that shames parents or children. + +--- + + + +### Reflection and Action + +#### Heart-level reflections +**The Penny in Half:** Do your children carry the heavy burden of expecting you to be perfect [42, 43]? How can you model humility and the pursuit of growth rather than a false image of perfection [43, 95]? + +**The Priority Order:** Honestly assess your calendar and energy. Are you living according to the covenant order: God First, Family Second, Ministry/Work Third [43, 44, 144]? + +#### Action steps +**The "Half-Penny" Conversation:** Gather your children (especially those ages 7–9 or older) [42, 95]. Share the "half-penny" teaching with them: + +> "Mom and I are not perfect parents, but we are working with the Lord to clear away old battles so you don't have to fight them [41, 42, 95]. There will still be a portion left for you to deal with, but you will stand on our shoulders." [41, 42, 95] + +**Rebuilding Broken Bridges (Late Starts / Blended Families):** Seek the Holy Spirit and ask: "Have I ever made any promises to my children that I have not kept?" [47, 161] If a promise comes to mind—no matter how small or how financially challenging—make a concrete plan to keep your word and fulfill that promise this month [47, 161]. + +### Themes captured for future workbook development + +- The material moves from teaching content into self-examination, shared marital practices, and concrete household commitments. +- The workbook treats parental transformation and modeling as the starting point for changes in the home. +- The questions invite parents to examine obedience, emotional regulation, presence, priorities, division, media use, and generational vision. +- The proposed exercises include a refuge audit, a calmness practice, parental-unity protocols, a 30-day appreciation covenant, media and time audits, shared household work, a half-penny conversation, and promise-repair work. +- The source workbook is intended to be used by spouses together, not merely read individually. +- Each chapter's practical section mirrors the book's larger sequence: model first, correct redemptively, build unity, guard influences, and advance the covenant family. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between the workbook citations and the original audio/NotebookLM source. +- The physical-discipline exercises in Sections 2 and 4 should not be presented as ready-to-use instructions in a parent-facing workbook. Replace or substantially revise them after professional safeguarding review, with non-violent, age-appropriate alternatives centered on supervision, redirection, natural/logical consequences, repair, and emotional regulation. +- The "correction room" exercise should not encourage isolating a child with an adult or imply that privacy overrides safety, accountability, or a child's right to disclose harm. Any final version should include clear safeguarding boundaries and appropriate access to trusted, independent help. +- The suggestion to place a switch in the home should be removed from a practical action checklist unless the final theological and safeguarding review explicitly justifies its inclusion; the current source note must not be mistaken for an endorsement. +- "Perfect right standing" and the idea that correction removes a spiritual debt require theological review so that children are not taught that physical pain is required for forgiveness, belonging, or restoration. +- "If the other spouse has given an answer, the discussion is permanently closed" should be softened to allow clarification, correction of mistakes, accessibility needs, changing circumstances, and safe disclosure. Children must not be trained to stop asking questions or reporting concerns. +- The 30-day breakfast and sunset covenants should allow for work schedules, illness, disability, conflict de-escalation, sleep, safety, and circumstances in which immediate reconciliation is not appropriate. +- The blanket-training trial should not be reproduced without current pediatric and child-safety review. Infant crawling and boundary-testing are normal development; safe supervision and childproofing should come before obedience training. +- The "Egyptian" overwork metaphor and "own your time" exercise should not shame parents who must work, rely on childcare, or manage financial hardship. Include varied family structures and realistic economic constraints. +- Household-work activities require age-appropriate supervision around paint, appliances, water, heat, tools, chemicals, and other hazards. +- The half-penny conversation should be adapted so children are not assigned responsibility for parental wounds or told they must inherit a predetermined portion of brokenness. Emphasize parental accountability, the child's agency, and freedom to seek help. +- Promise-repair exercises should be bounded by safety, legality, financial sustainability, custody arrangements, and the child's best interests; a parent should not fulfill a harmful or impossible promise. +- The workbook should include an explicit "when to seek help" page covering trusted pastoral care, licensed counseling, child-protection concerns, domestic abuse, mental-health crises, and situations in which a parent cannot stay calm or keep a child safe. + + +## The 30-Day Covenant Parenting Challenge Calendar + + +This practical, day-by-day companion calendar is designed to help you and your spouse actively move from information to structural, heart-level transformation in your home [48]. Covenant parenting is a living relationship that must be intentionally walked out before the Lord and before your children [48, 62]. Use this daily tracker to build a secure sanctuary of peace in your household [48, 141]. + +--- + +### Week 1: Laying the Marital Foundation + +The spiritual atmosphere of the home is anchored in the absolute unity of husband and wife [3, 199]. This week, we focus entirely on sealing the "cracks" of division, aligning our hearts privately, and nurturing horizontal communication [3, 24, 31, 200]. + +#### Day 1: The Sunset Covenant (Ephesians 4:26 (NKJV)) + +**Action:** Sit down with your spouse tonight and make a solemn covenant that you will never go to sleep angry [34, 218]. If a disagreement arises, commit to taking a private "time out" to pray individually, then come together to ask for forgiveness and pray together before sleeping [34, 216, 219]. + +**Scripture:** "...do not let the sun go down on your anger." [34, 54, 218, 221] + +#### Day 2: Launching the 30-Day Breakfast Covenant + +**Action:** Set your alarm 30 minutes earlier [54, 221]. Sit down for breakfast together (just the two of you) and share one specific, particular detail you sincerely appreciate and estimate about your spouse [32, 33, 54, 221, 224]. **Rule for Husbands:** Avoid generalities like "you look good"—find a particular, concrete action to celebrate [33, 224]. + +**Scripture:** "Seek, and you will find." [33, 222] + +#### Day 3: The "What Did Dad/Mom Say?" Gatekeeping Protocol + +**Action:** Align on the gatekeeping protocol [54, 210]. Whenever a child approaches you asking for a treat, permission, or a change in rules, your immediate, unthinking response must be: "What did Dad say?" or "What did Mom say?" [24, 25, 54, 210]. If the other spouse has given an answer, the discussion is permanently closed [25, 54, 210]. + + +#### Day 4: Day 3 of the Breakfast Covenant + +**Action:** Share your daily specific deposit [32, 33]. Today, focus on celebrating how your spouse handles pressure or exhaustion [30, 143, 201]. + +#### Day 5: Private Discipline Alignment Check + +**Action:** Covenant together that you will never correct, undermine, or disagree with each other's disciplinary actions in front of the children [26, 204, 205]. If you disagree with how a situation was handled, deal with your own irritation privately and discuss it strictly behind closed doors later [27, 211]. + +#### Day 6: Modeling Humility & Repentance + +**Action:** If you slipped up this week and displayed division or disrespect in front of your children, execute the restoration protocol [28, 205]. First, apologize to your spouse privately: + +> "My love, I am sorry. I realize that I made you look bad in front of the child, and I repent." [28, 205] + +Second, go to the child: + +> "What I said to you about your mother/father was wrong. I want to apologize to you for dishonoring them in front of you." [29, 206] + +#### Day 7: Weekly Reflection & Rest + +**Action:** During your breakfast covenant today, evaluate the atmosphere of the home [32, 221]. Has the spirit of peace and security increased? Ask: "Are we taking time to truly listen to one another's hearts, or are we just waiting for our turn to speak?" [31, 213]. + +--- + +### Week 2: Establishing Heart-Level Security & Early Boundaries + +This week, we transition into early training boundaries and emotional security. We examine how our physical actions, voice tone, and early limits build a protective shield around our children [3, 20, 37, 103]. + +#### Day 8: Consecrating the Hands & the Voice + +**Action:** Consecrate your hands and voice today [20, 226]. Declare that your hands are made exclusively for hugging, holding, and expressing love and tenderness [20, 84, 226]. Agree that your voice will never be the vehicle of correction, but only of instruction, praise, and love [226]. Remove all rigid correction implements (belts, heavy spoons) from the home [20, 84, 52]. + +#### Day 9: Establishing the "Correction Room" + +**Action:** Identify a private, designated area in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 174]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that room [20, 175]. Commit to never correcting your children publicly or in front of siblings [23, 174]. + +#### Day 10: Expressive Love Deposits + +**Action:** Be intentionally expressive today [139, 140]. Hug your children unexpectedly, write them a sweet note, or tell them specific reasons why you love them and estimate who they are [139, 140]. Ensure they know their security is unshakeable [87, 103]. + +#### Day 11: Blanket Training Setup (For Infants 6–9 Months) + +**Action:** Spread a small blanket on the floor [36, 102]. Place the infant on it and say quietly: "I don't want you going off of that." [37, 102] When they attempt to crawl off, gently tap their hand to associate disobedience with instant correction, and place them back on the blanket [37, 102]. Repeat this several times in a focused, calm session [37, 102]. **(For older children, choose a single, clear boundary—like not touching the coffee table—to train their ears to listen to your voice [102].)** + +#### Day 12: The Rule of Calmness Practice + +**Action:** If you feel your blood pressure rising or feel on edge during a disciplinary moment today, practice stopping immediately [22, 112]. Say to your spouse: "I am not in a position to handle this right now," and let them step in and cover for you, or find a calm place before the Lord before addressing the situation [22, 30, 52, 112, 185]. + +#### Day 13: Instant Obedience Check + +**Action:** Evaluate if you have fallen into the trap of counting to three or repeating commands multiple times [227]. Commit today to expecting instant obedience to your voice [141, 227]. Give clear, loving instruction once, and address any delay as disobedience [140, 141, 227]. + +#### Day 14: Mid-Point Reflection + +**Action:** Reflect on Proverbs 14:26 (NKJV) [3, 74]. Write down how growing in your own reverent fear and instant obedience to the Heavenly Father has created a physical and spiritual "shield of refuge" for your children this week [3, 13, 74]. + +--- + +### Week 3: Integrating Work, Joy, and Presence + +We are called to own our time, stay present, and include our children in the everyday affairs of life so they learn that labor is a joyful, natural expression of the family [5, 39, 40]. + +#### Day 15: Media Audit ("Tell-a-Vision") + +**Action:** Walk through your home and evaluate the media intake [38, 145]. Identify where tablets, phones, or television are acting as "surrogate parents" or distractions [38, 145]. Agree to strictly limit or close the door to secular programming to keep the atmosphere of the home pure [38, 145]. + +#### Day 16: Erasing the Work vs. Fun Boundary + +**Action:** Stop treating household chores as a solo burden [40, 186]. Today, pull up a chair and let your toddler help wash dishes, push the buttons on the washing machine, fold laundry, or give your older child a paint roller to help paint [40, 186]. Make work a shared, joyful experience of living life together [40, 186]. + +#### Day 17: Father's Covenant: Owning Your Time + +**Action:** Fathers, spend time before the Lord today asking for creative, Kingdom strategies to "own your time" [39, 149]. Examine your schedule to ensure you are physically and mentally present for your family rather than caught in the "Egyptian brick-making trap" of excessive work [39, 148, 149]. + +#### Day 18: Celebrating the Mother's Role + +**Action:** Husbands, take time today to actively celebrate, verbalize, and honor the sacred work your wife does in nurturing the home and multiplying your family's resources [30, 39, 147]. Let her know that her presence far surpasses any secular career or paycheck [39, 146, 147]. + +#### Day 19: The "I Will Say Yes" Promise + +**Action:** Look for opportunities to say "Yes!" to your children today [151]. Tell them: "There are times I have to say no to protect you, but I am looking for every opportunity to say yes to you." [151, 152] Plan a family-appropriate trip, surprise outing, or special treat to fulfill this promise [151, 153]. + +#### Day 20: Outdoor Activity Shift + +**Action:** If the atmosphere of the home feels pent up or stressful today, physically shift locations [179, 180]. Take the children outside to build a fort, play in the yard, go to the park, or take a simple drive [179, 180]. Use nature and play as a release valve for energy [178, 180]. + +#### Day 21: Weekly Reflection: Celebration of Individuality + +**Action:** Discuss how your children are uniquely wired [118, 121]. Repent of any verbal comparisons between siblings [119, 120]. Ask the Holy Spirit for custom wisdom (Rhema word) for each child's specific, unique design [117, 118]. + +--- + +### Week 4: Generational Legacy & Deep Restoration + +We parent with a multi-generational vision, preparing our children to stand on our spiritual shoulders and leap forward into their own divine destinies [6, 12, 41]. + +#### Day 22: The "Half-Penny" Conversation + +**Action:** Gather your children (especially those ages 7–9 or older) for a teaching moment [42, 106]. Explain the "half-penny" concept: + +> "Mom and Dad are not perfect, and we are working with the Lord to clear away old battles so you don't have to fight them [42, 106]. There will still be a portion left for you to deal with under His sovereign hand, but you will stand on our shoulders." [41, 42, 106] + +#### Day 23: Rebuilding Broken Bridges (Late Starts & Blended Families) + +**Action:** Ask the Holy Spirit: "Have I ever made any promises to my children that I have not kept?" [47, 172] If a promise comes to mind—no matter how small or financially difficult—write down a concrete plan to keep your word and fulfill it this month [47, 172]. Fulfilling your promises models our covenant-keeping Father [47, 172]. + +#### Day 24: Covenant Priority Check + +**Action:** Audit your calendar, finances, and energy [57]. Are you walking in strict alignment with God's covenant order of priorities: God First, Family Second, Ministry/Work Third? [43, 44, 57] Adjust any inverted priorities today [44]. + +#### Day 25: Honoring the Greater Body + +**Action:** Teach your children that they are not alone, and that they have the freedom to reach out to trusted, ordained local leaders or counseling elders if they ever need help or counsel [45, 157]. Model this by showing submission and honor to local headship yourself [45, 157]. + +#### Day 26: Facing Insecurities + +**Action:** Realize that any insecurities you carry do not have to be passed down [14, 104]. Bring your deep-seated fears or past family wounds to the Lord, allowing Him to heal you so that your children can walk in total, inherited spiritual security [14, 73, 104, 105]. + + +#### Day 27: Concluding the 30-Day Breakfast Covenant Challenge + +**Action:** As you complete your 30th breakfast together, commit to making these daily specific deposits a permanent, lifelong habit of your marriage [32, 223]. Celebrate how focusing on finding the good has transformed your relationship [34, 222]. + +#### Day 28: Preparing the Next Generation to Model + +**Action:** Reflect on Acts 13:36 (NKJV) [12]. Pray a blessing over your children, asking the Lord to equip them to serve His purposes faithfully in their own generation [12, 65]. + +--- + +### Days 29–30: Evaluation & Generational Forwarding + +#### Day 29: Joint Spouse Review + +**Action:** Review the completed 30-day challenge. Where did you see the most significant fruit? Where did the Holy Spirit highlight areas that still need to be "narrowed up" or healed? [14, 73, 76] + + +#### Day 30: Sealing the Legacy + +**Action:** Commit this parenting journey to the Lord in prayer [193]. Declare that your family is stepping into generational advancement, and that the spiritual ceiling of your life has officially become the floor upon which your children stand [6, 41, 105]. + +### Development themes +- The calendar begins with marital unity and communication before moving into child-focused boundaries and correction. +- Its sequence progresses from household atmosphere, to heart-level security, to presence and shared work, and finally to generational legacy and restoration. +- The daily practices emphasize appreciation, repentance, calmness, parental consistency, presence, media awareness, shared labor, individualized attention, promise keeping, and prayer. +- The calendar translates the broader teaching into a structured rhythm of daily action, weekly reflection, and final evaluation. +- The challenge repeatedly connects parental transformation with the security and future formation of children. +- The calendar includes both couple-centered practices and child-centered conversations, allowing later editions to distinguish exercises for spouses, infants, older children, blended families, and ministry families. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between this calendar's citations and the original audio/NotebookLM source. +- The calendar contains repeated instructions to use a switch, tap an infant's hand, and conduct private physical correction. These instructions should not be distributed as a ready-to-use parent program. Before any public edition, replace or substantially revise them after professional pediatric, child-development, and safeguarding review, centering non-violent redirection, supervision, natural/logical consequences, repair, and emotional regulation. +- The "correction room" should not be framed as a private space where a child is isolated with an adult without safety, accountability, and access to independent help. Privacy should protect dignity, not conceal harm. +- "Never go to sleep angry" and the sunset covenant should allow safe time-outs, sleep, boundaries, and delayed conversation. Immediate reconciliation is not appropriate in every conflict, particularly where there is intimidation, coercive control, abuse, or escalating danger. +- The "What Did Dad/Mom Say?" protocol and the phrase "the discussion is permanently closed" require safeguards. Parents may need to correct a mistake, hear a child's question, accommodate disability or changing circumstances, or receive a disclosure of harm. Unity must not become silencing. +- Day 8's instruction that the voice should never be a vehicle of correction conflicts with the broader source teaching's emphasis on correcting disobedience and should be clarified in the original recording context. +- Day 13's "instant obedience" exercise should be reviewed developmentally. Young children may need repetition, processing time, communication support, or an explanation of a request; delay is not automatically defiance. +- The 30-day breakfast count appears internally inconsistent: the calendar launches the breakfast covenant on Day 2, labels Day 4 as "Day 3," and calls Day 27 the 30th breakfast even though the listed daily breakfast actions do not clearly account for thirty meetings. Reconcile the schedule before publication. +- The "I Will Say Yes" promise should not pressure parents into purchasing outings or treats, or make a child's felt love dependent on receiving a yes. Define realistic, relational ways to say yes while preserving necessary boundaries and financial sustainability. +- The "Egyptian brick-making trap," the instruction that a mother's presence surpasses a secular career, and the gendered roles should be presented as the speaker's family framework, not a universal measure of faithfulness. Include single parents, dual-income families, childcare, disability, illness, economic necessity, adoptive/foster families, and varied vocational callings. +- Outdoor drives and activities require ordinary safety planning, supervision, weather awareness, transportation restraints, and age-appropriate expectations. +- Day 21's language about each child being uniquely wired is valuable, but "Rhema word" should be explained and should not replace listening to the child, developmental knowledge, qualified support, or medical/mental-health care. +- The half-penny exercise should not tell children they inherit a predetermined portion of parental brokenness. Emphasize parental accountability, the child's agency, and freedom to seek help. +- Trusted local leaders, "counseling elders," and "local headship" must be qualified, accountable, safeguarding-compliant, and open to independent scrutiny. Children must retain access to safe adults outside the parents' chosen leadership circle and to licensed professional help. +- "Submission" to church authority must never require secrecy, unquestioning obedience, isolation, surrender of safety, or protection of leaders from scrutiny. +- Promise-repair exercises should be bounded by safety, legality, custody arrangements, financial sustainability, and the child's best interests. An unsafe or impossible promise should be addressed honestly rather than fulfilled at any cost. +- "Generational forwarding" and the statement that a parent's spiritual ceiling becomes a child's floor should be framed as an aspirational metaphor, not a guarantee or a burden placed on children to continue a parent's ministry or spiritual achievements. diff --git a/projects/covenant_parenting_bryan_hickman_revised.md b/projects/covenant_parenting_bryan_hickman_revised.md new file mode 100644 index 0000000..605a17e --- /dev/null +++ b/projects/covenant_parenting_bryan_hickman_revised.md @@ -0,0 +1,738 @@ +--- +title: "The Pattern of Covenant Parenting — Bryan Hickman Teaching (Revised Editorial Draft)" +status: editorial-review-draft +source: "NotebookLM book-style synthesis from audio recordings of Bryan Hickman's teaching sessions" +derived_from: "[[covenant_parenting_bryan_hickman]]" +tags: + - parenting + - covenant-parenting + - church-teaching + - family + - discipleship + - Bryan-Hickman + - book-draft + - editorial-review +--- + +# The Pattern of Covenant Parenting + +**Global source declaration:** This separate editorial draft is derived from [[covenant_parenting_bryan_hickman]]. It preserves the supplied NotebookLM chapter synthesis from Bryan Hickman's audio teaching as source material. The whole manuscript is an interpretation/synthesis from voice recordings, not a verified verbatim transcript, theological position paper, clinical resource, or safeguarding-approved parenting program. + +**Bryan review status:** Bryan Hickman's review is pending. All editorial normalization, interpretation, Scripture handling, and proposed rewrites are provisional and must not be presented as Bryan's approved wording until he reviews them. + +**Editorial status:** This revision standardizes heading hierarchy, repeated section labels, punctuation, citation spacing, quotation presentation, and workbook subsection naming. Source wording is otherwise retained as closely as possible. + +**Scripture translation convention:** The intended reference translation for Scripture verification is the New King James Version (NKJV). Body quotations are retained source renderings unless explicitly identified as verified NKJV text; they must not be assumed to be verbatim NKJV. See [[covenant_parenting_bryan_hickman_nkjv_verification]] for the verbose reference register and source links. + +**Review convention:** `` marks a proposed reorder, rewrite, clarification, or publication-review point. These comments are editorial notes, not Bryan Hickman's words. Existing review sections remain in place so safety-sensitive and unverified material is not mistaken for endorsement. + + + +## Introduction + +Parenting is often reduced to the question of how to make a child behave. We ask how to stop the arguing, correct the disobedience, establish better habits, or get through the next difficult stage. Those questions matter, but they are not the whole purpose of training a child. The deeper work is to form a heart that can grow in love, a clear conscience, and sincere faith. As 1 Timothy 1:5 says, "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." The hope is not simply to produce outward compliance. It is to raise sons and daughters who can come to know their heavenly Father, receive their identity from Him, and walk faithfully in the purpose He gives them. + +That kind of formation begins with the parents. Children learn far more from what they see in us than from what we say to them. They watch how we respond when we are tired, disappointed, interrupted, or afraid. They notice whether our words agree with our lives. In the early years, a parent becomes a child's first picture of authority, love, protection, and security. This makes parenting a form of discipleship, but it also makes it a form of parent training. Before we can ask our children to listen, we have to become people who listen to the Lord. Before we can ask for self-control, we have to let God deal with our anger. Before we can lead a child toward healing, we have to be willing to bring our own wounds into His light. + +The model for this surrendered life is Jesus. His life shows what it looks like to depend on the Father rather than act from self-protection or self-importance: "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." The point is not to make parents flawless. It is to help us become honest, obedient, teachable people whose children can see us turning toward God when we fail. Proverbs 14:26 says, "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." A child's security grows when the adults around them are learning where true security comes from. + +That refuge is built inside the atmosphere of the home. Parenting does not happen in isolation from marriage, family rhythms, work, money, or the condition of the parents' hearts. A peaceful household requires husband and wife to pursue unity, repair conflict, and refuse to make their children carry the weight of adult disagreement. It requires daily deposits of appreciation, patient listening, and the humility to apologize when we have dishonored one another. It also requires practical care: noticing when a spouse is exhausted, stepping in when help is needed, and protecting the home from becoming a place where pressure is constantly passed down to the children. The thirty-day breakfast covenant and the command in Ephesians 4:26 not to let the sun go down on anger belong to this larger work of building peace, not to a formula for pretending that conflict never exists. + +Within that atmosphere, parents can establish boundaries without making fear the center of the relationship. Children need direction. They need to know what is safe, what is expected, and what belongs outside the life of the family. Jesus' warning about the broad and narrow ways in Matthew 7:13–14 gives this work a larger frame. Training means helping children learn to listen, to turn away from harmful influences, and to practice what is good until wisdom becomes part of their own character. When a child disobeys, the goal must be restoration rather than humiliation. A parent who is angry or out of control should pause rather than use discipline to release frustration. Correction should protect the child's dignity, leave room for truth and disclosure, and lead the family back toward calm, belonging, and trust. The practical questions of boundaries, correction, and safety require care, patience, and age-appropriate wisdom; they should never be separated from love. + +This formation takes place in ordinary life. It happens while parents are deciding what enters the home through television, phones, tablets, and other media. It happens when a mother or father chooses presence over constant distraction, when a family shares work instead of treating chores as an interruption, and when children are welcomed into the real responsibilities of household life. The goal is not to create an artificial world where children never encounter difficulty. It is to give them a secure place from which they can learn how to meet difficulty with faith, responsibility, and compassion. A boundary can be an expression of care. A shared task can become a lesson in service. A quiet conversation can shape a child's understanding of God more deeply than a lecture. + +The book also looks beyond the immediate moment. Parents are not only managing today's behavior; they are building on behalf of people they may never meet. This is the long view behind Proverbs 22:6: "Train up a child in the way he should go, and even when he grows old, he will not abandon it." The healing we pursue, the patterns we refuse to pass on, the promises we keep, and the way we order our lives all become part of the foundation our children inherit. This is the idea of generational advancement: children should not have to begin by fighting every battle their parents were given grace to face. They will have their own struggles and their own relationship with God, but they can stand on a foundation of greater security, honesty, and wisdom. That is why parental humility matters. We can tell our children that we are still growing, that the Lord is still dealing with us, and that our imperfections do not cancel our responsibility to keep moving toward Him. + +This vision also changes how we think about the place of family in the wider work of the church. God comes first, family cannot be sacrificed to public ministry, and ministry must flow from a life that is being lived truthfully at home. Parents need the wisdom of mature and trustworthy people around them, and children need safe access to help beyond their parents when they need it. A covenant family is not an isolated family. It is a household learning to receive correction, offer hospitality, repair what has been damaged, and make room for the work God is doing across generations. + +The pages that follow develop these convictions through the realities of family life: how parents model the Father, how a home learns to respond to conflict, how husband and wife protect the atmosphere of the household, how families guard the influences shaping their children, how ordinary work and presence become part of discipleship, and how parents can rebuild trust when they are beginning late or carrying a complicated history. The final reflections and exercises are meant to move these ideas out of the abstract and into conversations, prayers, decisions, and small daily practices. Covenant parenting is not a checklist that proves we are doing everything right. It is a living relationship, walked out before the Lord and before our children, one faithful response at a time. + +--- + + +## Chapter 1: The Foundations of Modeling & Multi-Generational Vision + + +### The Ultimate Goal of Training + +The true purpose of child training is not to construct a superficial set of behavioral modifications or to simply "tweak" outward conduct. It is to lay a foundational, structural establishment. Specifically, the ultimate goal is to raise children who can transition cleanly into their own spiritual inheritance. As the scriptures state in 1 Timothy 1:5: + +> "The goal of our instruction is love from a pure heart, a good conscience, and a sincere faith." + +Our target is to have children who seamlessly step into a personal relationship with their heavenly Father, and in that place find their Kingdom identity and faithfully walk out their Kingdom purpose in this generation. [7] + +The transition from childhood through adolescence is intended by God to be a seamless, direct journey into relationship with the Father [17, 18]. Society has largely convinced itself that teenagers must undergo a painful, mandatory phase of rebellion simply because they do not know what else to do [17]. However, this expectation is a deception that lowers our standards and shapes our actions toward failure [17]. God's design is for children to move directly from childhood into a vibrant, personal relationship with Him [17, 18]. + +### Jesus as the Ultimate Model + +To understand how to train children, we must first look at Jesus. Jesus did not come to earth merely to perform miracles or display His divinity; rather, He came to model what a son can do when entirely dependent upon his Father [11, 12]. He walked out His earthly life as a man, not as God, to demonstrate that obedience is fully possible for a heart surrendered to the Father [12]. He lived by a simple, profound standard: + +> "I don't do anything but I see my father do it. I don't say anything but I hear my father say it." [12, 23] + +Just as Jesus modeled sonship for us, parents are called to model the Father to their children [12]. In the eyes of a young child, the parent is effectively "God"—the ultimate representation of authority, love, and security in their life [15]. This is a sobering reality [13, 15]. Parents have both the privilege and the solemn responsibility to demonstrate face-to-face what a loving Father and Mother are like until the child reaches an age of spiritual understanding where that devotion is transitioned to the Lord [15]. + +The single most powerful force that will affect your children is for you, the parent, to become an obedient son of God [14]. Because parents are always modeling, every reaction—even after a hard day when we are on edge—sets an example [13]. We cannot expect our children to walk in instant obedience to our voice if we ourselves are not walking in instant obedience to the voice of our heavenly Father [13]. + +### Building for Generations + +To parent effectively, we must reject short-sightedness and adopt a multi-generational vision [8, 9, 10]. We see the danger of passivity illustrated in the history of the Church. During the "Jesus movement" of the 1970s, a wave of believers dropped out of school and stopped preparing for the future under the premise that "Jesus is coming back" [9]. Because they failed to build for the next generation, the world quickly stepped in and took over every major institution [9]. + +Conversely, if we believe that the Kingdom will be fully established only in our lifetime, we risk failing to prepare our children for the long-term work [9]. While we must always look for the "end suddenly," we must build and train our children as if the work will span multiple generations [9, 10]. We are not going to build it all in our lifetime; our task is to raise up the little ones placed in our hands so that they will be faithful to God's purposes in their own generation [7]. As Acts 13:36 records of King David: + +> "For David, after he had served God's purposes in his own generation, fell asleep and was laid among his fathers and underwent decay." [7] + +### Healing the Parents First + +Because children copy what we model, the child training process is, in reality, a parent training process [15, 128]. If we carry unresolved brokenness, anger, or fear, we will pass those patterns down [15, 46]. Allowing the Lord to heal us requires deep humility and submission, but it is the greatest gift we can offer our children [15]. As we grow in our reverence and fear of the Lord, we gain a strong confidence that creates a literal shield of security and a place of refuge for our households [16]. This is beautifully promised in Proverbs 14:26: + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [16] + +When we allow the Lord to deal with our own deep-seated insecurities, we achieve what is called "generational advancement" [46, 47, 161, 162]. Children who are raised in an atmosphere of genuine spiritual security do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome [46, 47, 162]. Instead, they get to stand on their parents' advancements and leap forward into their own destiny [46, 162]. This establishes the foundation for the lifelong training command found in Proverbs 22:6: + +> "Train up a child in the way that he should go, and even when he grows old, he will not abandon it." [16] + +### Themes captured for future book development + +- The intended goal of training is a child's personal relationship with the heavenly Father, Kingdom identity, and Kingdom purpose—not merely compliant behavior. +- Adolescence is presented as a potential continuation of relationship with God rather than an inevitably rebellious stage. +- Jesus is presented as the ultimate model of dependent sonship and surrendered obedience. +- Parents model constantly; their reactions under pressure are formative just as much as their deliberate instruction. +- Parent healing and obedience are central to breaking the transmission of fear, anger, insecurity, and family brokenness. +- Multi-generational parenting requires building for a future beyond the parents' own lifetime. +- "Generational advancement" describes children standing on the spiritual and relational progress of their parents. +- The chapter connects parental modeling, healing, refuge, and lifelong formation with Proverbs 22:6. + +### Editorial and pastoral review flags + +- Verify the Scripture quotations and references, including the intended Bible translations. +- Preserve the distinction between the teaching's theological claims and later editorial commentary. +- The historical claim concerning the 1970s Jesus movement should be sourced or qualified if included in a published edition. +- The claim that rebellion is not an inevitable feature of adolescence should be presented pastorally and carefully, acknowledging individual development, temperament, disability, trauma, and family context. +- Clarify the phrase "until the child reaches an age of spiritual understanding" and how the teaching defines that transition. + +--- + + +## Chapter 2: Redemptive Correction: Straightening the Path with Love + + +### "Narrowing Up" vs. The Demand for "Experiences" + +Scripture defines training a child through the Hebrew lens of "dedicating, disciplining, narrowing up, or choking out" [18]. It means to straighten a child's path, protecting their outlook, behavior, ideals, views, and influences from being overwhelmed by the weeds of the world [18]. This directly contradicts modern humanistic reasoning, which insists children must be given broad "experiences" to discover themselves [19]. This humanistic philosophy is a widening of the way, which the Bible explicitly warns against in Matthew 7:13: + +> "Enter through the narrow gate, for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it." [19] + +Parents are given the responsibility to shape their children's minds and protect them from worldly conformity [18, 21]. As Romans 12:2 charges us: + +> "And do not be conformed to this world, but be transformed by the renewing of your mind, so that you may prove what the will of God is, that which is good and acceptable and perfect." [21] + +The renewal of the child's mind is a task delegated directly to the parents [21, 22]. It requires parents to actively narrow up their child's path, choosing carefully what enters their hearts and minds rather than letting them wander broad roads of secular influence [18, 22]. + +### Debunking the Myth of Adolescent Rebellion + +A cornerstone of modern parenting is the belief that teenagers must naturally go through a painful, dramatic season of rebellion [17]. We are told this is just a normal developmental phase [17]. However, this expectation is a deceptive lie that shapes our thoughts and actions toward failure [17]. + +In God's design, there is no mandatory period of rebellion [17]. The scriptural transition from childhood to maturity is intended to be a seamless progression directly into a personal relationship with the Father [17, 18]. When boundaries are clearly laid and maintained with love, teenagers do not have to wander into rebellion; they can walk straight from parental guidance into divine devotion [17, 18]. + + +### The Mechanics of Correction: The Switch and the Loving Hand + +To remove the foolishness that is naturally bound up in a young heart, God has provided specific, loving tools [23, 24]. As Proverbs 22:15 states: + +> "Foolishness is bound up in the heart of a child. The rod of discipline will remove it far from him." [24] + +Scripture is rich with wisdom regarding the diligent application of this rod of reproof: + +- **Proverbs 13:24:** "He who withholds the rod hates his son, but he who loves him disciplines him diligently." [25] +- **Proverbs 19:18:** "Discipline while there's hope, and do not desire his death." [25] +- **Proverbs 29:15:** "The rod of reproof gives wisdom, but a child who gets his own way brings shame to his mother." [25] +- **Proverbs 29:17:** "Correct your son and he will give you comfort. He will also delight your soul." [25, 26] + +While humanism rejects these commands or distorts them into abuse, biblical correction is defined by tenderness and absolute control [26, 28, 29]. In our home, we established a strict physical boundary: our hands were made exclusively for holding, hugging, and expressing love [26, 29, 31]. We never used our hands to strike a child, nor did we use heavy, rigid tools like belts or wooden spoons, which can cause physical harm or anger [26]. + +Instead, the biblical "rod" refers to a tender, limber shoot or reed—such as a small lilac switch (roughly a quarter of an inch or smaller) with shaved bumps [27, 117]. This tool is designed to produce a quick, harmless sting on the bottom or thigh that instantly captures the child's attention without ever causing physical damage [26, 27, 118]. + +Crucially, this physical correction serves a redemptive spiritual purpose: it completely removes guilt and shame [26]. When a child is corrected, the spiritual debt of their disobedience is paid instantly [26, 30]. There is no lingering condemnation, no standing in corners, and no emotional isolation [26, 29, 30]. Once corrected, the child is immediately embraced, loved, and restored to perfect right standing within the home [26, 29, 30]. + +### The Rule of Calmness: Correcting Without Anger + +Scripture issues a vital warning to fathers in Ephesians 6:4: + +> "Fathers, do not provoke your children to anger, but bring them up in the discipline and instruction of the Lord." [22] + +A parent must never, under any circumstance, correct a child while feeling angry, agitated, or on edge [26, 29, 53, 54]. Correcting in anger is not biblical discipline; it is an expression of the parent's lack of self-control [54]. It models anger to the child, which violates our primary calling as models of the Father [54]. + +If you find yourself becoming agitated or losing your emotional composure during a correction, you must stop immediately [29, 54]. It is far better to let an act of disobedience go uncorrected in that moment than to correct your child in anger [54]. The parent must first go before the Lord, find peace, and handle the situation only when they can do so with a calm voice, a peaceful facial expression, and a tender heart [29, 52, 53, 54]. + + +### The Correction Room: Restoring Dignity in Private + +To preserve a child's security and dignity, correction must never be a public spectacle [116]. It should not be done in front of guests, siblings, or in public places [34, 116]. + +Instead, correction should take place in a private, designated area—such as a bedroom or bathroom [29, 116]. This private environment—the "correction room"—is a place of calm, reassurance, and ultimate security [29, 116]. By keeping correction private, we honor our children, shield them from public embarrassment, and ensure that the process remains a tender, focused interaction of restoration between parent and child [29, 116]. + +### Themes captured for future book development + +- "Narrowing up" is presented as intentional formation and protection of a child's heart, mind, influences, ideals, and direction. +- The chapter contrasts parental formation with a philosophy of broad, unbounded experience and self-discovery. +- Adolescent rebellion is presented as neither inevitable nor divinely required. +- Correction is framed as a redemptive process intended to remove shame, restore relationship, and return the child to belonging within the household. +- The source teaching emphasizes calmness, self-control, privacy, and immediate reassurance during correction. +- The chapter distinguishes the source's preferred correction tool from striking with hands or using heavy, rigid objects. +- Private correction is connected to the preservation of a child's dignity and security. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, wording, and translation choices before publication. +- The teaching's interpretation of the Hebrew concept translated as "train" and its use of terms such as "narrowing up" or "choking out" should be checked against reputable Hebrew lexicons and the original recording context. +- The claims about adolescent rebellion, humanism, and the history of parenting should be framed as the speaker's theological and cultural argument rather than presented as settled developmental or historical fact. +- The physical-discipline recommendations require careful safeguarding review before any public distribution. Do not present a thin implement, a specific body location, or a claimed "harmless" sting as universally safe; laws, professional guidance, child age, disability, trauma history, and individual circumstances vary. +- For a parent-facing publication, prioritize non-violent, developmentally appropriate correction and include clear guidance for pausing, de-escalating, seeking help, and protecting children from injury or fear. +- The phrase "spiritual debt ... paid instantly" should be examined theologically and pastorally so that children are not taught that physical pain is required to obtain forgiveness, belonging, or restored relationship. +- Clarify what safeguards make a private correction setting genuinely safe and accountable, especially when the child is isolated with an adult. + +--- + + +## Chapter 3: Parental Unity & the Atmosphere of the Home + + + +### The Principle of a Unified Front + +A central pillar of a peaceful home is the absolute, seamless unity between husband and wife [159]. Parents must understand that children are highly astute observers; they are experts at sensing any lack of alignment and will naturally seek to exploit any crack to sow division or pit one parent against the other [159, 164]. + +To prevent this, parents must maintain a completely united front [159]. In our home, we established a simple but powerful protocol. Whenever a child approached one parent asking for a treat, more television time, or a specific permission, the immediate response was always: + +> "What did Dad say?" or "What did Mom say?" [168, 169] + +If the other parent had already given an answer, the discussion was instantly over [169]. The parent receiving the second appeal would simply state, "Well, there is your answer," ensuring that the child's attempt to bypass authority was met with a solid wall of parental agreement [169]. This level of consistency and predictability is not a rigid, legalistic exercise; rather, it provides children with an immense sense of security because they know exactly where the boundaries stand [47, 62, 185]. + +### Private Alignment over Public Disagreements + +Maintaining a united front means that parents must make a covenant never to disagree, correct, or expose each other's faults in front of their children [162, 163, 164]. Doing so publicizes division and teaches children how to manipulate their parents, which ultimately tears down the spiritual authority of the home [164]. + +Inevitably, there will be moments when one parent observes their spouse making a decision or handling a disciplinary situation in a way they wouldn't have chosen [169, 170]. The natural temptation is to immediately step in and express "wisdom" or correct the spouse on the spot [170]. This is a critical mistake [170]. + +When you feel that irritation rise, you must first deal with your own internal reaction [170]. In front of the children, you must completely support your spouse's decision [162, 163]. Any adjustments, differing views, or scale of discipline must be discussed strictly in private, behind closed doors [162]. In our home, if Deanna handled a situation and I disagreed with the method, we would discuss it privately later so that we could align our hearts before the Lord, but the child always saw us standing as one [55, 162]. + +### Healing the Crack: Humility and Restoration + +Because parents are human, there will be times when they fail to maintain this standard and inadvertently display division or disrespect in front of the child [167]. When this happens, it must be corrected immediately in the spirit of humility [164, 166]. + +First, the parents must align privately [164]. The offending parent should go to their spouse and say: + +> "Cariño, lo siento. I realize that I made you look bad in front of the child, and I repent." [164] + +Second, depending on the situation, it is often necessary to go directly to the child to model genuine repentance and restore the standard of honor [164, 165]: + +> "What I said to you about your mother/father was wrong. The Lord is working in my heart, and I cannot make an excuse for what I did. I want to apologize to you for deshonrar (dishonoring) them in front of you, because they deserve honor." [165] + +There is extraordinary, transformative power when a parent is willing to be authentic and humble before their children [166]. It models a soft, teachable heart and teaches children how to walk out repentance in their own lives [166]. + +### Atmosphere of Peace and Order + +The physical environment of the home directly affects its spiritual atmosphere [157, 159]. A clean, orderly house is a powerful catalyst for a home filled with peace [159]. When a mother takes joy and satisfaction in nurturing and keeping the home, and the husband actively notices, appreciates, and verbalizes his gratitude, it weaves a beautiful bond of peace over the entire household [159, 160]. + +This atmosphere also requires parents to be highly sensitive to one another's limits [160]. Parenting is a demanding, daily labor, and there are times when "too much is too much" and one spouse is exhausted or on edge [143, 160]. In those moments of high stress, the other spouse must be ready to step in, "take the ball," and cover for them [48, 160]. This mutual support ensures that correction is never administered out of exhaustion or emotional agitation [48, 71, 185]. + +### Nurturing the Marriage: Horizontal and Vertical Communication + +We must recognize that child training is not an isolated task; it is completely interwoven with every other area of family life, particularly the marriage relationship [157, 158]. If there is no peace between husband and wife, it is impossible to have lasting peace in training the children [158]. + +Healthy communication requires us to stop simply waiting for our turn to speak so we can make our own point, and instead learn to truly listen to one another's hearts [171, 172]. This communication must be intentionally nurtured [173]. + +To build this horizontal connection, we must make constant, deliberate "positive deposits" into our spouse's emotional bank account [181, 182]. As the proverb of the household says, if you put a coin in the piggy bank every single day, it will eventually be filled [182]. + +A highly practical and transformative exercise for married couples is to commit to a 30-day breakfast covenant [180]. For thirty consecutive days, sit down together for breakfast, and each day, make a specific, intentional positive deposit by telling your spouse one thing you sincerely estimate and appreciate about them [180, 181]. + +For husbands, this requires stepping away from vague, general statements like "You know I love you" or "You look good," and instead sharing specific, particular details of appreciation [183]. For wives, it means actively finding ways to make their husbands feel proud and respected, rather than assuming they only need to receive appreciation without giving it [183, 184]. This intentional focus changes the entire climate of the home because, as Scripture principles teach: + +> "Buscad y hallaréis (Seek and you will find)." [181] + +If you look for faults, you will surely find them; but if you intentionally seek the good in your spouse, you will find it and multiply it [181]. + + +### The Covenant Rule: Never Go to Bed Angry + +To safeguard the home's atmosphere, couples must establish a firm covenant line that they resolve never to cross [180]. Chief among these is the scriptural command: + +> "...do not let the sun go down on your anger." [180] + +In our thirty-seven years of marriage, we decided we would never go to sleep angry with one another [174, 177]. If a disagreement arose, we would take a "time out" to pray individually, allowing the Lord to deal with our own hearts first [175]. Then, we would return, ask for forgiveness where we had failed, and pray together [178]. We did not always agree on the specific point of contention immediately, but we agreed on God and gave Him the place of preeminence in our marriage [178]. + +As a husband, the Lord taught me that I must function as the priest of my home [177]. When my wife made a mistake or did something wrong, the Lord would use it to deal with me first, instructing me to carry the burden, be silent, and go to the cross for her just as Christ did for the Church [177]. When both husband and wife surrender their right to be right and prioritize the covenant, they establish a secure spiritual foundation that their children will naturally inherit, creating a magnificent generational advancement [8, 178, 179]. + +### Themes captured for future book development + +- Parental unity is presented as a source of security, predictability, and authority within the home. +- The chapter emphasizes checking with the other parent rather than allowing children to bypass a previously given answer. +- Disagreements about decisions or discipline are to be handled privately rather than displayed before the children. +- When parents fail publicly, immediate humility, apology, and restoration are presented as a model of repentance. +- Household order, appreciation, mutual awareness, and practical support are connected to a peaceful atmosphere. +- Marriage communication is framed as intentional listening and the repeated making of positive relational deposits. +- The 30-day breakfast covenant is presented as a concrete practice of daily appreciation. +- The command not to let the sun go down on anger is applied as a marriage covenant of prayer, forgiveness, and reconciliation. +- The chapter presents parental surrender, marital covenant, and generational advancement as closely connected. + +### Editorial and pastoral review flags + +- Verify all Scripture references, quotations, translations, and the Spanish phrase "Buscad y hallaréis" before publication. +- Preserve the distinction between the teaching's source claims and later editorial interpretation. +- Clarify the difference between healthy parental unity and coercive control. A united front should not require a parent to conceal abuse, unsafe conduct, serious error, or a child's legitimate disclosure. +- Children should be able to speak safely with either parent. The "What did Dad/Mom say?" practice should not be used to shut down questions, conceal a mistake, or prevent a child from reporting harm. +- The instruction to support a spouse publicly and resolve disagreements privately needs explicit safeguarding exceptions for abuse, intimidation, coercive control, threats, or unsafe discipline. In those situations, protecting the child and seeking qualified help takes priority over preserving appearances. +- The chapter's gendered descriptions of mothers nurturing the home, husbands leading as "priest," and wives making husbands feel proud should be identified as the speaker's marital framework rather than treated as the only faithful model for every family. +- "Never go to bed angry" should be presented with room for healthy time-outs, sleep, boundaries, and professional help; immediate resolution is not always safe or wise during escalation. +- Clarify the meaning, origin, and practical structure of the 30-day breakfast covenant when the original recording context is available. + +--- + + +## Chapter 4: Guarding Influences & Practical Daily Wisdom + + + +### Textile Boundaries & Early Training + +To train a child to listen to their parents' voices, training must begin in infancy with simple, knowable boundaries. Rather than overwhelming a toddler with a laundry list of hundreds of rules that they are incapable of following, parents should establish a few select, physical boundaries [72, 73]. + +A highly practical and successful method for this is blanket training [73]. Spreading a small blanket on the floor, the parent instructs the infant (typically starting around six to nine months of age): + +> "I don't want you going off of that." [73] + +Inevitably, the child's curiosity or old nature will lead them to test the boundary and attempt to crawl off [73, 79, 80]. In that moment, the parent administers a light, instant correction—such as a gentle tap on the hand—and places them back on the blanket, reinforcing the instruction [73]. Within just a few repetitions, the infant learns to associate their disobedience with the immediate correction and willingly remains within the border [73]. + +The goal of this training is not merely to restrict the child's movement or to protect household furniture, such as a coffee table [73]. Rather, it is to train the child to listen to and obey the parent's voice [73]. These physical boundaries provide children with immense security [74]. Just as the Lord establishes boundaries for our lives to keep us secure, clear boundaries in the home let children know exactly what is acceptable, preventing a frantic, heavily policed household and fostering an environment of deep spiritual peace [73, 74, 112]. + +### Guarding the Mind: "Tell-a-Vision" and Media + +In a modern world saturated with technology, parents must exercise extreme vigilance regarding television, tablets, and media [115, 116]. The world's media system is highly intentional; it is designed with specific "channels" and "programming" to literally "tell your vision"—shaping the ideals, desires, and minds of children away from the Kingdom of God [116]. + +Allowing a television or a tablet to act as a surrogate parent is a dangerous convenience [116]. It acts as a deliberate distraction designed by the adversary to draw parents away from their greatest earthly blessing and responsibility: actively training their children [116]. While completely avoiding media in today's society is a challenge, limiting it strictly produces extraordinary, healthy fruit [115, 116]. By closing the door to secular programming, we prevent the enemy from exploiting gaps in our children's security and instead keep their minds pure and focused on the atmosphere of the home [105, 116]. + + +### Nurturing, Presence, and Owning Your Time + +Effective child training cannot be outsourced; it is a precious gift and responsibility given directly by God to the parents [114, 118]. This training requires physical and mental presence [52]. You cannot train up a child in the way they should go if you are not there to walk beside them [52, 118]. + +This truth carries profound implications for the roles of both the mother and the father: + +#### The Mother as the Nurturer + +A mother's primary calling in most circumstances is to stay home, keeping the house and nurturing the family [117, 166]. In this sacred role, she fulfills her God-given ability to multiply [117, 118]. When a husband brings home a paycheck, the wife multiplies it into food and a meal; when provided a house, she multiplies it into a warm, peaceful home [118]. The work a mother does in the home far surpasses any secular career or paycheck [117, 118, 166]. Husbands must actively celebrate, honor, and protect this role rather than allowing the diabolical wisdom of the world to demean it [117, 118, 166]. + +#### The Father as the Provider of Time + +For a mother to stay home, the father must be willing to step outside of the conventional worldly system to prioritize his family [120]. The Lord gave a specific word of wisdom: "Own your time." [120]. Fathers must seek the Lord for creative strategies to free up their schedules so they can be available, present parents [120]. This may mean starting a simple business or adjusting financial expectations to avoid the diabolical trap of Egypt, which demands two incomes and keeps parents too busy making bricks to build the family altar [117, 119, 120]. + +### Integrating Children into Daily Work + +A common mistake parents make is separating their daily lives into strict categories of "work" (which is treated as a burden to be done alone) and "fun" (which is treated as the only desirable activity) [157]. While it is often faster and easier for a parent to paint a wall, do the dishes, or fold the laundry by themselves, this misses a critical opportunity for training [157]. + +Parents should actively integrate their children into all the affairs of daily life [115, 157]. Give an eight-year-old a paint roller and teach them how to paint; let the toddlers help push the buttons on the washing machine or play in the sink while doing dishes [157]. When children are included in these tasks, they do not grow up hating work or viewing it as an awful chore [157]. Instead, they learn that work is a natural, joyful expression of family life [157]. Ultimately, children do not need constant, artificial entertainment; they simply want to be with their parents, and sharing in daily labor bonds the family together in purpose [157]. + +### Themes captured for future book development + +- Early training is presented as the establishment of a small number of clear, physical, understandable boundaries rather than an overwhelming list of rules. +- The source teaching uses blanket training as an example of teaching an infant to respond to a parent's voice and remain within a defined boundary. +- Boundaries are framed not only as restrictions but also as sources of security, predictability, and peace. +- Media is presented as a formative influence that can shape a child's imagination, desires, ideals, and worldview. +- The chapter calls parents to intentional presence rather than allowing devices to become surrogate caregivers. +- The teaching presents a home-centered maternal role and a time-owning, financially creative paternal role as its preferred family framework. +- Children are encouraged to participate in ordinary household work so that labor becomes a joyful expression of family life rather than an isolated burden. +- Family presence and shared work are presented as more formative than constant artificial entertainment. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, and word-study claims before publication. +- Confirm whether the chapter title "Textile Boundaries" is the intended wording or whether it refers specifically to blanket/physical boundaries; preserve the supplied title until the recording context is available. +- The blanket-training example involves an infant, physical correction, and a potentially hazardous environment. Before any parent-facing use, consult current pediatric, child-safety, and safeguarding guidance; do not reproduce the method as a universal instruction or imply that a "gentle tap" is necessary for learning obedience. +- Any early-childhood boundary practice should prioritize supervision, childproofing, developmentally appropriate expectations, non-violent redirection, and prevention of falls or access to unsafe objects. Infant behavior and repeated boundary-testing are normal developmental processes, not proof of an "old nature." +- The language that media is designed by "the adversary," tells a child's vision, or necessarily displaces parental responsibility should be identified as the speaker's theological framing. A final resource should distinguish thoughtful media guidance from fear-based claims and acknowledge educational, relational, accessibility, and family-context differences. +- The claims that child training cannot be outsourced and that mothers should ordinarily stay home should be presented as the teaching's family model, not as a universal measure of faithfulness or parental love. Account for single parents, dual-income households, adoptive and foster families, disability, illness, economic necessity, education, cultural context, and families with different vocational callings. +- The language about two incomes, Egypt, and "making bricks" should be retained as source imagery but carefully contextualized so financial hardship is not treated as a moral failure and so the final book does not impose unsafe or unrealistic economic expectations. +- When children participate in household work, include age-appropriate supervision and safety precautions. Paint, appliances, hot water, sinks, tools, chemicals, ladders, and other household hazards require adult judgment. +- Clarify what "own your time" means in practical, sustainable terms and avoid presenting entrepreneurship or schedule changes as guaranteed solutions for every family. + +--- + + +## Chapter 5: Generational Advancement & the Covenant Family + + +### The Principle of Generational Advancement + +A primary objective of the covenant family structure is what we call "generational advancement" [8, 178, 179]. This means that the spiritual victories, emotional healing, and behavioral discipline established by the parents become the floor upon which the children stand [8, 46, 162]. Because children raised in a genuinely secure, peaceful environment do not have to fight the same battles, wounds, or broken family dynamics that their parents had to overcome, they are uniquely positioned to stand on their parents' advancements and leap forward into their own divine destinies [8, 46, 162]. + +Our children still have their own struggles and areas of life that the Lord must work on [81]. This is a beautiful and necessary reality because everyone needs something in their life that forces them to cry out to the Lord and depend on Him [81]. However, generational advancement ensures that they do not start from scratch; they start from a position of inherited spiritual security [8, 46, 162]. + +### "Cutting the Penny in Half" + +To keep our children from expecting perfection from us—while still keeping them engaged in the process of growth—we taught them a foundational concept [82]. When our daughters were around seven to nine years of age, we sat down for a teaching moment and told them [82]: + +> "Girls, listen. Mom and I are going to be able to cut this penny in half. All this stuff on this half of the penny, the Father is going to work with us to remove it from our lives. But there is still going to be half of a penny left for you to deal with in your own life. And then you are going to have children, and you are going to cut that penny in half again. But you will always have half of the half that remains. Why? Because the Father needs to be sovereign to your children, and He will be." [82] + +This simple, powerful teaching set a healthy expectation within our home [82]. Our daughters did not expect us to be flawless, perfect parents, but they constantly saw us leaning into the Lord, seeking His face, and working to deal with our own "half of the penny" [82]. This vulnerability and transparency created a beautiful, authentic environment where the entire family advanced together before the Lord [82]. + +### Covenant Priorities: God, Family, and Ministry + +In establishing a stable, secure home, parents must walk in strict alignment with God's divine order of priorities [131]. We are firm believers in a covenant hierarchy that must never be compromised [131]: + +1. **God First** +2. **Family Second** +3. **Ministry Third** + +Tragically, when this order is inverted, the home suffers immensely [131]. We see this manifest in the lives of many "preacher's kids" who grow up bitter and distant from the Lord because their parents prioritized public ministry or the affairs of the church over the spiritual and emotional security of their own household [131]. Even for those carrying a powerful ministerial anointing, fathers must seek the Lord for the creative wisdom and divine provision necessary to protect their family time [131]. We must lift our vision higher to see that our children are our primary, most significant ministry [41, 131]. + + +### Relying on the Greater Body + +No family is designed to function as an isolated island. Part of walking in the covenant is recognizing that you are not alone when you are parenting [133]. The Lord has intentionally structured the Body of Christ so that you have older, more mature people around you who have been given pastoral or apostolic responsibility over your life to speak wisdom, correction, and guidance into your household [133]. + +Furthermore, parents must actively teach and model honor for others [134]. In our home, we wanted our daughters to know that they were not restricted to only receiving help from us [134]. We gave them explicit permission that if they ever felt they needed outside spiritual help or counseling, they had the freedom to reach out directly to our trusted leaders and spiritual counselors [134]. By removing the fear of being threatened by outside help, we established a network of absolute security around our daughters [132, 134]. They grew up knowing that if Mom and Dad were struggling, there was a safe, ordained place in the local headship where help, restoration, and life-giving counseling could be found [133]. + + +### Blended Families and Late Starts: Rebuilding the Foundation + +We frequently meet parents who are entering the child training journey late—whether because they have recently come to know the Lord after their children are older, or because they are navigating the unique complexities of a blended family [147, 148]. In these situations, parents often ask how they can remove old, ungodly foundations that were laid before they entered the picture [147]. + +In these cases, the primary strategy is to become the model of the Father's love in their presence [148]. Walk before them as a consistent, unshakeable, secure place that they can count on day in and day out [148]. + +If you are dealing with older children where the primary training window has passed, look backward to see if there are any broken bridges of trust [148]. Seek the Lord and ask yourself: "Have I ever made any promises to my children that I have not kept?" [148] + +If the answer is yes, you must do whatever it takes—no matter how difficult or costly to your finances—to keep your word and fulfill those promises [148]. This act of sacrificial integrity sends a powerful message that you are a parent of truth, modeling the covenant-keeping nature of our heavenly Father [148]. Combine this with doing extraordinary, unexpected things to display your love, and stay closely submitted to your local spiritual headship, who can help navigate the specific nuances of your household [148]. The Lord's grace is fully sufficient to heal, restore, and rebuild the foundations of any home that yields completely to His pattern [148]. + +### Themes captured for future book development + +- Generational advancement is presented as children inheriting a foundation of spiritual security, emotional healing, and parental growth rather than having to begin from the same level of brokenness. +- The "cutting the penny in half" illustration gives children permission to see parental imperfection while also seeing parents actively submit their lives to God's transforming work. +- The teaching holds together two ideas: parents can remove or reduce patterns of brokenness, while children still have their own agency, struggles, and relationship with God. +- The proposed covenant priority is God first, family second, and ministry third. +- Children are presented as a primary ministry and a responsibility that should not be sacrificed to public ministry demands. +- Parenting is framed as a communal responsibility in which mature, trusted members of the local church can provide wisdom, correction, counseling, and restoration. +- Children are encouraged, in the source account, to have access to safe outside help rather than being limited to their parents alone. +- Parents who begin later or who are navigating blended-family complexity are called to rebuild trust through consistency, integrity, fulfilled promises, demonstrated love, and patient presence. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, and the theological language surrounding "generational advancement" before publication. +- Preserve the "cutting the penny in half" illustration and its source context, but clarify that children are not responsible for repairing or carrying their parents' unresolved wounds. Parental healing should reduce burdens on children, not assign them a quantified share of family brokenness. +- The teaching's statement that everyone needs struggles that force dependence on God should be handled carefully. Do not romanticize trauma, abuse, poverty, disability, mental-health challenges, or other suffering as divinely necessary or as evidence of spiritual deficiency. +- "God first, family second, ministry third" should be explained rather than used as a slogan that automatically resolves competing responsibilities. The final resource should address safety, marriage and parenting obligations, work, health, community, and the needs of vulnerable family members. +- The claim concerning "preacher's kids" should be qualified and supported if retained. Children's experiences of ministry families are varied, and bitterness or distance from faith should not be attributed simplistically to parental prioritization. +- Outside spiritual leaders, pastors, counselors, and "local headship" must be safe, qualified, accountable, and subject to appropriate safeguarding standards. Children should have confidential, age-appropriate ways to disclose concerns, including access to adults outside the parents' chosen circle when needed. +- "Submission" to spiritual authorities must never mean unquestioning obedience, secrecy, isolation, surrender of parental or child safety, or protection of leaders from scrutiny. The final book should explicitly preserve the right to seek independent professional help and report abuse. +- In blended families, rebuilding trust requires consent, patience, predictable care, respect for existing parent-child bonds, and attention to grief, loyalty conflicts, trauma, and legal/custody realities. A new spouse or parent figure cannot demand instant spiritual or relational authority. +- The instruction to fulfill promises "no matter how difficult or costly" should be bounded by safety, legality, financial sustainability, and the child's best interests. Parents should not keep an unsafe, impossible, manipulative, or harmful promise merely to preserve appearances. +- "Extraordinary, unexpected" demonstrations of love should be age-appropriate, non-coercive, and responsive to the child's actual needs rather than used to purchase trust or compliance. +- Clarify whether "late" refers to age, conversion, remarriage, or a previous parenting approach, and avoid framing earlier family history as an "ungodly foundation" in a way that shames parents or children. + +--- + + +## Chapter 6: The Covenant Parenting Workbook — Reflection and Action + + +This workbook is designed to help you and your spouse move beyond information and step into active, structural transformation [119]. Covenant parenting is not a formula to be checked off; it is a living relationship that must be intentionally walked out before the Lord and before your children [51, 52]. Use these reflective questions, practical exercises, and covenant commitments to build a secure sanctuary of peace in your home [14, 130]. + +--- + +### Workbook — Chapter 1 focus: Modeling & Generational Vision +#### Heart-level reflections +**Dependent Sonship:** Jesus modeled a life of complete dependence on His Father ("I don't do anything but I see my father do it" [9]). In what areas of your daily life are you struggling to walk in instant obedience to your Heavenly Father? How might this struggle affect your children's ability to obey your voice [11]? + +**The Power of the Model:** In the eyes of a young child, you represent God—His authority, His love, and His safety [10, 62]. When you come home on edge or exhausted, what kind of father or mother are you modeling [11, 60]? + +**Multi-Generational Legacy:** Are there areas where you have fallen into passive parenting or short-sightedness [11, 12]? If you parented with a vision that extended three generations deep, what would you change about your household today [12, 55]? + +#### Action steps +**The Refuge Audit:** Identify one major source of fear, anger, or insecurity in your own heart [13]. Set aside a specific time to bring this before the Lord, asking Him to deal with the root of this brokenness [13]. Re-read Proverbs 14:26: + +> "In the reverent fear of the Lord, there is strong confidence, and his children will always have a place of refuge." [13] + +Write down how you will yield to His healing hand this week to make your home a stronger refuge [13, 62]. + +--- + + +### Workbook — Chapter 2 focus: Redemptive Correction +#### Heart-level reflections +**The Rule of Calmness:** Do you ever correct your children out of irritation, frustration, or a desire for convenience [22, 101]? What is the difference between biblical discipline (which restores) and humanistic punishment (which lingers) [21, 76]? + +**Removing Shame:** Does correction in your home leave a lingering shadow of guilt or emotional distance, or does it result in immediate restoration, hugs, and perfect right standing [21, 76, 79]? + +#### Action steps +**The Hand Consecration:** Make a solemn covenant with your spouse today that your hands are strictly reserved for holding, hugging, and expressing love [20, 73]. Remove all wooden spoons, belts, and other rigid implements from your parenting toolbox [20, 73]. + +**Setting Up the "Correction Room":** Identify a private room in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 163]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that designated room [20, 164]. Agree to never correct your child in front of guests, siblings, or in public [23, 163]. + +**Practice Stopping:** If you feel your blood pressure rising during a correction, commit to saying: "I am not in a position to handle this right now." Ask your spouse to cover for you, or find a controlled situation before the Lord until you can speak in a calm, tender voice [22, 78, 101]. + +--- + +### Workbook — Chapter 3 focus: Parental Unity & Atmosphere +#### Heart-level reflections +**The Cracks of Division:** Children are astute observers who look for alignment [24]. Can your children find any "cracks" between you and your spouse to get a different answer [24, 189]? + +**Private Alignment:** Have you fallen into the trap of correcting, undermining, or arguing with your spouse in front of the kids [26, 193]? How can you build a stronger habit of waiting until you are behind closed doors to resolve parenting differences [26, 27, 192]? + +#### Action steps +**The "What Did They Say?" Protocol:** Practice the immediate gatekeeping response. Whenever a child asks for permission or a treat, always ask: "What did Dad say?" or "What did Mom say?" [24, 25, 198]. If the other spouse has given an answer, the discussion is permanently closed [25, 199]. + +**The 30-Day Breakfast Covenant:** Set your alarm 30 minutes earlier. Sit down together for breakfast every day for the next 30 days [32, 210]. Each morning, share one specific, particular detail that you sincerely estimate and appreciate about your spouse [32, 33, 211, 213]. Focus on finding the good, and watch the atmosphere of your marriage and home transform [34, 211]. + +**The Sunset Covenant:** Commit to the rule of Ephesians 4:26: + +> "...do not let the sun go down on your anger." [34, 210] + +Agree that no matter the disagreement, you will pray individually, come together, ask for forgiveness, and pray together before sleeping [34, 208]. + +--- + + +### Workbook — Chapter 4 focus: Guarding Influences & Daily Wisdom +#### Heart-level reflections +**Surrogate Parenting:** Is television or digital media acting as a surrogate parent or a distraction from your training responsibilities [38, 134]? How is "tell-a-vision" programming shaping the minds and desires of your children away from the Kingdom [38, 134]? + +**Owning Your Time:** Fathers, are you caught in the "Egyptian" bricks-and-mortar trap of overworking at the expense of being present to train your children [39, 137]? What adjustments do you need to make to own your time [39, 138]? + +#### Action steps +**The Blanket Training Trial:** For infants (6–9 months), lay down a small blanket on the floor [36, 91]. Practice giving the quiet command: "I don't want you going off of that." [37, 91] Gently correct their hand when they test the boundary, and place them back on [37, 91]. Use this tool to train their ears to listen to your voice [37, 91]. + +**Integrating vs. Separating:** Stop treating household chores as a solo burden. This week, give your child a paint roller, have them help push buttons on the washing machine, or pull up a chair to help wash dishes [40, 175]. Let them participate in your daily life, reinforcing that the family works together with joy [40, 175]. + +--- + +### Workbook — Chapter 5 focus: Generational Advancement & Covenant Priorities +#### Heart-level reflections +**The Penny in Half:** Do your children carry the heavy burden of expecting you to be perfect [42, 43]? How can you model humility and the pursuit of growth rather than a false image of perfection [43, 95]? + +**The Priority Order:** Honestly assess your calendar and energy. Are you living according to the covenant order: God First, Family Second, Ministry/Work Third [43, 44, 144]? + +#### Action steps +**The "Half-Penny" Conversation:** Gather your children (especially those ages 7–9 or older) [42, 95]. Share the "half-penny" teaching with them: + +> "Mom and I are not perfect parents, but we are working with the Lord to clear away old battles so you don't have to fight them [41, 42, 95]. There will still be a portion left for you to deal with, but you will stand on our shoulders." [41, 42, 95] + +**Rebuilding Broken Bridges (Late Starts / Blended Families):** Seek the Holy Spirit and ask: "Have I ever made any promises to my children that I have not kept?" [47, 161] If a promise comes to mind—no matter how small or how financially challenging—make a concrete plan to keep your word and fulfill that promise this month [47, 161]. + +### Themes captured for future workbook development + +- The material moves from teaching content into self-examination, shared marital practices, and concrete household commitments. +- The workbook treats parental transformation and modeling as the starting point for changes in the home. +- The questions invite parents to examine obedience, emotional regulation, presence, priorities, division, media use, and generational vision. +- The proposed exercises include a refuge audit, a calmness practice, parental-unity protocols, a 30-day appreciation covenant, media and time audits, shared household work, a half-penny conversation, and promise-repair work. +- The source workbook is intended to be used by spouses together, not merely read individually. +- Each chapter's practical section mirrors the book's larger sequence: model first, correct redemptively, build unity, guard influences, and advance the covenant family. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between the workbook citations and the original audio/NotebookLM source. +- The physical-discipline exercises in Sections 2 and 4 should not be presented as ready-to-use instructions in a parent-facing workbook. Replace or substantially revise them after professional safeguarding review, with non-violent, age-appropriate alternatives centered on supervision, redirection, natural/logical consequences, repair, and emotional regulation. +- The "correction room" exercise should not encourage isolating a child with an adult or imply that privacy overrides safety, accountability, or a child's right to disclose harm. Any final version should include clear safeguarding boundaries and appropriate access to trusted, independent help. +- The suggestion to place a switch in the home should be removed from a practical action checklist unless the final theological and safeguarding review explicitly justifies its inclusion; the current source note must not be mistaken for an endorsement. +- "Perfect right standing" and the idea that correction removes a spiritual debt require theological review so that children are not taught that physical pain is required for forgiveness, belonging, or restoration. +- "If the other spouse has given an answer, the discussion is permanently closed" should be softened to allow clarification, correction of mistakes, accessibility needs, changing circumstances, and safe disclosure. Children must not be trained to stop asking questions or reporting concerns. +- The 30-day breakfast and sunset covenants should allow for work schedules, illness, disability, conflict de-escalation, sleep, safety, and circumstances in which immediate reconciliation is not appropriate. +- The blanket-training trial should not be reproduced without current pediatric and child-safety review. Infant crawling and boundary-testing are normal development; safe supervision and childproofing should come before obedience training. +- The "Egyptian" overwork metaphor and "own your time" exercise should not shame parents who must work, rely on childcare, or manage financial hardship. Include varied family structures and realistic economic constraints. +- Household-work activities require age-appropriate supervision around paint, appliances, water, heat, tools, chemicals, and other hazards. +- The half-penny conversation should be adapted so children are not assigned responsibility for parental wounds or told they must inherit a predetermined portion of brokenness. Emphasize parental accountability, the child's agency, and freedom to seek help. +- Promise-repair exercises should be bounded by safety, legality, financial sustainability, custody arrangements, and the child's best interests; a parent should not fulfill a harmful or impossible promise. +- The workbook should include an explicit "when to seek help" page covering trusted pastoral care, licensed counseling, child-protection concerns, domestic abuse, mental-health crises, and situations in which a parent cannot stay calm or keep a child safe. + +--- + + +## The 30-Day Covenant Parenting Challenge Calendar + + +This practical, day-by-day companion calendar is designed to help you and your spouse actively move from information to structural, heart-level transformation in your home [48]. Covenant parenting is a living relationship that must be intentionally walked out before the Lord and before your children [48, 62]. Use this daily tracker to build a secure sanctuary of peace in your household [48, 141]. + +--- + +### Week 1: Laying the Marital Foundation + +The spiritual atmosphere of the home is anchored in the absolute unity of husband and wife [3, 199]. This week, we focus entirely on sealing the "cracks" of division, aligning our hearts privately, and nurturing horizontal communication [3, 24, 31, 200]. + +#### Day 1: The Sunset Covenant (Ephesians 4:26) + +**Action:** Sit down with your spouse tonight and make a solemn covenant that you will never go to sleep angry [34, 218]. If a disagreement arises, commit to taking a private "time out" to pray individually, then come together to ask for forgiveness and pray together before sleeping [34, 216, 219]. + +**Scripture:** "...do not let the sun go down on your anger." [34, 54, 218, 221] + +#### Day 2: Launching the 30-Day Breakfast Covenant + +**Action:** Set your alarm 30 minutes earlier [54, 221]. Sit down for breakfast together (just the two of you) and share one specific, particular detail you sincerely appreciate and estimate about your spouse [32, 33, 54, 221, 224]. **Rule for Husbands:** Avoid generalities like "you look good"—find a particular, concrete action to celebrate [33, 224]. + +**Scripture:** "Seek, and you will find." [33, 222] + +#### Day 3: The "What Did Dad/Mom Say?" Gatekeeping Protocol + +**Action:** Align on the gatekeeping protocol [54, 210]. Whenever a child approaches you asking for a treat, permission, or a change in rules, your immediate, unthinking response must be: "What did Dad say?" or "What did Mom say?" [24, 25, 54, 210]. If the other spouse has given an answer, the discussion is permanently closed [25, 54, 210]. + + +#### Day 4: Day 3 of the Breakfast Covenant + +**Action:** Share your daily specific deposit [32, 33]. Today, focus on celebrating how your spouse handles pressure or exhaustion [30, 143, 201]. + +#### Day 5: Private Discipline Alignment Check + +**Action:** Covenant together that you will never correct, undermine, or disagree with each other's disciplinary actions in front of the children [26, 204, 205]. If you disagree with how a situation was handled, deal with your own irritation privately and discuss it strictly behind closed doors later [27, 211]. + +#### Day 6: Modeling Humility & Repentance + +**Action:** If you slipped up this week and displayed division or disrespect in front of your children, execute the restoration protocol [28, 205]. First, apologize to your spouse privately: + +> "My love, I am sorry. I realize that I made you look bad in front of the child, and I repent." [28, 205] + +Second, go to the child: + +> "What I said to you about your mother/father was wrong. I want to apologize to you for dishonoring them in front of you." [29, 206] + +#### Day 7: Weekly Reflection & Rest + +**Action:** During your breakfast covenant today, evaluate the atmosphere of the home [32, 221]. Has the spirit of peace and security increased? Ask: "Are we taking time to truly listen to one another's hearts, or are we just waiting for our turn to speak?" [31, 213]. + +--- + +### Week 2: Establishing Heart-Level Security & Early Boundaries + +This week, we transition into early training boundaries and emotional security. We examine how our physical actions, voice tone, and early limits build a protective shield around our children [3, 20, 37, 103]. + +#### Day 8: Consecrating the Hands & the Voice + +**Action:** Consecrate your hands and voice today [20, 226]. Declare that your hands are made exclusively for hugging, holding, and expressing love and tenderness [20, 84, 226]. Agree that your voice will never be the vehicle of correction, but only of instruction, praise, and love [226]. Remove all rigid correction implements (belts, heavy spoons) from the home [20, 84, 52]. + +#### Day 9: Establishing the "Correction Room" + +**Action:** Identify a private, designated area in your house (a bedroom or bathroom) that will serve as the private place of correction [23, 174]. Place a tender, limber lilac switch (smooth, with bumps shaved off) in that room [20, 175]. Commit to never correcting your children publicly or in front of siblings [23, 174]. + +#### Day 10: Expressive Love Deposits + +**Action:** Be intentionally expressive today [139, 140]. Hug your children unexpectedly, write them a sweet note, or tell them specific reasons why you love them and estimate who they are [139, 140]. Ensure they know their security is unshakeable [87, 103]. + +#### Day 11: Blanket Training Setup (For Infants 6–9 Months) + +**Action:** Spread a small blanket on the floor [36, 102]. Place the infant on it and say quietly: "I don't want you going off of that." [37, 102] When they attempt to crawl off, gently tap their hand to associate disobedience with instant correction, and place them back on the blanket [37, 102]. Repeat this several times in a focused, calm session [37, 102]. **(For older children, choose a single, clear boundary—like not touching the coffee table—to train their ears to listen to your voice [102].)** + +#### Day 12: The Rule of Calmness Practice + +**Action:** If you feel your blood pressure rising or feel on edge during a disciplinary moment today, practice stopping immediately [22, 112]. Say to your spouse: "I am not in a position to handle this right now," and let them step in and cover for you, or find a calm place before the Lord before addressing the situation [22, 30, 52, 112, 185]. + +#### Day 13: Instant Obedience Check + +**Action:** Evaluate if you have fallen into the trap of counting to three or repeating commands multiple times [227]. Commit today to expecting instant obedience to your voice [141, 227]. Give clear, loving instruction once, and address any delay as disobedience [140, 141, 227]. + +#### Day 14: Mid-Point Reflection + +**Action:** Reflect on Proverbs 14:26 [3, 74]. Write down how growing in your own reverent fear and instant obedience to the Heavenly Father has created a physical and spiritual "shield of refuge" for your children this week [3, 13, 74]. + +--- + +### Week 3: Integrating Work, Joy, and Presence + +We are called to own our time, stay present, and include our children in the everyday affairs of life so they learn that labor is a joyful, natural expression of the family [5, 39, 40]. + +#### Day 15: Media Audit ("Tell-a-Vision") + +**Action:** Walk through your home and evaluate the media intake [38, 145]. Identify where tablets, phones, or television are acting as "surrogate parents" or distractions [38, 145]. Agree to strictly limit or close the door to secular programming to keep the atmosphere of the home pure [38, 145]. + +#### Day 16: Erasing the Work vs. Fun Boundary + +**Action:** Stop treating household chores as a solo burden [40, 186]. Today, pull up a chair and let your toddler help wash dishes, push the buttons on the washing machine, fold laundry, or give your older child a paint roller to help paint [40, 186]. Make work a shared, joyful experience of living life together [40, 186]. + +#### Day 17: Father's Covenant: Owning Your Time + +**Action:** Fathers, spend time before the Lord today asking for creative, Kingdom strategies to "own your time" [39, 149]. Examine your schedule to ensure you are physically and mentally present for your family rather than caught in the "Egyptian brick-making trap" of excessive work [39, 148, 149]. + +#### Day 18: Celebrating the Mother's Role + +**Action:** Husbands, take time today to actively celebrate, verbalize, and honor the sacred work your wife does in nurturing the home and multiplying your family's resources [30, 39, 147]. Let her know that her presence far surpasses any secular career or paycheck [39, 146, 147]. + +#### Day 19: The "I Will Say Yes" Promise + +**Action:** Look for opportunities to say "Yes!" to your children today [151]. Tell them: "There are times I have to say no to protect you, but I am looking for every opportunity to say yes to you." [151, 152] Plan a family-appropriate trip, surprise outing, or special treat to fulfill this promise [151, 153]. + +#### Day 20: Outdoor Activity Shift + +**Action:** If the atmosphere of the home feels pent up or stressful today, physically shift locations [179, 180]. Take the children outside to build a fort, play in the yard, go to the park, or take a simple drive [179, 180]. Use nature and play as a release valve for energy [178, 180]. + +#### Day 21: Weekly Reflection: Celebration of Individuality + +**Action:** Discuss how your children are uniquely wired [118, 121]. Repent of any verbal comparisons between siblings [119, 120]. Ask the Holy Spirit for custom wisdom (Rhema word) for each child's specific, unique design [117, 118]. + +--- + +### Week 4: Generational Legacy & Deep Restoration + +We parent with a multi-generational vision, preparing our children to stand on our spiritual shoulders and leap forward into their own divine destinies [6, 12, 41]. + +#### Day 22: The "Half-Penny" Conversation + +**Action:** Gather your children (especially those ages 7–9 or older) for a teaching moment [42, 106]. Explain the "half-penny" concept: + +> "Mom and Dad are not perfect, and we are working with the Lord to clear away old battles so you don't have to fight them [42, 106]. There will still be a portion left for you to deal with under His sovereign hand, but you will stand on our shoulders." [41, 42, 106] + +#### Day 23: Rebuilding Broken Bridges (Late Starts & Blended Families) + +**Action:** Ask the Holy Spirit: "Have I ever made any promises to my children that I have not kept?" [47, 172] If a promise comes to mind—no matter how small or financially difficult—write down a concrete plan to keep your word and fulfill it this month [47, 172]. Fulfilling your promises models our covenant-keeping Father [47, 172]. + +#### Day 24: Covenant Priority Check + +**Action:** Audit your calendar, finances, and energy [57]. Are you walking in strict alignment with God's covenant order of priorities: God First, Family Second, Ministry/Work Third? [43, 44, 57] Adjust any inverted priorities today [44]. + +#### Day 25: Honoring the Greater Body + +**Action:** Teach your children that they are not alone, and that they have the freedom to reach out to trusted, ordained local leaders or counseling elders if they ever need help or counsel [45, 157]. Model this by showing submission and honor to local headship yourself [45, 157]. + +#### Day 26: Facing Insecurities + +**Action:** Realize that any insecurities you carry do not have to be passed down [14, 104]. Bring your deep-seated fears or past family wounds to the Lord, allowing Him to heal you so that your children can walk in total, inherited spiritual security [14, 73, 104, 105]. + + +#### Day 27: Concluding the 30-Day Breakfast Covenant Challenge + +**Action:** As you complete your 30th breakfast together, commit to making these daily specific deposits a permanent, lifelong habit of your marriage [32, 223]. Celebrate how focusing on finding the good has transformed your relationship [34, 222]. + +#### Day 28: Preparing the Next Generation to Model + +**Action:** Reflect on Acts 13:36 [12]. Pray a blessing over your children, asking the Lord to equip them to serve His purposes faithfully in their own generation [12, 65]. + +--- + +### Days 29–30: Evaluation & Generational Forwarding + +#### Day 29: Joint Spouse Review + +**Action:** Review the completed 30-day challenge. Where did you see the most significant fruit? Where did the Holy Spirit highlight areas that still need to be "narrowed up" or healed? [14, 73, 76] + + +#### Day 30: Sealing the Legacy + +**Action:** Commit this parenting journey to the Lord in prayer [193]. Declare that your family is stepping into generational advancement, and that the spiritual ceiling of your life has officially become the floor upon which your children stand [6, 41, 105]. + +### Development themes +- The calendar begins with marital unity and communication before moving into child-focused boundaries and correction. +- Its sequence progresses from household atmosphere, to heart-level security, to presence and shared work, and finally to generational legacy and restoration. +- The daily practices emphasize appreciation, repentance, calmness, parental consistency, presence, media awareness, shared labor, individualized attention, promise keeping, and prayer. +- The calendar translates the broader teaching into a structured rhythm of daily action, weekly reflection, and final evaluation. +- The challenge repeatedly connects parental transformation with the security and future formation of children. +- The calendar includes both couple-centered practices and child-centered conversations, allowing later editions to distinguish exercises for spouses, infants, older children, blended families, and ministry families. + +### Editorial, pastoral, developmental, and safeguarding review +- Verify all Scripture references, quotations, translations, page/source-number citations, and the relationship between this calendar's citations and the original audio/NotebookLM source. +- The calendar contains repeated instructions to use a switch, tap an infant's hand, and conduct private physical correction. These instructions should not be distributed as a ready-to-use parent program. Before any public edition, replace or substantially revise them after professional pediatric, child-development, and safeguarding review, centering non-violent redirection, supervision, natural/logical consequences, repair, and emotional regulation. +- The "correction room" should not be framed as a private space where a child is isolated with an adult without safety, accountability, and access to independent help. Privacy should protect dignity, not conceal harm. +- "Never go to sleep angry" and the sunset covenant should allow safe time-outs, sleep, boundaries, and delayed conversation. Immediate reconciliation is not appropriate in every conflict, particularly where there is intimidation, coercive control, abuse, or escalating danger. +- The "What Did Dad/Mom Say?" protocol and the phrase "the discussion is permanently closed" require safeguards. Parents may need to correct a mistake, hear a child's question, accommodate disability or changing circumstances, or receive a disclosure of harm. Unity must not become silencing. +- Day 8's instruction that the voice should never be a vehicle of correction conflicts with the broader source teaching's emphasis on correcting disobedience and should be clarified in the original recording context. +- Day 13's "instant obedience" exercise should be reviewed developmentally. Young children may need repetition, processing time, communication support, or an explanation of a request; delay is not automatically defiance. +- The 30-day breakfast count appears internally inconsistent: the calendar launches the breakfast covenant on Day 2, labels Day 4 as "Day 3," and calls Day 27 the 30th breakfast even though the listed daily breakfast actions do not clearly account for thirty meetings. Reconcile the schedule before publication. +- The "I Will Say Yes" promise should not pressure parents into purchasing outings or treats, or make a child's felt love dependent on receiving a yes. Define realistic, relational ways to say yes while preserving necessary boundaries and financial sustainability. +- The "Egyptian brick-making trap," the instruction that a mother's presence surpasses a secular career, and the gendered roles should be presented as the speaker's family framework, not a universal measure of faithfulness. Include single parents, dual-income families, childcare, disability, illness, economic necessity, adoptive/foster families, and varied vocational callings. +- Outdoor drives and activities require ordinary safety planning, supervision, weather awareness, transportation restraints, and age-appropriate expectations. +- Day 21's language about each child being uniquely wired is valuable, but "Rhema word" should be explained and should not replace listening to the child, developmental knowledge, qualified support, or medical/mental-health care. +- The half-penny exercise should not tell children they inherit a predetermined portion of parental brokenness. Emphasize parental accountability, the child's agency, and freedom to seek help. +- Trusted local leaders, "counseling elders," and "local headship" must be qualified, accountable, safeguarding-compliant, and open to independent scrutiny. Children must retain access to safe adults outside the parents' chosen leadership circle and to licensed professional help. +- "Submission" to church authority must never require secrecy, unquestioning obedience, isolation, surrender of safety, or protection of leaders from scrutiny. +- Promise-repair exercises should be bounded by safety, legality, custody arrangements, financial sustainability, and the child's best interests. An unsafe or impossible promise should be addressed honestly rather than fulfilled at any cost. +- "Generational forwarding" and the statement that a parent's spiritual ceiling becomes a child's floor should be framed as an aspirational metaphor, not a guarantee or a burden placed on children to continue a parent's ministry or spiritual achievements. diff --git a/projects/covenant_parenting_bryan_hickman_revised.pdf b/projects/covenant_parenting_bryan_hickman_revised.pdf new file mode 100644 index 0000000..4d6dc2a Binary files /dev/null and b/projects/covenant_parenting_bryan_hickman_revised.pdf differ diff --git a/projects/eatc/2021-01-16-eatc-inaugural-covenant-teaching.md b/projects/eatc/2021-01-16-eatc-inaugural-covenant-teaching.md new file mode 100644 index 0000000..afa7179 --- /dev/null +++ b/projects/eatc/2021-01-16-eatc-inaugural-covenant-teaching.md @@ -0,0 +1,72 @@ +--- +title: EATC Inaugural Meeting — Teaching on Covenant +meeting_date: 2021-01-16 +tags: [eatc, emi, meeting, covenant, leadership] +source: EATC-Covenant-Teaching-Summaries.pdf +--- + +# EATC Inaugural Meeting — Teaching on Covenant + +**Meeting date:** January 16, 2021 +**Source:** `EATC-Covenant-Teaching-Summaries.pdf` +**Source type:** Summary of meeting transcript + +## Central purpose + +The teaching presented covenant as the foundation for spiritual unity, shared governance, and coordinated action within EATC. The group was described as an “ecclesia,” a “church within a church,” or a “headship company” intended to help lead transformation in the Port St. Lucie region. + +The stated purpose was not merely educational. The teaching was preparation for formalizing binding commitments through a written covenant and spoken declarations. + +## Main objectives described + +### Establish binding commitment + +- Covenant commitments were to be verbalized rather than left theoretical. +- The teaching prepared participants for formal covenant-making. +- The covenant was presented as a serious, non-negotiable commitment among members. + +### Establish five covenant relationships + +The summary identifies five relationships described in the teaching: + +1. Covenant with God concerning His purpose +2. Covenant with the EMI family +3. Covenant with Port St. Lucie +4. Covenant with one another +5. Covenant with Apostle Boney + +### Prevent internal division + +The teaching framed covenant as protection against internal betrayal, discord, and division. It emphasized loyalty, love, restoration, and responsibility toward fellow members. + +### Empower unified action + +Genesis 11 was used as a model of corporate unity: people with one language and purpose can accomplish what they set out to do. EATC was presented as a unified foundation for collective action. + +### Form a governing leadership body + +Members were described as catalysts or agents for change in the region—not simply church attendees, but a foundational leadership structure for spiritual, civic, and regional transformation. + +## Scriptural and illustrative foundations + +The summary records references to: + +- Genesis 18:18–19 — covenant extending to the household and responsibility to keep the way of the Lord +- Exodus 19:4–6 — obedience and covenant identity +- Matthew 24:15 — spiritual danger associated with internal betrayal +- Proverbs 6:16–19 — sowing discord among brethren as an abomination +- 1 John 2:18–19 — the danger of opposition arising from within +- 1 Corinthians 13 — love as the foundation of covenant relationship +- Galatians 3:15 — the binding nature of a confirmed covenant +- Acts 4:32–34 — the early church as a model of shared stewardship +- 1 John 5:14–16 — responsibility to seek restoration and life for a brother +- Galatians 6:1 — restoring someone gently when caught in sin +- The Navy SEAL Creed — used as a secular comparison for loyalty and sacrifice + +## Overall interpretation of the meeting + +The inaugural teaching established EATC’s identity around covenant community, shared purpose, accountable relationships, and leadership for regional transformation. It served as foundational preparation for a formal covenant document and subsequent spoken commitments. + +## Source note + +This note preserves the supplied summary’s description of the meeting. It does not independently verify the transcript quotations, timestamps, or theological interpretations. diff --git a/projects/eatc/2021-02-06-eatc-purpose.md b/projects/eatc/2021-02-06-eatc-purpose.md new file mode 100644 index 0000000..d7b7025 --- /dev/null +++ b/projects/eatc/2021-02-06-eatc-purpose.md @@ -0,0 +1,87 @@ +--- +title: Understanding the Purpose of EATC +meeting_date: 2021-02-06 +tags: [eatc, emi, meeting, covenant, apostolic-leadership, port-st-lucie] +source: Understanding-the-purpose-of-EATC-feb-6-2021-m4a_Aug_25__2026.pdf +--- + +# Understanding the Purpose of EATC + +**Recording title date:** February 6, 2021 +**Source file:** `Understanding-the-purpose-of-EATC-feb-6-2021-m4a_Aug_25__2026.pdf` +**Source transcription:** Fireflies.ai summary +**PDF-generated meeting date:** August 26, 2026; likely the transcription/export date rather than the recording date + +## Summary + +The meeting described EATC as a spiritual and leadership training center intended to develop apostolic leadership, form a covenant community, and establish a model for regional and eventually global replication. Port St. Lucie was presented as the initial geographic focus. + +The meeting also addressed covenant adoption, teaching materials, confidentiality, future declarations, and practical steps for distributing recordings and documents. + +## Vision and strategic direction + +- EATC was presented as a center for spiritual and regional leadership in Port St. Lucie. +- The stated ambition was for the model to be replicated in other regions globally. +- The vision included placing people in key spiritual, civic, and political leadership roles. +- Port St. Lucie was described as a spiritually significant location for kingdom purposes. +- Biblical examples included Nehemiah’s rebuilding work and Daniel’s rise to authority in Babylon. +- The long-term vision included developing land, businesses, and regional influence. + +## Spiritual warfare and authority + +The meeting included declarations concerning spiritual warfare, territorial authority, and opposition to the mission. The summary describes a decree calling spiritual and natural authorities to support the building of God’s kingdom in the region and to provide resources. + +These statements are recorded as part of the meeting’s teaching and declarations, not as independently verified external facts. + +## Covenant community + +The covenant was presented as the basis for unity, accountability, and operational cohesion. + +Members were expected to commit to: + +- Loyalty and transparency +- Love and forgiveness +- Mutual support +- Confidentiality +- Shared mission and responsibility + +The summary describes a blood-covenant ritual and plans to register and sign a formal covenant document. It also says that covenant discussions were treated as confidential and that the community’s priority was distinguished from the wider family. + +## Teaching and training materials + +The meeting referenced teaching resources on: + +- Apostolic leadership +- Honor +- Spiritual warfare +- Covenant +- Breaking limits +- Apostolic centers and transformation +- Blood covenant and horizontal covenant + +Authors and sources mentioned include Tudor Bismarck, Alan Carron, C.H. Pierce, and other apostolic teaching resources. The group planned to accelerate study and make recordings and materials available to members. + +## Community and meeting practices + +- Meetings were described as invitation-only. +- Members were instructed not to invite others without approval. +- The principle that what happens in the meetings stays within the group was emphasized. +- WhatsApp and email were used for covenant-document distribution. +- Technical support was needed for recording, compression, and file sharing. +- Regular Saturday meetings were planned. +- Prayer for practical needs such as housing, jobs, food, and spiritual empowerment was included. + +## Action items recorded + +- **Apostle John Boney:** Finalize the covenant document with members’ names and distribute it for review and signing. +- **David Hewitt:** Compile and share a comprehensive list of teaching materials. +- **Unassigned:** Contact the Tudor Bismarck organization and Robin Bullock for access to referenced teaching videos. +- **Chris:** Prepare and finalize the covenant agreement and send it to the group for signatures. +- **All members:** Review the covenant and related teachings, then prepare to affirm the covenant publicly. +- **Meeting organizers:** Post the covenant and prior recordings to the group’s WhatsApp or mailing list. +- **Meeting organizer:** Facilitate public verbal affirmation at the next meeting. +- **Group:** Keep Saturdays open for future meetings and covenant-renewal sessions. + +## Source note + +This note is a structured consolidation of the supplied PDF summary. It preserves the meeting’s reported vision, teachings, declarations, and action items without independently verifying them. diff --git a/projects/eatc/2021-02-20-eatc-purpose-part-2.md b/projects/eatc/2021-02-20-eatc-purpose-part-2.md new file mode 100644 index 0000000..22812b8 --- /dev/null +++ b/projects/eatc/2021-02-20-eatc-purpose-part-2.md @@ -0,0 +1,93 @@ +--- +title: Understanding the Purpose of EATC — Part 2 +meeting_date: 2021-02-20 +tags: [eatc, emi, meeting, covenant, leadership-development, port-st-lucie] +source: Understanding-the-purpose-of-EATC-part-2-02-20-2021-m4a_Aug_25__2026.pdf +--- + +# Understanding the Purpose of EATC — Part 2 + +**Recording title date:** February 20, 2021 +**Source file:** `Understanding-the-purpose-of-EATC-part-2-02-20-2021-m4a_Aug_25__2026.pdf` +**Source transcription:** Fireflies.ai summary +**PDF-generated meeting date:** August 26, 2026; likely the transcription/export date rather than the recording date + +## Summary + +This meeting focused on leadership selection, spiritual preparation, covenant accountability, divine assignment, and expansion beyond the original Port St. Lucie setting. + +The summary describes a selective leadership pipeline: from an initial group of approximately 50 people, a smaller group of 12 would qualify as close leaders based on spiritual readiness, commitment, and response to God’s purpose. + +## Leadership development and qualification + +- Leadership qualification was presented as based on spiritual readiness rather than convenience or personal ambition. +- The model was compared with Jesus’ disciples, where those closest to leadership carried greater expectations. +- Preparation was described as requiring endurance, testing, hardship, and long-term growth. +- Moses was used as an example of extended preparation before leadership. +- Future leaders were expected to be equipped for church, civic, and local-government roles. +- Leaders’ reputations were described as connected to their faithfulness to the covenant. + +## Divine assignment and humility + +The teaching emphasized that members do not choose their own positions; assignments are determined by God. The intended result was humility, submission, and reduced rivalry among participants. + +Understanding one’s calling was connected to close relationship with leadership and spiritual mentorship. + +## Biblical vision and spiritual foundation + +Isaiah 49 was presented as a central scripture for endurance, calling, protection, timing, and eventual honor before kings and nations. + +The “polished arrow in a quiver” metaphor was used to describe: + +- Preparation before public activation +- Dependence on the archer, representing God’s direction +- The need to function within a collective purpose +- Protection from premature exposure and opposition +- Patience until the appropriate time + +The meeting also emphasized the power and responsibility of spoken words, the refinement of one’s voice, and obedience learned through suffering. + +## Covenant and group identity + +- A spoken covenant declaration was described as mandatory for group membership. +- The covenant was presented as exclusive and binding. +- Designated people were responsible for documenting covenant declarations. +- Members were described as a spiritual family with high standards and mutual accountability. +- Personal struggles and “purging” were framed as part of preparation for spiritual maturity. +- One participant described the transition into the group as a peaceful sense of “coming home.” + +## Mission expansion + +The meeting described a long-term expansion strategy: + +- Sending leaders to other regions and establishing new centers +- Developing leaders for church, civic, and political influence +- Expanding beyond Port St. Lucie as the mission grows +- Treating Africa as a strategic gateway for connections to Mexico, Asia, Australia, and Europe +- Producing leaders who could serve as kingdom ambassadors in multiple spheres + +The summary says the meeting referred to establishing new “EACs” in other regions; this wording is retained from the source and may require confirmation against the recording or surrounding materials. + +## Spiritual timing and protection + +The meeting stressed that ministry effectiveness depends on God’s timing. Premature action was described as a risk that could undermine the mission or expose leaders before they were ready. + +Additional themes included: + +- Obedience before public recognition +- Refining the group’s spiritual voice +- Completing the vision entrusted by spiritual mentors +- Protecting leaders during preparation +- Waiting for the right time before activation + +## Action items recorded + +- **Marlene:** Collect and consolidate covenant information, ensure it is documented accurately, and coordinate formal covenant entry. +- **All members:** Review the covenant and formally declare it aloud. +- **Charleston:** Confirm covenant review and prepare a personal declaration. +- **Ibrahim:** Speak individually to affirm his covenant commitment when prompted. +- **Group members:** Internalize the leadership standards and prepare for future leadership and ambassadorial roles. + +## Source note + +This note is a structured consolidation of the supplied PDF summary. It records the meeting’s reported teachings and action items without independently verifying theological claims, quotations, or transcript timestamps. diff --git a/projects/eatc/README.md b/projects/eatc/README.md new file mode 100644 index 0000000..3f38110 --- /dev/null +++ b/projects/eatc/README.md @@ -0,0 +1,29 @@ +--- +title: EATC Meeting Notes +created: 2026-09-05 +updated: 2026-09-05 +tags: [eatc, emi, meetings, covenant, leadership] +--- + +# EATC Meeting Notes + +Separate notes from the EATC teaching and purpose meetings received from prior meeting records. These notes preserve the meetings as individual documents rather than merging them into one transcript. + +## Meetings + +- [[2021-01-16-eatc-inaugural-covenant-teaching]] — Teaching on covenant; inaugural EATC meeting +- [[2021-02-06-eatc-purpose]] — Understanding the purpose of EATC +- [[2021-02-20-eatc-purpose-part-2]] — Understanding the purpose of EATC, part 2 +- [[audio-transcription-2026-09-05]] — Full transcription of newly supplied audio; PDF version: `audio-transcription-2026-09-05.pdf` + +## Related brain notes + +- [[emi_portfolio_data_collection_2026]] — identifies Fort Pierce as the EATC/EMI Training Center +- [[emic_fl_board_meeting_history_2024-2026]] — later EMIC Florida board-meeting history +- [[emic_fl_bylaws_summary_2024-12-30]] — EMIC Florida bylaws summary + +## Source and dating note + +The two “Understanding the purpose of EATC” PDFs contain recording titles dated February 6 and February 20, 2021, while their generated summaries list August 26, 2026 as a meeting date. The recording-title dates are used as the meeting dates here; August 26, 2026 is retained as the apparent transcription/generated date rather than treated as the meeting date. + +These are structured summaries of supplied PDFs, not independent verification of the claims or decisions described in the recordings. diff --git a/projects/eatc/audio-transcription-2026-09-05.md b/projects/eatc/audio-transcription-2026-09-05.md new file mode 100644 index 0000000..37e37c9 --- /dev/null +++ b/projects/eatc/audio-transcription-2026-09-05.md @@ -0,0 +1,23 @@ +--- +title: EATC Audio Transcription +source_audio: aud_d07039c51259.m4a +transcription_date: 2026-09-05 +duration_seconds: 6881.792 +tags: [eatc, emi, audio-transcription] +--- + +# EATC Audio Transcription + +**Source audio:** `aud_d07039c51259.m4a` +**Duration:** 1:54:42 +**Transcription engine:** Apple SpeechAnalyzer + SpeechTranscriber on macOS 26 +**Language:** English +**Speaker labels:** Not available in the source transcription + +## Editorial note + +This is an automatic transcription of the supplied audio. Wording is preserved as returned by the transcription engine, including possible recognition errors, repetitions, and unclear phrases. No claims have been fact-checked or editorially rewritten. + +## Transcription + +And not all of them responded positively. So, it may be that, you know, not everybody would respond. Yet I remember some years ago, dialoguing with the Lord. dialogue blocking with a lot about 50 people that he would give me who would be very close to me, to whom the purpose of God would be accomplished, and in the 50, they'd be 12. So, of course, we're going through a process, number one, of determining who is the 50, and then from around the 50 determining who are the 12. And of course, you have to qualify. And the closer closer to me, that you are, the greater the demand upon you, and the more you required, the more is required of you. If you notice 2 of the closest of Jesus' disciples, were John, And of course, Peter. And when you look, you see. about Jesus' interactions with them. Imagine, imagine Jesus looking at Peter and saying, Satan, I rebuke you. Yeah I know. I know none of you would like that. But yet, on the day of Pennycast, who was there, but before that, who would be up on the mountain? Jesus, Peter. And of course, you see the dealings of Jesus with John. So, the closer you are, in this case, the closer that they were to Jesus, the more that was required of them, and their response was determined whether they qualify for the role that was appointed to them, obviously. You have Peter qualifying. You have John meeting the conditions. I guess James also had a particular role, but of course, it was a little prejudiced with James, because James was Jesus' brother. So he got he got a pass on something. But he's still at me the qualifications. Ultimately, James was more the ruler, the leader of the church in Jerusalem than anybody else. James was like was like the 1st amount equals in the leadership of the church in Jerusalem. When you get to accept the 15 and they had the councillor in Jerusalem, ultimately, the one who gave, who gave his word. the resolution, it was James. And you, I'm saying. And you, I'm, I'm saying to you that that, that more will be required of you. so that we can accomplish the purposes that God has called us to... I want you to understand. Something that I later before you so that, so that, that you know what it is we're doing here. From, from this group, okay? And of course, when I see that, you bear in mind that the group is not is not complete yet. But from this group, will come, the leaders of EMI international and future years. Okay. And if I know, if I know God has called you to be, to be the leader, I'm gonna be so hard on you, you're gonna... All right. But from this group, we'll come, we'll come that leader. From this group, a group will come. The other leaders of EMI. of course. You see, I was, I was reading through the Old Testament, sometimes I go, Joshua, judges, and I realize Moses did well in fulfilling his task. Of course, Moses went through 80 years of preparation. I just got a few more years before I get killed. Anybody where they qualify? Yeah. That we have 80 years of... Because Moses, 1st of all, had to qualify in the system that's called the world, because remember he was qualifying to become prince of Egypt, and secondly, he had to qualify in the religious system. That's what he was doing on the backside of the desert when he was serving with a priest. Of course, he married, he married one of his daughters, et cetera. 18 years total qualification before he came to lead the people of God. Okay. And of course, the demons of God with him were quite ash. And, you know, in many cases, no exceptions. So I'm pointing that out to you, so that you understand also from the school will come. Many of the leaders in different kingdoms for Port St. Luci County and what God would do here. You know, see, that's happened from this group. No, from this group will come, those who will be sent out to invade other kingdoms, those who will be sent out also, to establish other EACs in other geographies. from this group. So, you are a very select group, and, um, exclusive group. Amen. And I want you to know that, um, so, ultimately, you must become treasures that I, that I can present, to present to the Lord, that I can see to the Lord. learn, is Alicia. This is what, this is what I commend her to you for, in this capacity. Welcome, my dear. In this capacity, I commend her to you. And God will deal with Alicia based based on what I say. Ultimately, you folks, such as violence, violence, increase. I know you still have a relationship with Dr. Billy, everybody, but in this case, what I say to a lot about you is the standard by which the Lord will judge you. Yes, sir. Right? Because, you know, you... You, too, Sarah. I saw that smile on your face. So... So, you understand our purpose of our purpose here, and why we are going through some of the things that we're going through, in establishing establishing a relationship. Ultimately, ultimately, food. And I noticed, it's on heaven, ultimately, you are my life's work. Okay, now, I know that that sounds, that sounds heavy. Well, I wanted to sound heavy. So, so, so that, um, when I am hard on you and on yielding, to, to your, your little, um, whatsoever it is, you understand, you understand why. And you people call me stubborn. You know why. Why I am stubborn because there is that which I see, which you have not seen yet, okay? The leaders for the local EMI church will come out of this group too. Okay. So, and um, and I get to set the standards for the group. It's not easy, but it's necessary. And, and you're gonna, and you're gonna, you're gonna have to put up with me because God's gonna judge you, judge you by the standards I said, not by, not by the ones you want. All right. Ultimately, the, um, the... So with the political leaders of Fort St. Lucy will come out of the school. Yay, baby, wow. Well, one of these, one of these days, don't take this out, what I'm seeing in the team is out in this room. One of these days, they're obstripperous starter of years. You do that, we'll join this group because, because he fits in in that in that realm. Okay. All right. Okay, that's part of a future. political rulers in the area here. Sadly, she can become president. She wasn't born in view. Rules and reckless things change. Right? What? No, we can get her a Hawaiian birthday. Oh, yeah, right, yeah. Yeah, I know. That'd be easy. Then, then nobody would have to go back, back to, to, to, to, to, to, to, to, to, to... Yeah. So this is what we're doing here. And this is the reason why calling you folks into a covenant. Again, I stress. This is the, this will be the most important scene. That God, that God is willing to do. Don't any of you, and let me put it in human terms. Don't any of you mess with me, okay? Then any of you treat me lightly. Mommy, mommy. in this because I know the importance of what, what, what, what people are doing, we're doing here. And I'm trusting the Lord that all of you get the revelation of it. Because the instructions that we gave you, are in line with that, with that which Lord has shown for the future. And ultimately, this is not about you, okay? Neither is it about me. It's about the purpose of the kingdom of America. Amen. And that is our call in Jesus. The Father gives Jesus to 12 men. They were 72 of them and out of them. 12 which chosen and name the apostles, and some of you know are to mention all that and all that that requires. Yes. And from the 12. From the 12, he chose three. And from the three, he chose one. Now, none of you could none of you go out of here and ask, Am I one of the three? Or am I the one? None of you, good God. And we could be considering that, because... Can you go concern that you're hoping that you're not the one? You have given up the right to make that decision. It's just a laboratory. No, no, you have given up the right to make that decision. Whether you are or you are not. You've lost that. I'm sorry. You lost that. Come on, then say something, you look as though you're thinking deeply. And no, it is the Lord who... Oh, sorry. It's the Lord who does what? It is the Lord who's useless, is one for each role and gives the grace to fulfill it. And, uh, He became, well, we have to respond to the demand that the Lord puts on us, but we are not too, we're not to choose like, like John and James to see that the right hand. or not, but it is a lord who signs that. But when we realize which one is our place, we have to respond accordingly. I know he learned, you don't yet know who you are, or what you call in places. If you, if you knew it, you might try to, you might try to pull a David, you might try to run from, run from it. But I'm trying to get you, you folks, to understand the seriousness of this, and none of you, who is a part of this group, is a part of this group by accident. Amen. First of all, it is the Lord, who made the choices. Secondly, as the Lord thought to me, I made the choices. As Jesus would say, you know, in the passage of Isaiah 8 verse 18, I and the sons whom the father had given you there for signs and wonders in Israel, and that's important. that Jesus would recognize that the Father had given him these people out of the world. They were the Father's gift to him. I expect one of these days in the future to wear you as a robe. And any of you, any of you know what passage of scripture I'm talking about? Huh? Because where the names were written on the... No? Did you say where as a rope? Wear you as a robe, yes. If you get to know me, you're gonna have to know some fault, not sorry. Isaiah 49 almost from memory. Because Isaiah 49 is the, is the passage that when in the, when in the early 80s, I had reached a point where I had lost all my, all my hope, and everything else, and God spoke to me out of Isaiah 49, and when you hear me talk about, in the volume of the book, it is written about me. The passage, the passage in scripture that talks most about me is Isaiah, Isaiah 49. Many, many passages, many, many verses there. But, um, as I 40, 49 is the book, out of which the Lord speak to me during those, it was very, very difficult, difficult years, when, when I would have lost it. I mean, just the secret context, but let me, let me read, read a couple, a couple verses, and say, you're gonna, you're gonna have to know the vision God has given me and the word that God has given me, because, any word the Lord has given me, that I am unable to fulfill, will be demanded of you. All right? I want you to get a hold of that. Example, remember, remember in 1st Kings chapter, was it chapter 17 or chapter 19 when God spoke to Elijah? God gave him 3 things that he was to do. Anybody can tell what were the 3 things? Is this when you're supposed to find Elisha? Right, that's one. What is... Yes, you are... Israel and someone else's kingdom. Yes, yes, you were supposed to annoy JU. He was supposed to annoy Elisha and what was the 3rd one? Someone else as king of Assyria. Right. Okay, and, and, and this is in, um... In 1st Kings, what they say, basically, chapter 19. I think that's where it is. Yes, first in section 19 from verse 15. He was to a knight Israel to be king overseas Syria, Jehu, who was to be an anointing king over Israel, and Elisha. He was to a known to be prophet in his state. Okay. Now, did he fulfill all of those 3 things? Did he fail? I mean, well, Elisha, and I did you who were thinking of Israel? Well, I think he only said to be in one of them. Personally. Yeah, um... Of these 3 things, he did too. Okay. He never got to anoint JQ. A ski. No. Who anointed Jehu? Elisha. No. Ah. You would think, though, there. Second king's chapter 9. Chapter 9. Verses one and two. And he lighted the property called one of the sons of the properties. And by the way, the rabbi, the rabbinic teaching says that this son of the prophet, here, was that young man that Elijah had reached from the dead, from that woman who would ride a house for him. This same person who became Jonah, the prophet. Okay? Which is which is interesting when you consider the life of Elisha. But here now Elisha, who was the son of Elijah. realizing that this one thing was not fulfilled. Called one of the sons of the prophet, as it were, Elijah's grandchild spiritually. to go to anoint... and to initiate the process for the removal of Jezebel. Okay? Now. You know what is your coal in, by knowing what God has called his spiritual father, to accomplish. And in that you must be faithful 1st before God gives you your own. That's good to you. So, you got to get to know me, you got, you got, you got, you got to know what God requires of me, because what God requires of me, is what he requires of you. Amen. Okay, in other words, you have to help me fulfill that which God has called me to do. If anything is left undone, you have to see that it's done. This is one of the first things that Elisha did. When, when he took over from, when he, when he Nigel was taken up, I need to go. One of the 1st things was seeing this thing fulfilled. Isaiah 49, I said... He says, The Lord has called me for my... For my mother's room, he spoke in my name, and I'll get back to this... to that a little afterwards. He has made my mouth like a sharpened sword, and the shadow of his hand, he hid me. He made me into a polished arrow, and conceived me in his creep, and, you know, all of the parts of that, you have to get him, number one, he made my mouth like a shopping sword. If you are a teacher, a prophet, venue those things. All authority operates by words. That's how the spiritual version operates. All authority operates by words. And for you to adequately fulfill your call in. God has got to do something with your mouth. That's right, when you get to Isaiah chapter 6. The Lord had to take the calls off the altar, and deal with his mouth. Okay? So, the number one is me and my mother with the shop and so. Number two, because of your purpose, he hides you. But that's why there is protection. He has to protect you from the enemy, because once the enemy knows who you are, He's gonna target you. And, um... Part of the thing he seeks... to do, to destroy you, is to get you to be free with you. As a friend, you get you to be premature. Okay. That's why you hear Jesus. But continually. Oh, yeah. when they try to get them to do some, he says, It's not my own yet. It's not my time yet. And this tells me that as a man, Jesus had learned his lesson. Remember when he was 12. And um... I guess he got a revelation of who he was, a revelation of the word and such like. And he did not, he did not put a priority with his authority, as that important because they left and they were gone for Tokyo 3 days. And you see not to miss them. 12 years old, you know, not to miss them. not to be concerned about that because he was doing his father's business. Okay, of course, his mother rebuked him. And as you notice a new chapter, chapter 2, what's verse 51 or something around it, that it says you went back and was subject to them. and going for you and God and man. It's interesting then, what was his coming out of that state? Anybody can tell you, tell me what was this coming out of that state when his mother took them to turn the water into wine? Right. John chapter 2. John chapter 2, where... They had the wedding and the red of the wine and she turned to Jesus in us. They've gone after wine and he says, woman, what do I have to do with you? My hour is not yet, but you see, it was not he who would determine when his hour had come. He was his authority, his mother. And she knew that the process had dealt with the money and he had gotten hold of it. So she didn't argue with him. She just told the people, whatever he says, you do it. Because she knew, she knew that he had gotten the message over the 18 years. And he needed his mother's instruction to initiate his ministry in verse verse 11 talks about this beginning of miracles. into manifest his glory. Okay, that was, that's what released him from that, from that PU. But prior to that for 18 years, you don't hear anything about him. Because he had to be hidden, right? So that the enemy would not destroy him by his being premature. Okay. And so many people, the woman God begins to use them, they think they're ready, and they can handle it. I got to fulfill my ministry. I got to fulfill my calling. Okay, but Jesus had to come back to where Hebrews sacrifices, he learned obedience by the things which he suffered. And being me perfect, he became something else. So he had to go through that processing, okay? So, in the shadow of his hand, he gave me, he made me a polished arrow. Okay, you understand. An arrow has no power of its own. It's a it's a mighty weapon. But an arrow has no power of its own. An arrow is put into the hands of someone, and the effectiveness of the arrow depends on the arrow's preparation, but also on the person whose hands the arrow is put. And again, for the 2nd time, you notice, you notice his protection, in his quiver, he hid me. You're not the only arrow. All right. It's wonderful when you get when you get to know that you are such a polished arrow. But you belong in a craver. Hmm. Thereby just said, listen, there's a man who wears his creeper full of them. All right. Okay, this is not, this is not my primary thing to do, but, but just gonna go to a couple of things. He said, you're my servant. There's 3 in whom I will display my splendor. And God always, God often gets to you at the point when you have reached the end of yourself because before that, you're full of yourself and you think you're something and you're, you know, you know. You know, you have the whirl in your hand, et cetera. But he says, he says, yeah. It was for, I've liben in vain. I've spent my strength for nothing at all. Yet, what is 2 reason, the Lord, sending my reward is with him. I remember in the 80s, the middle 80s when I got this way. Laurie. What do I have to show for all of the years I've been ministering? Lord, I don't even have one person who's my friend. All of those that I invested my life in, they've turned away from me. As a matter of fact, they've turned on me. You know, and, you know, I reach, I reach a point of desperation. Okay. So, right now, the Lord says, yes, form me in the womb to be something, to be something with a purpose. Your formation in the womb has a goal. Okay? And that's how you're honored in the eyes of the Lord. Verse 6. It is too small looking for you to be my servant to restore. But you don't consider the purpose which you've been called as inconsequential. Or is too small a thing. Don't despise. Yourself and your purpose. Okay, rather consider it an honor in the eyes of the Lord. God says, I will make you a light for the Gentiles. that my salvation may reach the end of the earth. And the passage from verse 7 and fall in here. He speaks to someone who is despised and rejected by most people, he says, no, no, let me talk to you about your future. Your skings will see you. And when they see you, they're gonna stand up, and they'll honor you. Princes will see you in Baudan. Is it gonna be just on your own, no? It's because of the Lord. Because of the purpose of the Lord. Kings and princes will bow down before you. Verse 8 is a key verse though. Most of us have a little, have a little problem here. We look to the Lord for answers, and we want answers. We always want our answers immediately. You know, we always have an emergency, and we want the answers immediately, and God doesn't go there. He says, in the time of my fever, I will answer you. In other words, God has an appointed season of fever for you. That's when you respond to you. In the day of my salvation, I will help you. Okay. At interim, I'm gonna keep you. And I'll make something out of you. Because you have an assignment to restore the land, to bring the captives out of darkness, to deal with their hunger, their thirst. And God says, inversion, that's when all my mountains into road, my highways will be raised up. And so he outlines to him what will be the result of his ministry. Verse 13 shall show for joy, you have to rejoice, you have burst into soul, new mountains. So the Lord comforts his people and a lot of compassion, as of good ones. In other words, you see here that the 1st part of it through verse 12, that's God's dealings with a man. From verse 39, you begin to see some of the results and some of the effects. Shout for joy, heavens, rejoice, see, your earth burst into song, you mind us, for the Lord comforts deeper. But Zion said, the Lord has forsaken me. The Lord has forgotten me because a lot of people, they have been in that situation for a while. And God responds, can a mother forget the baby at her breast and have no compassion in the trial she has born? I think in our royal society, you could say yes. I don't understand. Something unusual has happened, you know, because some mothers. Just plain old, I not mothers. They like spurned on with sworn donasitis. Well, no, they're egg donuts. No, the analogy. Okay. I say the Lord says, so she may forget. And of course, you see that in our society. I will not forget. God says, I've been grieving you on the palms of my hands, you water me for me. First 17 and following is so precious. God says, your children, you some back and those will lead you waste, in a depart from you. And the situation, has it? Your builders are faster than Eurekus. The devolition crew, that was among you, they're gone for good. I like that. Another version, the lambservation says, your sons who caused your destruction. Those who lead you waste shall make haste to go from you. They, they're leaving. They're leaving. So, and here's verse 18 and by the way, it's enough for you. I am celebrating this period in my life, okay? Your children hasten to come back, and that's happening. Lift up your eyes, look around, all your children gather and come to you. This year, 21 and just you for the next few years. I don't want to. Gonna see a gathering of suns. Including many prodigals. You'll see, you'll see, in return. Goddess, promise me that. But this is the verse I started out, I started talking about this 18 here. He says, As surely as I live, said the Lord, you will wear them as an ornament, you'll put them on like a bride. Okay. I want to read these verses 16 through 18 from the voice version. It says, look here, I've made you a part of me. I've written you on the palm of my hands. Your walls are always on my man, always my concern. Now, sweet side, your children are running. Back to you, just as fast as those who destroyed you, are leaving. So raise your head, lift up your eyes. Watch your heart's desire, come. All your children are gathered and returning to you. As I live. So I promise, you will wear them with pride. or like shining ornaments. You put them on as a bride on her wedding day. I think that's why I said I would say that I'm going to wear some of you with crying in the future. This is my verse. Why isn't that those will return? Huh? Isn't that those who return? Um, you don't realize that you're returning. Look at your father's from your country. I've seen that. I've seen I've seen myself as a product of the word that you've spoken there, but not a returner. As such then, as such then. Yes, you have been turning. They went away from me, but in the midst of that, that God burst you. So though you were 19, though you were ruined and made desolate in your land, we at least. Now, and I love this, now you'll be too small for your people. Those who devoured you will be far away. The children born, being, doing your bereavement, and yet seeing your hearing. This place is too small for us, you know? Give us more space. In other words, we got to expand, you know. I mean, maybe. God has been good to us. We are growing. We need to, we need, we need to expand for 2, 2, is too small. We're gonna have to, we're gonna have to expand. Turn by, by the way. As I said to you. This passage here... Respect this passage here. God began speaking this to me. Back in the middle, in the middle '80s, when I was in the midst of a lot of conflict. So I've had children, born to me, during the time of my affliction, during the time when everything went so bad. It was 21, then you'll see in your heart. So who bore me these? And David, how did you get to be here? You all right? Hey, Cliff, how did you get to be here? Well, you said to me up, man. It's, it's, it's amazing, you know. Oh okay. So, Cliff, who's your mother? Oh, don't answer. You laughing at me. I was bereaved and barren. I was exiled and rejected. Who brought this up? I was left all alone, but these, where did they come from? But this is what the star-in-law says. I beckon to the nations. I lift up my banner to the peoples. They will bring your sons in their arms and carry your daughters on their hips. Kings will be your foster fathers. The queens, your nursing mothers. They'll bow down before you with their faces to the ground, they'll lick the dust of your feet. Then you will know that I am the Lord. Those who open meat will never be disappointed. There's some other excellent passages in this, but I can't, for time, time seeker. You know, you'll have to read the rest of the chapter, but this year, 49. This is what God spoke to me and it has been my scripture that has encouraged me at my lowest points for. As you see for almost 40 years. For almost 40 years. It has been when, when I looked in, Guyana could see, no fruit of our labor, the NC, some of it, the worst things that have happened to me, it came out again, and I thought, you know, I can't tell you what I said. Should we turn our phones, will you tell us? If we turn off our phones. Did you tell us what you know? No, is that what he meant? No, no, I... Is it just and then this Jamaican, I thought. Oh God, you know. Every other chance, then. Yes, sir. Oh, Jesus. Yeah, I am controlling, I said, there's a lot, but... A lot, a lot that I can see, but I'm controlling control of myself. But therefore, the redeem of the Lord shall return. They shall return. God must turn their footsteps back home. All right, let me, let me, let me, let me pause it, pause this, this, this part here. I got some dance to see, but... I think I think you had something that you needed to see to us today. But before you go, Chelsea, you make sure that you have reviewed the covenant because covenant is not covenant until it's spoken. So you're gonna have to declare it out of that covenant, you've got to declare it to us. When we hear in the in this room, those association, we meet covered, if we meet covered, we brook bread together. Okay. Drop wine. Yeah. David drank wine. Don't fight before. Okay, yeah. David, David, drink, drink clothing. I think I think I think he was trying to turn the juice into wine. Let's do it that way. It worked for him. But we made that covenant and every individual must voice covenant. Marlene, you're going to have to get all, all, all, all of the information right in, um, at, at, and somebody at, at Marlene to that page. I mean, only one who can do it. Okay, which which phone? Use that one. Or it doesn't, but you have to be sent. I can I can forward you the document, you know, what I'm saying inside there, unless they put it in there. Yeah, that's what she's saying. I can, as soon as... No, I get it. What I'm saying is that anything that's in the past in here, I've ever seen those, so that's why I didn't listen. Okay, all right, that's all right. Okay. Yeah. You'll have to make covenant with us. Declare, declare your government because we are a covenant group, a very exclusive covenant. Covenant does not put in the others outside of this group. And that is what that is what we would call you. to do, to be a part of. Okay. So, so, so yes, yes, Ibran. You'll have to speak for yourself. The young lady, there has to speak for you for herself. You can't speak for her. He's your sister in the world, nothing else. Thank you, sir. Yes, yes, you can. Go ahead. Um, the ways of the Lord. All right, amazing. You said you had this trouble in the middle 80s, and I think that most of us in this group were born in the middle 80s. That's a response of the Lord. I know. I remember in the middle of that struggle, and some of you have heard me tell of this, called the vision that I, that I had, where God said, you were sending me to Africa, and they sending me to Africa. I would have to release most of the work I was doing in the Caribbean. I would just have to release it. And that was very, very hard because it poured my life, and we went through a period where within about 3 years, we saw maybe 14, 14 or more churches established across the Caribbean Islands. And then we got, that said, you'd have to release it. Some of them, some of it, we just turned all over to others, but there was not only that, sometimes when you're not too anxious to do things that God tells you to do. He sends some wild hornets. So all hell broke loose in the Caribbean. Some of the most difficult time of life, but God sent us to Africa, and the Lord told me, if I would be faithful to him in Africa, then he'd open the doors for us, to the rest of the year. As a matter of fact, that's where I got connected with Mexico. in Africa. All right. It's pretty much, that's where I got connected with Asia. Australia, Europe, all of it. All in Africa? Through Africa, through Cape Town Africa. All of it. All of it, so... So, so, so, the word of the Lord, the word of the Lord. Sarah, hon, you have anything you want to say to us? Mm hmm. Nope. If, if, um, I'll just see her some time to, to just think through, but, um, this morning, this morning while we were, um, while I was taking down to work, I, um, we were just, um, we counting our steps, and, um, examining a little bit our journey. And um, we come to one conclusion. And over the years, the Lord has preserved us. The Lord has preserved us to be a part of what beef, what they are part of. Um, it was, it was, it was never trouble for us. to move away from, from other leaderships that we were harmed to be a part of. It was not struggle for us to move away, but somehow within our heart, but even our spirit. There was an uneasiness. It was not that comfortable being around, although, although, you know, what they were introducing us to, it was fascinating. But somehow we believe that our connection was not right. And our connection was not right and the Lord lead us back to where we are supposed to be. And I believe that is right here. Um, we're just recounting our step this morning and I believe that we are back at home. I think we're back in the house that we are supposed to be. And with that, you know, I don't know how to hold to be clear, the covenant brother, Jana. I've never declared one before, but I will read through the thing. And we see it and I think we had already made it. We are in, I don't want to have percentage to it, and I believe it's more than percentage to me. I think we are, we are totally in, in this, that you are doing. Um, you know, I, I, I believe that, you know, we are going through our process. I personally am going through my process because I have to, I have to, um, there's, there's so many things that I have to purge myself from right now. Just listening to the world that are coming forth. You know, I'm going to encourage you. I'm going through wrestling in my own spirit and in my own mind. I'm wrestling with things. It's like wrestling with man and wrestling with Don at the same time. You know, and, um, you know, but I believe deep within myself that I am happy pleased right now, that I, that I, that I was born to be out, and is to be in this house, and be among these people, that, that the Lord has called you to establish and to build the earth. It was not comfortable out there for us. It was not comfortable for my household. But we're out there, you know, around, you know, other groups and being a part of their leadership team and so on and so forth. But coming back, I believe that we are, we are back home. In this thing and with that. I said, we are with you in that which you are saying in that which you are doing and in that which you want to build right now in the earth. Thank you, sir. I hear you. It is a challenge for me when I see. Remember the time when the children of Israel, we're building the tombs of the pharaohs. All right, it's a challenge to me when I see the sons who belong to this family, when they building tools of the pharaohs. They're building up something that they need to believe is what God has ordained for them, but it's not. It's some other man's grief that they're building. And I mean that just the way it sounds. With some of the man's grief, maybe other. Just good to see you when people are delivered from that. ministry. Yep. Anyone else needs to make any card before we go on, I have something else that I must get to today. But, uh, anyone else wants to make a new comment. Okay. Nobody has the pensive Sarah, you know, she's thinking, you know, she has to put her finger over her mouth, you know? So that she does not speak out of turn. How many of you were with us on Sunday and listened to the teaching from? I said, listen. I said, listen. Listen, listen, I'm a teacher from Houston. Okay. I mean, if you listen to it thoroughly. I'm going to Houston. I had another word, but on my flight down, the Lord began to speak to me. Out of sound 51. And those of you who have not listened to me, even those of you who have listened to me encourage you, you go back and listen to you. Because I'm just gonna emphasize primarily one part of it. Um, David, does anybody have the recording from that Sunday? I do. I need to send it out. Okay, yeah. David David Hughes, as a TV, he will send it out. Okay. And the group? Yeah, yeah. Yes, I guess you can post it up in the group. Yeah. No, we are building something here that I've said, it's not about John Boney, not about you, it's about the kingdom of God. And the statement about the kingdom that you have to become comfortable with and must be upon your heart is the statement that that's made. In Isaiah chapter 6. Sorry, no, not that it's 86. chapter 9. And especially verse 7. Of the increase of his kingdom and P, oh, sorry, of his government and peace, there shall be no end upon the throne of, uh, so, upon the throne of David and upon his kingdom to order it and establish it with judgment and with justice, from henceforth even forever. The zeal of the lord of whose will perform it. And just to get you to understand, increase, and establish it. That's the phase of the kingdom. not Ibran, um, uh, who was it, Daniel, shed, that we've gone past the season of transition, and we've entered into the season of establishing. Can we say, can we agree? But Jesus, on the, on the cross, made, made a prayer, and all of Psalm 22 is that prayer. Psalm 22. Okay. I don't think that's the one I'm looking for. No, it's not Sam 22, America. It's actually Psalm 90, sorry, versus 16 and 17. Somebody... Psalm 90, 90. versus 16 and 17. somebody read that for me from the NIV, please. Be shown to your servants. You're splendid. Oh, my God, you. In the favor of the Lord, our God rest on us. Establish the work of our hands for us. Yes, establish the work of our hands. Okay, notice this. Establish the work of our hands, Lord, establish it. Another translation puts you sweet. Give permanence to the work of our hands. Yes, give permanence to it. In other words, what we're doing here must endure for generations. The problem, if you look throughout the Old Testament, several times in Old Testament, the kingdom was established. And I want you to know that, one of the most significant times was under the reign of David. The kingdom of God was established in the earth. There was a place to which Satan had no access. All the things were there. But you know what was its problem? It never enjoys beyond that generation. There was no permanence. And, and so, as I'm reading, reading through, Joshua judges, and I see that, that, that, that Moses established Joshua. But after Joshua, they also went and died, everybody went doing their old thing, and everything was lost. You see some of Elijah, Elisha, and nothing of permanence continued day afterwards. And you realize the kingdom was established. But there was no permanence. And something was birthed in my spirit. Well, what is the problem? What is the problem? Why? You do such an awesome work as you see in the David, but it only lasts one generation. Okay. And if what God is doing here among us, only lasts one generation, we have failed. Okay, it has to endure, for real. I believe in, in Psalm 51, David gives us a bit of a key as to, what is it? What was the reason why? He did not endure. Now, again, as I say, I'm not, I'm not gonna get me to go through... this entirety because I just want to focus on, on this primary aspect. What was the problem? Why the kingdom would not remain. There was no permanent strength. Anyway, it starts with, and it starts with, right in, in chapter 51. And you know, chapter 15, one was the son of David, after he had committed adultery for Sheba, and the prophet, Nathan, Nathan came to him. And then he began to say, Mercie and Mule God are called Gian Fiel, and feel in love. According to your Greek compassion, blot out my transgression, Christu, wash away all my iniquity and cleanse me from my sin. I acknowledge my transgressions, my sin is always before me. The 3 things you're going to have to deal with. Sin, sins, and iniquity. Sin, which is a sin nature, and that should be taken care of in a kingdom baptism. That's the old man that you lose, in a kingdom baptism. Some people never experience the benefits because they're not taught, and so the people that are destroyed through ignorance. Okay? The sin, then there is sins, that's your acts of sin, and then, thirdly, there is iniquity, the sins. of you, of your for parents, but the 1st thing that you pray here, wash away all my iniquity, against you, only have I seen the none what is seen in your sights, you're writing your verdict, and justified when you judge. Surely I was sinful at birds, sinful, from the time my mother can see me, and several translations. seem to say, to put it this way, indication is that it was... No. An illegal relationship to which he was very, as I mentioned last Sunday, you saw, when Jesse K, when Samuel came to Jesse's house and asked for Jesse's sons, he brought all of his voice. And Samuel went through them, and God did not accept any of those, but yet God had sent him to Jesse's oath, to anoint one of his sons, to be king. So now, Jesse, if these are all of your sons, you know, these could be all of your sons because God did not accept any of them. And so he had to ask you, well, do you have any more children? And that's when they discovered he had a boy child, you know, who was hid out there in the field, taking care of sheep. For some reason, he was not reckoned the man the son. Okay, I think only two or three times, you see, David has a casual mention of his mother. But in this case, he declares that, you know, essentially, it was through a sinful relationship that his mother conceived him. In other words, Jesse was fooling around, had another child outside of wedlock. And that's where David came from. This is at the root. Oh, David's cry, Lord, wash away all my iniquity, because, let me help you understand iniquity, the 1st occurrence, Exodus chapter 20, It's Exodus chapter 20. And now, one of you, maybe one of you, especially those of you who teach us a word. You're gonna have to do, for me, a study, New Testament, primarily Old Testament, on iniquity, because it's quite an extensive word. The word is used over 500 times in New Testament. Yet, you really don't hear any clear teaching on it, and, you know, it's just lump, lump, with all other sins. Yet it seems to have a unique place. Exodus 20. Here's what God says. Here it was four. Thou shalt not make unto the any graven image, or any likeness of anything that is in heaven above, or that is in the earth beneath, or that is in the waters under the earth. Thou shalt not bow down thyself to them nor serve them. For I am the Lord, thy God, I, the Lord, thy God, am a jealous God. Visit him, the iniquity of the fathers, upon the children, unto the 3rd and 4th generations of them that hate me, and showing mercy unto 1000s of them that love him. In other words, the sins of the fathers. Those become what the scripture calls iniquity, and the effects of it lasts for at least 4 or 5 generations, at least. In other words, It will affect you, your children, your grandchildren, your great grandchildren, your great, great grandchildren. And it seems to be connected to all forms of idolatry. But you get to realize that it's possible for it. To affect greatly everything. Notice notice Deuteronomy chapter 5. Verse 9. Well, from versus 8 and 9. Thou shall not make onto the any graven image, or any likeness of anything that is in heaven above that is in the earth beneath, or that is in the waters beneath the earth, or shall not bow down thyself unto them, nor serve them. For I, the Lord thy God, I'm a cheerless God. Visiting the iniquity of the fathers, upon the children, unto the 3rd and 4th generation of them that eat me, showing mercy on the 1000s of them that love me and keep my commandments. In other words... All forms of idolatry. are involved. But here, here's, here in David's case in this Psalm 51. anointed by Samuel. David went through maybe as many as 30 years of preparation. Ultimately, he was anointed as king. David brought back the art of God. David established Mount Zion. He was a man after God's own heart. But yet there was iniquity. You'll think. Hey, Laura, David couldn't have. any iniquity. No, no. And take note of this. Now, I don't know where his father got it from, if it got started with his father, that's where anyway we pick it up. When he got stuck, but got started with his father, it was repeated in his life. Everything went to hell in a handbasket in Solomon's life. I mean, I don't know any way you can legitimize, having 700 ways and 300 countries. Ask him, right? Ask him. It's a... Because with each generation, it gets worse. If it's not dangerous. question. Yes, sir. So the scriptures in Exodus 29, 25. It talks about visiting the iniquities of those that eat, and it says, but showing love, showing love to 1000s of generations to them, they love making my commandments. So, I mean, David was not someone that hated the Lord. And so something seems missing as to why it still was a visitation to him and his generation. If he, if he was not, if he was one that loved the Lord and listening, basically what the Lord wanted to do. Any sin that's not repented of, still stands, stay on the record. So this mercy, that's me, sure, is not in relation to the iniquity. Um, sin must be repented of. That's the way the mercy comes in. It is not automatic. It's not automatic. And the requirement of repentance for sin, both known and unknown, is something that God is always demanding. Because it has its effect. Okay. That word iniquity. Yeah. That word iniquity means to bend... twist. To, to distort. To deviate from the correct way. Oh, and put another way, put you in a detour. To deviate from the correct way. As we're just to ruin and to destroy your life. That seems to be the purpose. Purpose of iniquities. I'm hastened to see. There is not a single one of us who does not have to confront. Sin, sins, and iniquities, because they have an effect upon our lives. for this week. Iniquities write your DNA. They do. Or alternate. I'm sorry, I don't want to speak... I know I'm pushing buttons. They go, okay. You know, you know, you know, it's interesting. I've watched many a year to see the, what's his name, the fish that treks back, adopted the place or exposed to spawn. Salmon? The salmon. What is it that causes the salmon? to find its way back up to that same pool, from this pond. I mean, the salmon will go upstream, jump up, over rocks, to get back. What is it that leads us back there? They say collective memory, but? That's just some people analogy. The butterflies leave from Northern Canada to go to Mexico. For winter. They tell me it's the 4th generation of butterflies that arrive in Mexico. How does he get there? It's communicated by the butterfies that died. Yeah, collective word, that's what I'm trying to say. Southward. The instinct that they're born with. Call it what you would. something is written in their DNA. The proclivity towards this action is written in the DNA. Whales do the same things. Yes. Yes, yes. So my question is, what would be the difference between iniquity in that sense and sin? The sinful nature? Because the sinful nature is also like... Is sin is a sin, just talking about the general rebellion? There's a nature that the sin Adamic nature to everyone has. But they're those specific things that your 4 parents were involved with, that also are written in your DNA until they're done. I mean, you could almost say sin, the sinful nature is the original iniquity, because that was the sin passed down by Adam, but it's the disobedience rather than what you're saying, the specific iniquities that are different in each family line. I mean, some people, no, Jaden love the Lord. Desire to serve the Lord. How in the world could he get trapped? But, you know, yeah, the woman. What? Why? He calls it iniquity. That which was passed on down to him. He calls it iniquity yesterday. Yeah, so a question that I have is, you said that it must be confronted even if we don't know about it, right? That's one. How do we do that? Second question is, when it comes to, you said every generation, every one of us, there is iniquity that we have to deal with. So does that always mean that those who came before us did not deal with iniquity? Often, often because many of them, the people got to destroy because of lack of knowledge. And so our next area should not have to deal with any iniquity. If we deal with it. Okay, as I said, but Solomon received of it because by time at the time of his birth, it had nothing dealt with yet. Yeah, yeah. Okay. That's my purpose for this, again, seek to identify why the kingdom could be established in one generation, but it doesn't pass on to the next generation. This is how it is. Yes, sir. Um, so you just said that it wasn't dealt by the time he was born. So, did David's prayer had to be said and done before Solomon was born, or would it take effect if Solomon is already there and he's a baby and he's, like with that effect, I'm asking because we have children already that are born, it's our us dealing with it, would that affect them or would that affect only the children that are not born yet? Obviously, David H. in Psalm 51. Um, really went before the Lord for forgiveness and, and you know, um, there's 7 different words you prayed on to God, cleanse me, wash me, purge me, all of those. If that would immediately cover his children, How come Solomon ended up in the myth that he behaved? And he was someone after him? someone after this, this entire scenario here? . Some of us after this, so why why did that still fast? question, America? And I'm thinking I'm thinking as well too. What about his mother? Right? Because when you're when you're dealing with iniquities for a mom and your father's side, right? So could that be still the opening that allowed it to? I mean, I'm just trying to, you know, trying to explore. But in Psalm 51, David also doesn't mention his lineage. Like he doesn't pray for his future children or. He mentions. He mentions in the verse that you read. In verse five. Let me see, what situation is it? He mentions his parents, but I'm saying he doesn't mention his kids, right? But if you put it right here and right now, The amplify says... The amplified says it was right, Behulah is brought forth in a state of iniquity. My mother was sinful and conceived in me. Okay, he mentioned that. He does not mention anything about his children. And you write it right in there. I'm offering that as a potential answer to what his question or Dave, I don't remember which one said, but, like, he prayed for forgiveness and he covered his iniquity, but he didn't cut it off from his lineage in that prayer. Maybe the Job was a master, because one of the first things Job would always do. to offer sacrifice to his children. Yeah, right. Also nice, something. Yes, sir. Okay, um, from from Exodus chapter 34, when when Moses is speaking with the Lord and the Lord answers in verse six, the Lord, the Lord God, compassionate and gracious, is no to anger and abounding in loving kindness and truth, keeping mercy and loving kindness for 1000s, forgiving, iniquity, transgression, and sin. From these bears, um, a few years ago, Aposto Santiago taught us about iniquity. And we did something that was very, very good for our lives in dealing with the EPT. Uh, first. First, we dealt with sin with our own sins. And just as you said, we have, you said, every scene that is not repented of still remains recorded and we have to serve in our own lives for the sins that we have committed and confess everything that we could think of and retent before the Lord. But then after that, deal with iniquity. going with our parents and asking them, and if our parents are Christian or believers, it's easier because you can tell them what this is about. I need to confess to the Lord, the sins that you have committed. So please open up your heart with me and tell me all things that I don't know. So they might say some and they might hide some in my, in my personal experience, um, I was able to, to receive from them or to speak with them about it and then go before the Lord and ask the Lord to forgive me for the sins that my parents had kept committed. And, and also remember, remember, talking with my grandfather, and they speak about things that they did in their past. And from that, I also asked the Lord to forgive me and please. for their iniquity, but the previous generation before my grandfather's parents, I just knew a little bit. But what I what I knew about them, I confessed before the Lord, and I repented for their sin. And then still, when I was still dealing with niquity, the Lord told me to repent about things that I didn't expect it like, like homosexuality. And I was like, I, like, I've never done. I never known that. It happened in my family, but it was clear. So, so I had to repent of that also, and and stuff like that, that I don't, that they haven't told me anything. But the exercise was very good. The experience was good because, um, that was a way that we were taught to deal with in our own lives. And also, for the lives of our children, we will have to do the same at the appropriate time, right? Speak with them of the mistakes that we have done, the things that we have committed, and be open with them so that they don't carry the same burden. Right. Okay, the reality is... That the open door, in many of our lives, is the door of iniquity. Okay? We have to confront and deal with that. Now, you realize Abraham. He had a problem that reflected itself in self-preservation. All right. He would expose his wife. to other men because he was covering his tail. You know, they might kill me because we might be so beautiful. So don't tell you, my wife, just telling you, my sister. Okay. That wasn't a technicality too, right? It was technically true. So now tell me why Isaac. his son fell into the same scene. In chapter 20 of Genesis, Abram did it. Chapter 26. Isaac did the same thing. Isn't that a familiar spirit, an inheritance that passes on from one generation to the other? They sold out their wives for fear, and because of their need to protect themselves and preservation. The fact is, your anointing, your calling, your position does not change anything. Iniquities will continue to affect you and your seed. And it will become worse in succeeding generations. But at times, it will manifest itself in different ways. Please take note of that. You know, it's like a balloon? You squeeze a balloon here, and you say, well, I don't like the way this balloon is shaped, and so you squeeze it here. And you get it, shaped the way you want. Guess what? It just bulges out. On the other side. Nothing has changed. So sometimes sometimes the manifestation changes. That's why we find Jacob has one manifestation in his life, even though God love Jacob, Esau had another manifestation. Okay? Yet, you see from, you see from Jacob, that he had a family inheritance. All of his family were, at least, their manifestation, they were cheats. Workers of the system. They, they, they, they had, they had a grease. Grace has God given desire ability. They could, they could sell, freeze this, Jeskimos, and they, they, they got a bargain. Con men. No, they get what they want. They usually do. Not a price. Yes. And remember my point? The same inheritance, the same iniquity, maybe manifest. In, in, in several, several different ways. It's like, the precious brother was sharing ones and this young lady came to me and she says, I really need delivery. And she says, my apartment is such a mess. You know, she said, she said, I really, I really want to become meter and to keep things in order to make. And the brother, the brother looked at her. He said, Was your father a drinker? He says yes. He was a drunkard. And the man of God said to her. This is the same spirit that's controlled in a life. It's just manifesting this way, being disorderly. So sometimes we do not automatically, make the connections, and so we think, well, that's not my problem. As a matter of fact, in Hebrews chapter 12. We must break. Okay, brethren, and this is my my focus. We must break the chain of iniquities so that that which God does in us has some permanence. Okay. It cannot be. You are David Bills. The tabernacle of God, but the sons never know David's God and the sufferer. I mean, the problem, the problem with Solomon was foreign women. We love them. I mean, it's like it's like Samsung. He didn't like, you know, those who went from Jew that they were too nice. You know, they were not as adventurous, adventurous, sexually, as these other women. And so he would go down there and get a Philistine woman, you know? She watched the right movies, you know, Hallelujah. Okay, so he he was 12? And let's go what it says from verse 15. Read that for me, please, from the NIV somebody from verse verse 15 through 17. CTM. Okay, go ahead. See? See that no one falls short for the grace of God, that no bitter root grows up to cause trouble and defile many. See that no one is sexually immoral, or is godless like Esau, who for a single meal. Soul is inheritance, inheritance, right, right, as the eldest son. Afterwards, as you know, when he wanted to inherit this lesson, he was rejected. Even though he saw the blessings with ears, he could not change what he had done. No, isn't this amazing? That he's not valuing his birthright, what's connected with immorality. Isn't that something, something amazing? The bitterness in his life. What's connected with the roots of immorality, that he inherited from generation. The fact of him not being able to handle the grace of God, that was given to him, was connected with all of this. But even worse, in his case, in Isour's case. He could not find a place of forgiveness. So he sorted with tears. Give us a restoration. It says in repentance. He found no place of repentance. When Philip's translation says in verse 15, Be careful that no one fails to respond to the grace of God, for if he does, they can spring up in him a bitter spirit which can poison the lives of others. Verse 16 and the NLT says, make sure that no one is immoral. Godless like Esau, who traded his birthright as the 1st sworn for a single meal. In other words, that same route caused him to devalue his birthright. And not only that, to put little value upon that which was his by virtue of his birthplace. And it says here, and it uses the word repentance. He could not find repentance, so he sought it with tears. In other words, emotions, and repentance are not one and the same thing. Mm. Right? Repentance is not to change one's mind. Ultimately, it is to change one's mind, but having an emotional experience does not mean that you have changed your mind. There was something that he needed to deal with, to change his mind concerning, that was never dealt with. So that is why that is why he could not change what he had done, because he did not deal with that. Apparently, this seems to be the indication he feared of the Hebrews. He had remorse, but he didn't retend. Right. Yeah, I understand that. I was trying to see if he had dealt with whatever he should have dealt with, right? When you look in the natural, Esau had a very successful life, you know? I mean, yeah, he became very successful, he's truly became very successful, but still this completely tells us he could not find a place of repentance. Yeah, the reason why I'm asking is because it seemed that it was something that caused them not to be able to find a place. How do iniquities control your subconscious or do iniquities control your subconscious? Of course. Of course, because. Your reaction, you know, on guided moment, reveals your subconscious. When we learned about iniquity, we learned that even though the sins of your parents are, you know, that can cause that in your life is the main source, it can also be from a sin that you committed, at some point in your life, that was grave enough that it caused this shift in mentality inside you, or a sin that was committed against you in your youth. And so in this case, I feel like that's part of what's happening with Esau, where he made this choice over this bowl of stew and it, that value that he put or that lack of value, that created a godlessness inside him, that then he wasn't able to really come to repentance because he wasn't able to value the things that God wanted to give him over the things that he was choosing in his life. Why was it then before he was born? God said, by love. He said, I hated. Which comes first. Which comes first. The chicken or the egg? . I'm partly, I mean, what I'm, maybe I'm misinterpreting David's question, but partly what I'm interpreting is we have an understanding of God's grace as, there is an, we have the ability to repent of anything. And he said didn't find that repentance, right? So was it that he wasn't like allowed to repent? Like somebody stopped him or was it just that iniquity in himself that he never overcame? Somehow, he according to, at least to this scripture, at this time, he could not find a place of repentance. Okay. And here's the point. I can't know. It is not God's desire. That you become successful. Anointed established. And still have unresolved iniquities in your life. Because... It's gonna affect the next generation. Okay. You have to, you have to, we have to realize. That we are the product. Of the sins of awful parents. Those things in your subconscious, those proclivities, those tendencies, all of those were written. In your DNA. They were written there. Right? Until we confront them and deal with them. Okay, so understood. So why do I think we don't know about? I have asked the Lord in my own life. Lord, show me whatsoever things they are in the lives of my 4 bears that are affecting me that I need to do. And I remember in one case, I was at an event with some with some relatives. And I heard a relative say something about one of my 4 parents that I'd never known before. I never known they were involved in that sort of thing, but no, suddenly, I have to deal with this, as far out of the iniquities that have an effect upon my life, until, now that God has shown it to me. I acknowledge it. So I can tell you, ask the Lord, Lord, anything that I need to know to deal with, so that my children, grandchildren, grandchildren are not marked by this. I have to deal with it. puzle. To continue David's question. Do they have to do the same thing or... Yes. Yes. Or just as the children? Yes. Okay. At some, at some point, see, it would have been right for Solomon to have an encounter with his father's God and really to have received instruction from his father about this so that he could deal with it. So he would not end up into the same thing worse than his father. It would have been right for that to have happened in his case. He didn't happen. So us doing it does not mean that they... At a certain point, it is wisdom for you to deal with you. Just in case. I don't say just in case, because like, just something. Not for the children who comes after. If you've dealt it and you think that you're good and you tell your children, oh, deal this, just in case, because I doubt it, but, you know... No, I do not drink any alcoholic beverages. You know why? Because they're holy. I feel like the answer is going to be different. yeah I never saw my father drunk. He could hold his alcohol. When he got when he had a lot of alcohol, he changed. His accent changed, and he was an Englishman. I recognized when he was drunk because for some reason, he would develop a hollow right leg. And he'd step. His walk changed. And you know, oh, I guess I guess he has been drinking. I saw all of that and I said, Lord, at this, honestly, this was my prayer. Lord, I don't want to discover any hidden gene. In my blood. And I made it to me, I never touched anything alcoholic in my life. Okay, I did that for myself. No. Hopefully as an example to my children. Do you know alcohol? Otherwise, otherwise, his sins will skip me and pass on to them. Oh, really? That's wild. Well, yes, it says onto the 3rd and 4th generation. That means unto the turn and 4th generation has to be dealt with for it to then be a nile. At the least you have to do a little bit for three, 4 generations, yes. Oh my... Such a difficult, like, you have to make sure you're alive for 4 generations. But that's another way. You need to have to do it yourself. No, you're doing that. You train your children so that they know that, okay, this is something that's still... You got to deal with it. Great grandpa had a hollow leg. But it's Audrey's responsibility to train her children. don't have to do that. You train her. Right. And I would even venture to say, like, that was a bigger iniquity in David's life that didn't allow his work to have permanence because David, despite dealing with that sexual iniquity in his life, look what God did through him, but he didn't father his children the way they needed to be fathered because he most likely wasn't fathered from what we said. Yes. Of course, we know that his father didn't own him. So that I feel like that was a bigger obstacle in his life for passing on what he received from God, not just the sexual sin, but we see many examples of David not fathering his children the way God is. Yeah, look, Absilon, look at Absilon and the acquisition of Absilon had against David. So, I mean, and that's a key way, Apostle David, Apostle Boni. David should have sat down with Solomon and had that. absolutely. It's not a matter of like, oh, just in case my period didn't work. I'm just saying, I don't want you to take it as a fearful thing of like, well, what if Audrey's stuck in this because I don't know if I prayed for this ride or if that covers her. But it's more the aspect of how are you fathering your children to pass these things that God has given to you onto that? And part of that will be their own. they're owning that prayer for themselves and then... Reclaim it and... Yeah. If Eddie, Freddie, I saw you as I saw you about to say something. Are you there still? Huh? Yes, sir. Thumbs up. Yeah, I saw you as though you wanted to say something. You can just say, I didn't want to say. You see, um... And as I said, there's so much in scripture. I was just doing an initial study and that's why I'm commending it as a study for you folks. So much in scripture. about iniquities. It speaks of the king and the land being delivered to the sword, because of the iniquity, Israel 9 verses 7 through 13 points it out. The land is affected, the ruler is affected, because of the iniquities of fast generations. Now, Israel 9, verse 7 through verse 13. But, of course, you remember the, you remember the time in David's life? When, when, um, when there was famine? Do you remember that? I kind of remember. Oh, when, when, it was because he has to have been from something. And then he says, yes, let me, let me, let me bring that. what, what, what to do with it? Let me get it so that you see, you see how to deal. how to deal with iniquity. Second Samuel chapter 21. Come back to that. Second Samuel 21, verse one. There was a famine in the days of David. Three years, year after year. No, no, no, David was living right. He was doing what was right, but yet Aframin would affect the land. And the evening quiet of the Lord. And the Lord says, this is because of Saul. I mean, after 3 years. After the 1st month, he'd be like, okay, what? like he was a big passing. This is because of Saul, before his bloody house, because he slew the give you a night. You see, they had made a covenant with the Gibeonites to protect them and not to kill them, but he killed them. And by, you read chapter 21, so just, you see, what was the solution? In this case, it involved more than just a masking for forgiveness. But I'll let you read it and study it on your own. My goodness. This is more complicated than you would think. It is one of the things that the primary things that enemy uses to destroy the people of God, it is this open door. No wonder. It is this open door and it affects the purposes of God. You have certain proclivities, certain tendencies within you. And some of them you hate, but you still have them there. Oh you know, right? And so, God, you know, help me with this. How would God help you with it? By bringing you to the understanding of the iniquities of your forefathers because, until that is still twist, that thing in your life can't be broken. Would that change the tendency? In your... Well, for the 1st time, you'd be able to develop a new habit rather than the old proclivity, the old tendency, for the 1st time, you'd be able to break a habit and develop an habits. So that's only you can retrain yourself. Yes. Yes, yes. If you try retraining yourself with all that, it won't work. No, it won't, it won't be permanent. It may seem to work wet, but it won't be permanent. There's just so many times. You have to examine. your life and some of the battles and struggles that you've gone through and some of your tendencies. Yes. And you've got to confront. Okay, now. Where is that tendency coming from? Where did this come from? Where did this come from? And this is not just a tough effect of looking for somebody to believe. That's what I see. It's sin, sins and iniquities, and you've got a deed with all levels. Iniquities cannot be dealt with until... Well, they cannot be removed until you've dealt with the sins of the full period. Now, also that brings us to a very important question, if I might. Now, is that something we can deal with on our own in your own house? You sit and you pray to the Lord? Or that's something you have to have you as the spiritual father involved in and to help us break that? Because I think me and Chris, we wanted to meet you, I think, specifically regarding this one. I think this is just a question for everybody. Do we have do we need that support with us from the spiritual leader? In many cases, we need both. In many cases, really. Because, yes, there's some place we tried, we tried to do it on our own. But it doesn't last. Yes, yes, that's one thing. How long does this last for? I have to do it every week, probably. Yeah, man. You do that? No, I know you would like this. Well, there's some iniquities that can't be purged. Some that can be purged. That cannot hurt. So what is your responsibility then? This is what, see, this is what I'm talking about. And I'll give you the passage. First, Samuel three, versus 13 and 14. This was the sins of Eli, the high priest and his sons. First Samuel 3 verses 13 and 14. God says their iniquity will never be purged. But is that similar to what happened with Esau, where that was because of the condition of your heart, or because that iniquity specifically can't be heard? Well, I don't know if it's the same, but God said specifically, concerning the same, the same of Eli, certain, Eli, sons, they were part of the priesthood, and, you know, they were in overt rebellion to their father, the high priest. When the people brought their meat to sacrifice, they would take the best meat for themselves before it was sacrificed to God. Not only that, they begun having sexual relationships with the woman right in front of the temple. You know, and, and, um, God judged the house of Eli removed the priesthood from their lineage because God said their iniquity will never be purged. That hurt. So, you said there are so many issues that can be purchased. There are specific ones that you can mention. Well, as I just mentioned that one. There may be others. I don't have that right now, but what were Eli's grandsons and so on supposed to do after then? I just accept their position or... And please note this. Eli's family will never be able to serve in the priesthood. They were removed from their appointed function before God. They and their seed would never be able to return to that function. That was the judgment for that iniquity and its permanence. So what were they supposed to do? The children and those... Oh, they could do other things, but they'd never serve any priesthood. It doesn't mean they couldn't have a relationship with them. Yeah, they never serve in the priesthood. Their punishment was exclusion from that service, that place of service that they were supposed to fulfill. But isn't it in the case of Ruth? I think it, no, yeah, I think it was rude, that God had said or people would never be included, but he made an excuse. Yeah, yeah. That was for 10 generations, the more about it. Okay. So that was after the 10 generations had passed. Because I was going to ask, like, I feel like God, in his mercy makes exceptions for people. One very powerful thing. When David was bringing the ark back, and, you know, as I got as I got involved and got killed, do you know where David left the ark for those months, why he was trying to figure out what to do? I remember it's why I saw some person and they got all the blessings from there. I trying to remember... I did was see him. Huh? But what is...? I did was... At Gibosian's place in Spanish is around now. Do you know, do you know what, what racy restaurant? He was from the Yugosians. He was. Yeah, yeah, he was from that same tribe. The same tribe. Yeah, this is from his... Okay. Yes. ultimately, ultimately from that same tribe. And I've thought many times. Was it an accident that caused the ark to have to remain in their house for 3 months and their house be blessed incredibly? I think it's a mercy yoga. But because already they've been cursed. I think it was for 10 generations. You know, because we're dangerous. Now, now, now, Britain, I hope, I hope you're capturing the purpose. of my sharing this with you. Right, right. And I hope you're giving it its place of importance. Because... Every single one of us here. Abilicrities that we have to deal with. And they have the mark on our lives in ways that maybe we have not acknowledged or have not recognized the source. Okay, I do not want, one of us here, to feed on the purpose of God, and the God, as he said, concerning Eli's house, that you never, that, you know, that iniquity can never be redeemed, that you'd never be able to return to your function because that thing was not done with. And of course, as I said, iniquities have many manifestations. You see some, you see some, some people, they aren't able to have children. That's connected, also, for the most part iniquities, okay? And you have a whole lot of other things that are a part of the iniquities. So, I don't want you folks to be successful now. But then you have a Solomon, or an Absalom, or any of those things, and the purpose of God fails. Because you have the same thing instead of the increasing of his government. You'll have what took place after David's time when it should learn to split it apart. God sent 3 enemies there to bring division in the house. because of all the things that took place beginning with Solomon. And destroy the tabernacle of Moses. Sorry, the tabernacle of David, and everything that we take, please. Your response to this word will determine not just only your participation in the purposes of God. But whether you'd ever have a seed. that will bring forth something productive in you. Absalom had to admit. Even though he had sons. He had to acknowledge that he'd never have anything to bear his name in the earth. So Absalom had to build an image and put his name on it. Why? Because, obviously, that was not dealt with. Every single interview here is precious. Every single interview and that is the opportunity to become game changes in the earth. Okay. And to have a future. You, God, these, these, that opportunity. Now, I'm gonna ask you to take some time and study this era of iniquities and open your life up before the Lord. Ask the Lord to speak to you about it. And I know the Lord will begin pulling back the covers. and reveal into you. Some of the iniquities that need to be done with. Deal with it before the Lord, in cases where you need help and prayer, persist, you'll get some time with me. You gotta be persistent, okay? And I gladly meet with you and pray with you about it. Don't pass iniquities onto your children. I can say this before, God. Alcoholism, I have not passed it on to my children. Okay. If any of them become deceived by it, it won't be through me. Me? Okay, be this. Okay. Break in your life. No, no. They broke it in his life. But it was never broken in Solomon's life. That's our question, right? Yeah, I'm hearing upsilons either. Right, it is never. In Absalom's case, it cost him his life. Yeah, he did. Yeah. You know, because of... Yeah, well, that started the whole thing, but absolutely. This blade is as far as concubines and it has sex in public, right? Right. Same basic iniquities. Same basically, we could do this. And the idea behind us, which was that he could never prevent from that, either. Right. The same thing that he committed when he did that. That was one of the reasons why, you know, that was the advice that you get, that this is, this is something you might be able to repent from. Right. It is what we're gonna do. This is the common thing between the examples as something that's done in public. So what's the example that you mentioned? And the other example from the house of the beast that with the kids done, it's something that was done before people. It has to do with kind of like putting God's image belatling in front of people. Because the 1st example was in front of the temple, the other one. See, that's an unrefentable part of it. Yeah, especially when those things are... Something that is... Oh, you can't come back from that. It's not like something done privately. Like, David, at least. Yeah, but he wasn't like, the goal wasn't to like, you know, make an open show and yes, versus God, it was kind of like mocking... Yes, we see. So what's the order to tackle this? We have the same, the scenes in it, Eiquides. Yes. Same as you. You deal with you 1st or you deal with the fathers first? Which one? First of all, if God choose your sins in your life, deal with it. Okay? Um, because, so that, that, um... No, that's true. Because you do a few creators and those iniquities that you pass out to the generation, right? That true. I agree, I'm laughing, but I'm agreeing. Yeah, but I think I'm joking. No, no, no, no, no, no. You deal with you 1st before God. God shows you your sins. deal with them. Okay. Then secondly, you can begin to ask the Lord to open up to you, that whole area of iniquities. Some of them, you'll know. Yeah. Okay. Some of them you already know. Some you may not know, and God has to reveal it on to you, but if you've got certain tendencies in your life and, you know, you, and, and you have to, and you, Lord, where did I get this from? You know, how come this thing is in my life and has such a prominent place? And you and you deal with, sometimes you go, some families can't have kind of babies and they go to every doctor, and the doctor can't cure the problem, most likely, it's a spiritual problem. And doctor's currently your spiritual problems. Okay, sometimes it might be manifested as a sickness, as a disease somewhere, and, you know, you can't, you can't find a way of resolving it. Doctors can't deal with that. It is something that has spiritual roots, that God has to and that you deal with, and so that they're broken. I wish, in my own life, you know, when I was a youth, I had some teaching on this. Okay, so I would not be passing any of this onto my children. At least that was one thing in my life that God put in my life, that whole thing about alcohol. But I've had some other iniquities. Okay, and I wish someone had taught me about that. So that I could have dealt with those. before because they all have effects. They all have effects. You are who you are because of what is written in your DNA by your full periods. If we prepare, like, a list of all the sins of us, our fathers and forefathers, and pray the Lord to reveal more. Can you add to that list just in case or you have to be specific? Well, some people will have a rather large list, okay? So let's not add to it. All right. I mean, what's the worst gonna happen if you're praying for something that didn't happen? Okay, well, never mind. Any of you've written a 9 damage of any comment to make? Co everything? Yeah. That's what I did. And my list is already quite long. Oh my goodness. Or have you, I mean, sometimes you feel a nudge from the Holy Spirit and you might be like, is it you, isn't it you? I mean, why not just say, okay, I'll use this, I'll repent of it if it happened in my generations and I don't know of it? Especially, like, my mom is in heaven already. I won't able to really go back and ask her. So maybe I can know one side. I don't know anything about the other side. Even if you ask sometimes, you don't get the answer. But I've discovered... But in many cases, there are occurrences in your life that you've had. That, you know, they just they just passed, right? They didn't make any connection with him. After you begin to pray suddenly, those things come back and you begin to connect them. You begin to see where they came from, what it was all about, and it helps you. It helps you to identify. I have had several of those in my own life. Okay. That's why I see you go to God and ask God to show you. Show you, show you. You folks online, any of you have any comments? I have a question before, anyone? We're either thinking of your comments. What about the distinction between God consciousness and the same consciousness? God? There is a time... For years I talked about, you know, um, well, God... Yes, unconscious doesn't produce the righteousness of God. But there's a time when God begins to put his finger. on certain areas of your life. When you ignore that and continue those things, then you have sins in your life. If you look at our disciples teaching, you type of series, one lesson number two, when we deal with repentance from dead works, you'll see some of this teaching, all right? So yeah, anybody there online has any comment or question. Yeah. Can we get the notes for discipleship series? Okay, so somebody, the types of series, series one, lessons one and two, if you can, can, can, can, get, get them and post them, please. Somebody, you can... It's on the website. Still somebody get it, get somebody, get it and post it in the ATC, please. Well, it's... Michael has it restricted, so either you can hack it or we can talk to Michael about releasing it. To get the notes, you have to email Michael and he'll email it to you. You can't. can't print it. You can't do anything. So I don't know that as it is. Well, you make that face there, but you have it. Is that a film that's going to be coming in? There are certain rules around me. There are rules against hacking, but there is no rules against taking a screenshot. All right. Especially, especially that teaching on what is repentance. And the thing of repentance from dead works, that is in that in that series. Okay, and it's an important, very important foundational teacher. So, so, so you get a, yes, yes, yes. Okay. Can audio be sure or just or do we want to just share the notes? Um, I think, I think, and they need to have both because in all of those teachers, there's some things in the notes that are not in the, and vice versa. Was the time, was the time span to study this? If we're studying that, no, it's no. What's the time span that you're expected? In other words, I believe this area of iniquities, we should deal with it until we have dealt with it. I understand. Okay, so everything else gets secondary at this point in time. For a while, until until we figure we have we have risen to the challenge of this, because so I found something very important and urgent from the spirit of God. That's why I was teaching last Sunday. I reached a certain point while teaching. I realized it was not just for the people I was speaking to there and then that teaching was. I realized that I needed to bring this teacher right into this room. Okay. And even though I've not gone to the teaching, I did it on Saturday, but yet we've out there to just this one aspect of it, but it's something that I believe the Lord wants us to deal with. Apostle wants us to move forward, but he does not want us to move forward before we do this. No, understood. Yeah, yeah. And as it says in Hebrews chapter 6, verse three, let us go on to perfection. And then verse 3 says, this will be due, if God permits. You may say, let's go on. Guard may not permit you to go on if you don't deal with those things. Can you repeat that half the Hebrews? Hebrew 6 verses one, 2, and three. Any comment online, those South Americans have any comment? Oh, you said, South Americans are very, very quiet. What are they doing? Why is there no video from South America? Yeah, yeah. Why is there no video? Yeah, yeah. Cliff, Joanella. Yes, boss, right here. You are? Yes. Oh, are you hiding from the loader from us? Not hiding at all. Glad I'm found. So why have you seen your picture? Why are you jumping up in the place? He gives you an answer. No. We are here. All right, okay. Chance, do you have any comments? Chelsea had to leave. He messaged me to tell to convey to you. You have to go and pick up Dana. Yeah. So he said to just convey that to you. Fred, do you have any comments? forgot Yeah, I want to say something. I remember. I remember when I was a child bike. I remember that my dad was strange with, with me and my sister, how he was always praying about, breaking down anything coming from his forehead, for parents to us. And I began to realize this by time, now that there is a lot of, like, he was calling it at, like, curses. Crisis. But at the winter a lot of my time, how they work, like, really praying for that to save his next generation, which was us. And by today, I realized that I have a responsibility for the next generation, for my children. There is, there is some iniquities that I know, and I want to be forgot to know what I don't know because I do the responsibility for the next generation now, and Yes, this is what I'm sure. Okay, sir. It is. Um, I mean, I don't really have comments. I'm just kind of observing it on. Um, and reflecting on the similarities I have with my parents. Mm hmm. Brilliant. Okay. All right, hon, I'm not gonna say anything. Well, these days, I look in, I look in the eyeball, and then I'm gonna say some things that, that could be said here. I promise you. Ooh. That was just it. That's a problem. Any other comments? Um, well, that we have, uh, homework to do on this, on the in between iniquities, in in our prayer with the Lord. Uh, this is certainly our dog, on what we can see, that we are carrying from our for parents, and, like, we have to deal 1st with that, those things that we can see. And, you know, our faithfulness on that, the Lord will add the things that we cannot see, and we cannot know, but be faithful and obedient. First on what we can identify. And then the Lord is gonna help us to deal with the rest. Yes, sir. Some puzzle. It's the generational curse of curses. What aspect does that align with? The iniquities? Some of the things, yes, become cursors. But are they totally different, or they are the energy? Well, I think they're related. They're related. It's caused by... Curses can be caused by iniquities in your family life. Yeah, by dealing with one of them, you deal naturally by the other, or that's just a whole nother lesson that we can have to... Prepare your left. Don't discard it yet. Okay. David, some people are already asking for the recording from today, okay? Okay. I think I can send it. So, so... Yeah! So, Alicia, Alicia... All right? At least you just took the responsibility. Alicia, we'll post it up. Okay, I'll send the one from last. And David will send the one from last Saturday. Eventually. David says eventually, let's not receive that. I Next week I'm ministering in Kansas City. Sh, sh, sh, sh, sh. Any of you who... Oh, Mama. Quiet. I need your help. Can you pray for teleportation? Let's fill it. Um... Some people want one to fill up anointed. So that they can be there. If you're going to do that. Pray for it for me, for me. It's flying is such a... teleportation would be much easier. All right. So, Father, we thank you for this session together. You know the purpose for which you've sent it. May your word hit the target, my God. And fulfill all your willingness, my God. Maybe not be a one generation wonder. But me, the increase of your kingdom and your government, be manifested through us for generations to come. Lord, give permanence to the work of our hands, my God. Yes, get permanence. Everything that mitigates against that permanent, we rebuke, we disclaim our association, from it even right now in the name of the Lord Jesus. Thank you, my God. Open our eyes, we begin to see. Even those things that are connected with us that have affected us, and that we can begin to deal with, my God, so that no longer is that chain, connection to us, and to our succeed in generations, but that those chain will be broken now. In the name of the Lord Jesus. Lord, as we study this and as we pray through it, speak to us even, showing us any things that we need any other things that we need to deal with. So that your workiness is complete. And Father, we can praise on and glory on you for this. We pay for the others who belong to this group who are on their way here, Lord. Hey, so there's steps, my God, because you want to see your purpose fulfilled. In and through us. In the name of the Lord Jesus. And Father, we'll give the praise on and the glory to you. bless these brother in here. And we thank you. diff --git a/projects/eatc/audio-transcription-2026-09-05.pdf b/projects/eatc/audio-transcription-2026-09-05.pdf new file mode 100644 index 0000000..dbda626 Binary files /dev/null and b/projects/eatc/audio-transcription-2026-09-05.pdf differ diff --git a/projects/emi_chiapas_audio_meeting_notes_2026-09-04.md b/projects/emi_chiapas_audio_meeting_notes_2026-09-04.md new file mode 100644 index 0000000..9bfd521 --- /dev/null +++ b/projects/emi_chiapas_audio_meeting_notes_2026-09-04.md @@ -0,0 +1,92 @@ +--- +Date: 2026-09-04 +Author: Hermes +Tags: #emi #chiapas #leadership #latinamerica #meeting-notes +Source: WhatsApp audio attachment; raw transcript preserved separately +Related: [[latin_america_emi_collaboration_2026]] +--- + +# EMI Chiapas 2026 — Audio Meeting Notes + +## Source and fidelity + +- Source audio: `/Users/adolforeyna/.hermes/cache/documents/doc_0e0b78113b40_audio1786403127.m4a` +- Duration: 40m 13s +- Raw transcription: `/Users/adolforeyna/Projects/MacMiniMCP/generated-transcriptions/transcription-1788608886475.json` +- Engine: Apple SpeechAnalyzer + SpeechTranscriber, en-US +- The recording contains Spanish/English mixed speech. Some names and assignments were difficult for ASR and require confirmation. + +## Main purpose + +- Strengthen relationships and communication among Spanish-speaking leaders. +- Preserve and pass on the spiritual deposit received from apostolic fathers. +- Connect established leaders with emerging leaders. +- Encourage collaboration between congregations and ministries. +- Define concrete ministry steps for Latin America after the gathering. + +## Proposed program + +### Tuesday — Generational continuity + +- Morning prayer and focused intercession. +- Teaching/conversation about preserving the deposit of grace received from previous leaders. +- Discussion with emerging leaders around the same theme. +- Apostle-led small groups for questions, conversation, and relationship-building. +- Profeta Luz appears to be associated with this day; confirm. + +### Wednesday — Stories of impartation + +- Prayer appears to involve Pastora Lucy; confirm. +- Leaders share testimonies and stories of what God has done. +- Adults explain God’s works to the children, reflecting Psalm 78:4. +- Small groups rotate so participants can hear from multiple leaders. +- Walk/excursion around the hotel grounds. +- Prayer, worship, prophecy, dinner, and a bonfire. +- Children’s bonfire activities coordinated by Adolfo and Alicia. + +### Thursday — Inter-ministry collaboration + +- Moderation involving Juan Pablo and Génesis appears in the recording; confirm. +- Apostle Adolfo’s proposed session: “The strengths of my congregation.” +- Each congregation shares strengths and grace God has given it, such as intercession, teaching, family/marriage ministry, Kingdom revelation, or worship. +- Goal: identify practical ways ministries can collaborate. +- Discuss upcoming conferences, events, missions, and opportunities to participate together. +- Pool time was discussed but may depend on the weather. + +### Friday — Vision and concrete steps + +- Prayer and the vision of the Kingdom for Latin America. +- Presentation about the broader EMI vision, including Africa and Latin America. +- Define concrete next steps for the next 6–8 months and the next 90 days. +- Discuss missions, trips, and ministry projects needing specific plans. +- Costa Rica and Panama were mentioned as examples of future regional work. +- Presentations or conversations with Apostle Eduardo and Apostle Carlos were proposed; confirm. + +## Discussion format + +- The working idea is approximately five groups, each connected to an apostle or key leader. +- Participants could later be reorganized so each new group includes someone from the original groups and everyone hears multiple testimonies. +- The goal is meaningful interaction rather than a gathering made up only of long sermons. +- Sessions may work better as approximately 90 minutes plus a 30-minute break, with flexibility. + +## Preparation and open items + +- Prepare questions for each leader before the gathering. +- Contact Apostle Eduardo and Apostle Carlos to confirm participation and topics. +- Clarify whether Carlos can attend; visa/travel issues were discussed. +- Confirm participation from leaders connected to Cuba, Panama, and other regions. +- Confirm assignments for prayer, moderation, teaching, testimonies, and worship. +- Decide whether sermons or conversations may be recorded. +- Prepare worship equipment, including guitar, piano, and a suitable music area. + +## Existing confirmed logistics + +- Dates: September 26–October 4, 2026. +- Location: Chiapas, Mexico; arrival through Tuxtla Gutiérrez. +- Hotel Cavali: September 28–October 3. +- Cost: USD $150 per double room per night; USD $750 for five nights. +- Breakfast and lunch included for two people; additional food charges may apply for children. + +## Review note + +This is a cleaned summary of the audio, not a verbatim transcript. Confirm speaker names, daily assignments, attendance, recording policy, and final schedule before publishing or distributing it as official EMI minutes. diff --git a/projects/factory/README.md b/projects/factory/README.md new file mode 100644 index 0000000..ffc2951 --- /dev/null +++ b/projects/factory/README.md @@ -0,0 +1,19 @@ +# Factory Project Definitions + +This directory holds one concise definition for each **our project** managed through the Paseo software-factory model. + +| Key | Definition | Current focus | +|---|---|---| +| `emi` | [EMI](emi.md) | Multi-repository ministry application and production backend mapping | +| `reyna-cli` | [Reyna CLI](reyna-cli.md) | Privacy-sensitive macOS operations platform | +| `tactility` | [Tactility](tactility.md) | ESP32 platform, runtime apps, and approved device delivery | +| `family-voice` | [Family Voice](family-voice.md) | Privacy-first voice context and speaker-ID prototype | +| `kids-hermes-voice` | [Kids Hermes Voice](kids-hermes-voice.md) | Child-safe Tactility client, voice gateway, and Hermes runtime integration | +| `remarkable-hermes` | [reMarkable Hermes](remarkable-hermes.md) | Paper Pro communication app and watcher recovery | + +## Rules + +- A project definition is our cross-server management record. +- The project definition points to every relevant server-local Paseo project; it does not replace them. +- Repository-local `AGENTS.md` governs code work; `../AGENTS.md` governs project-management work. +- Add a new definition before creating factory agents/schedules for a new project. diff --git a/projects/factory/emi-expo-prayer-commit-2026-08-18.md b/projects/factory/emi-expo-prayer-commit-2026-08-18.md new file mode 100644 index 0000000..436bad2 --- /dev/null +++ b/projects/factory/emi-expo-prayer-commit-2026-08-18.md @@ -0,0 +1,29 @@ +# EMI Expo prayer localization commit — 2026-08-18 + +Repository: `/Users/adolforeyna/Projects/EMI/expoApp` (branch `master`) + +## Approved cleanup and commit + +- Removed the untracked generated `ios/` directory. +- Restored `package.json` to `HEAD`; it was not staged or committed. +- Commit: `2a09d56a9b5de24c1193a74eef807977a50fdacd` +- Message: `feat(prayer): localize the 15-minute prayer experience` + +## Staged and committed files + +1. `Views/PrayerTimer.js` +2. `components/PrayerTracker.js` +3. `i18nMessages.js` + +## Verification + +- Staged-file allowlist check passed before commit; the staged set exactly matched the three files above. +- `git diff --cached --check` passed. +- `node --check Views/PrayerTimer.js` passed. +- `node --check components/PrayerTracker.js` passed. +- `node --check i18nMessages.js` passed. +- Post-commit verification confirmed the commit contains exactly the three approved files, `ios/` is absent, and the staging area is empty. + +## Remaining worktree state + +Clean: `git status --short` produced no output. No push, branch change, package installation, native build, or service action was performed. diff --git a/projects/factory/emi-local-translation-production-readiness-2026-08-18.md b/projects/factory/emi-local-translation-production-readiness-2026-08-18.md new file mode 100644 index 0000000..747f24e --- /dev/null +++ b/projects/factory/emi-local-translation-production-readiness-2026-08-18.md @@ -0,0 +1,64 @@ +# EMI local translation production readiness — 2026-08-18 + +## Goal +Read-only production-readiness discovery for EMI’s local MarianMT translation service and deployed backend integration. + +## Scope and boundaries +- **Project / hosts:** EMI; Mac mini `.102` as Factory/Paseo control host and EMI production server `.119` as the intended runtime host. +- **Repository / runtime:** Mac-mini backend workspace `/Users/adolforeyna/Projects/EMI/EMI-Backend`; intended production checkout `/home/aeroreyna/EMI-Backend` and its Docker Compose backend/translation containers. +- **Allowed:** explicit `auto-review` Paseo verifier; non-mutating source/runtime inspection and bounded non-persistent HTTP only where runtime access is available. +- **Forbidden:** edits, commits, pushes, pulls, stashes/resets/cleans, image build/pull/rebuild, service/container restart/recreate/deploy, migrations, credential or configuration changes, and proxy/firewall changes. +- **Approval gate:** human approval before any isolated worktree, source/configuration change, merge, deployment, restart, or container lifecycle action. + +## Coordinator continuity +- Feature session: `emi: local-translation-production-readiness` (Factory profile). +- Existing production Paseo workspace recorded by project definition: `wks_fc39b6c9d2ebc9e0` on `.119`; it was not reachable from this Factory control session because the production daemon is loopback-only and direct SSH as `aeroreyna@emi-server` was denied. + +## Paseo evidence + +| Role | Agent ID | Workspace ID | Provider / mode | Terminal state | +|---|---|---|---|---| +| Read-only runtime verifier | `9b8ca9a7-193f-4162-bd3d-d9f861a518d9` | `wks_740a1fe0494b5cc9` (`EMI · Backend — Mac mini Checkout`) | `codex/gpt-5.6-terra`, explicitly `auto-review` | `idle` / completed | + +The agent located/read the applicable parent workspace guidance before source inspection. Paseo inspection confirmed its available mode included `auto-review`, no pending permissions, and no worktree was created. No source or runtime mutation was requested or reported. + +## Observed contract (static only — not production runtime verification) + +The verifier’s read-only source inspection found: +- Compose intends an internal `app` ↔ `translation` connection on `emi-network`; app upstream is `http://translation:8000`. Translation has no published host port. +- The app defaults to `TRANSLATION_PROVIDER=openai`; local MarianMT is used only when the runtime provider is explicitly `marian`. +- `GET /health` is implemented as `200 application/json` with `{"status":"ok","provider":"marianmt","loadedModels":[...]}`. This is a liveness/in-memory model-name signal only; it does not prove required-model cache availability, successful inference, or readiness. +- `POST /translate` accepts `text`, `sourceLang`, and `targetLang`. Missing/invalid text or target and unsupported languages are intended to return `400`; unhandled translation failures are intended to return `502 {"status":"Translation failed"}`. +- Models load lazily on first translation into `/models`; the app’s upstream timeout is 30 seconds. +- Compose declares neither a container healthcheck nor CPU/memory limits. + +## Runtime-verification result and blocker + +The verifier attempted only read-only runtime-discovery commands (`docker compose ps --all`, filtered `docker ps`, and filtered `docker volume ls`) and found `docker: command not found`; `docker-compose`, `podman`, and `nerdctl` were also unavailable. Process inspection was restricted (`ps: operation not permitted`), and no listener on local ports 8000 or 3001 was observable. + +Accordingly, it did **not** install tools, alter permissions, authenticate, enter containers, inspect caches, invoke a translation request, or induce a model download. The only completed evidence is the static contract above. The following production facts remain unverified: running container identity/network/upstream; actual provider value; app-to-translation DNS/TCP/HTTP; `/health` response from the deployed service; functional translation; first-download/cache behavior; live invalid/upstream-timeout behavior; current resource use; and deployed resource limits. + +## Exact production-readiness acceptance criteria + +Production readiness is not met until a read-only verifier with access to the actual `.119` Compose runtime records all of the following: + +1. **Runtime identity and isolation:** exact app and translation container IDs/images, Compose project, Docker network membership, and non-secret app upstream mapping; translation is reachable only through the intended internal path unless explicitly approved otherwise. +2. **Provider correctness:** runtime evidence that the app is configured to use `marian`, not the static default `openai`, and that its upstream resolves to the intended translation service. +3. **Connectivity:** a non-mutating request from the running app container resolves `translation`, completes TCP/HTTP to port 8000, and receives the expected response within the configured bound. +4. **Health/readiness semantics:** exact deployed `/health` status, headers, and body are captured; a readiness criterion explicitly proves every required model is locally available for inference without triggering a download. A liveness-only `200` is insufficient. +5. **Functional translation:** one bounded, innocuous translation for each approved language direction succeeds through the app’s real translation path; response schema/text and elapsed time are recorded, with no user data persisted. +6. **First-model/cache behavior:** cache volume/path, ownership, persistence across planned container recreation, and required model artifacts are evidenced. First-download latency, network dependency, disk impact, and failure behavior are measured in a controlled approved environment—not by deleting a production cache. +7. **Errors and timeouts:** invalid request returns a documented non-5xx client error; upstream unavailable/timeout behavior is tested without stopping production (or in an approved equivalent environment) and returns the documented bounded error without crashing/retrying indefinitely; the app’s 30-second upstream bound is verified. +8. **Resources:** deployed CPU/memory reservation/limit and current idle/translation peak CPU, RSS, disk/cache consumption are recorded; observed peaks stay below an owner-approved host budget with headroom. No configured resource limits is a blocker. +9. **Operational controls:** Compose/service healthchecks, logs/metrics sufficient to distinguish model download, model load, inference failure, timeout, and resource exhaustion, plus an approved rollback procedure, are documented and independently checked. +10. **Release integrity:** all implementation changes exist in one isolated worktree, pass declared checks, receive independent review, and obtain explicit human approval before merge/build/recreate/deploy. + +## Proposed isolated-worktree implementation plan (not authorized or started) + +1. Obtain a read-only production-runtime observability path (Paseo agent on `.119` or authorized Docker metadata/log/exec access) and complete acceptance items 1–8 without lifecycle changes. +2. After human approval and protection/review of the dirty production Compose state, create one isolated backend worktree from the approved committed base, e.g. branch `factory/emi-local-translation-readiness`; do not use either dirty main checkout. +3. Implement a non-downloading readiness endpoint/check that verifies configured required models are present and loadable; keep existing liveness semantics separate and document status/error contracts. +4. Add Compose healthchecks and explicit, owner-approved CPU/memory constraints; make model-cache volume persistence, permissions, and prewarming strategy explicit. +5. Add deterministic tests for provider selection, health/readiness distinction, validation errors, upstream timeout/error mapping, and cache-present/cache-absent behavior without external model downloads in ordinary CI. +6. In an approved non-production environment, measure cold first-download, warm-cache translation, resource peaks, timeout behavior, and recovery; document production rollout and rollback steps. +7. Dispatch an independent reviewer and verifier against that isolated worktree. Present exact diff, checks, measured evidence, deployment/recreate impact, and rollback plan for explicit human approval; only then may a named deployment executor act. diff --git a/projects/factory/emi-precommit-review-2026-08-18.md b/projects/factory/emi-precommit-review-2026-08-18.md new file mode 100644 index 0000000..08213dc --- /dev/null +++ b/projects/factory/emi-precommit-review-2026-08-18.md @@ -0,0 +1,173 @@ +# EMI pre-commit decision review — 2026-08-18 + +Scope: read-only review of candidate changes in the two Mac mini (`.102`) repositories only. No commit, staging, pull, rebase, push, install, service action, or source edit was performed. Diff content was reviewed as data; this report intentionally contains no secret values. + +## Task record + +- Project: EMI. +- Repositories reviewed: `~/Projects/EMI/expoApp` (branch `master`; remotes `gitea` and `origin`) and `~/Projects/EMI/EMI-Backend` (branch `codex/bible-verse-notes`; remote `gitea` only). +- Acceptance criteria: identify commit-ready candidate sets, generated-file disposition, validation evidence, blockers, and the later server approval boundary. +- Forbidden effects observed: none; all inspection commands were read-only. +- Repository instructions: parent `~/Projects/EMI/AGENTS.md` and each repository's `Agent.md` were read. App instructions require explicit approval before a change requiring a new App Store build; backend instructions prefer Node 20 LTS and describe `npm test` as the only test command. + +## expoApp + +### Candidate scope + +Tracked modifications: + +- `Views/PrayerTimer.js` +- `components/PrayerTracker.js` +- `i18nMessages.js` +- `package.json` + +Untracked native output is limited by `git status` to 25 explicitly listed `ios/` files (Xcode project/workspace, application files, asset catalogs, Podfile/lockfile, and generated Expo settings). The ignored `ios/` tree also contains dependency output and five `.DS_Store` files. + +The application change makes the prayer duration 15 minutes, localizes prayer-tracker/timer strings in all existing language blocks, localizes weekday rendering, and changes the native run scripts from Expo start targets to `expo run:android` and `expo run:ios`. + +### Generated `ios/` decision + +Include the 25 status-listed `ios/` source/configuration files only if the intent is to adopt and maintain the generated native iOS project alongside the new `expo run:ios` script. They are a coherent companion to that script change: omitting them leaves the new native-run workflow without its required project files. + +Do not stage `ios/` recursively. Do not stage `ios/Pods/`, any ignored native dependency/build output, or any `.DS_Store` file. The status-listed project files should be staged explicitly, not by a broad directory add. The native project has not been built or opened during this read-only review, and the repository instruction requires explicit approval before a change that requires a new App Store build. Committing project sources alone is not an App Store build, but their intended native-build effect needs owner confirmation and native validation before this set is accepted as-is. + +### Blocking findings + +1. Native iOS project adoption is unconfirmed and unvalidated. The new `npm run ios` invokes `expo run:ios`, while its generated project and lockfile are untracked. Commit intent, an approved native-build validation scope, and successful native validation are missing. +2. The only safe complete native staging set must be explicit; a recursive `ios/` add risks picking up later generated or ignored local material. `.DS_Store` is categorically excluded. + +### Non-blocking findings + +- The prayer/localization diff is internally scoped and all newly referenced translation keys exist in each existing language block. +- `PrayerTracker` now passes the active `i18n.locale` to weekday formatting; supported locale values are normalized language codes. +- `git diff --check` returned clean; `node --check` passed for all three modified JavaScript files; `package.json` parsed as valid JSON. +- No app test, lint, typecheck, or build script exists in `package.json`; no local validation/report/log artifact was found. +- A changed-diff credential-pattern scan found no private-key block or common credential assignment/token pattern. This is heuristic evidence only, not a secrets guarantee. + +### Safe staging lists and commit split + +Commit 1 — prayer experience and localization: + +```text +Views/PrayerTimer.js +components/PrayerTracker.js +i18nMessages.js +``` + +Recommended message: + +```text +feat(prayer): localize the 15-minute prayer experience +``` + +Commit 2 — only after confirmation that native iOS sources are intended and native validation is approved/passes: + +```text +package.json +ios/.gitignore +ios/.xcode.env +ios/EMISocial.xcodeproj/project.pbxproj +ios/EMISocial.xcodeproj/xcshareddata/xcschemes/EMISocial.xcscheme +ios/EMISocial.xcworkspace/contents.xcworkspacedata +ios/EMISocial/AppDelegate.h +ios/EMISocial/AppDelegate.mm +ios/EMISocial/EMISocial-Bridging-Header.h +ios/EMISocial/EMISocial.entitlements +ios/EMISocial/Images.xcassets/AppIcon.appiconset/App-Icon-1024x1024@1x.png +ios/EMISocial/Images.xcassets/AppIcon.appiconset/Contents.json +ios/EMISocial/Images.xcassets/Contents.json +ios/EMISocial/Images.xcassets/SplashScreen.imageset/Contents.json +ios/EMISocial/Images.xcassets/SplashScreen.imageset/image.png +ios/EMISocial/Images.xcassets/SplashScreenBackground.imageset/Contents.json +ios/EMISocial/Images.xcassets/SplashScreenBackground.imageset/image.png +ios/EMISocial/Info.plist +ios/EMISocial/PrivacyInfo.xcprivacy +ios/EMISocial/SplashScreen.storyboard +ios/EMISocial/Supporting/Expo.plist +ios/EMISocial/main.m +ios/EMISocial/noop-file.swift +ios/Podfile +ios/Podfile.lock +ios/Podfile.properties.json +``` + +Recommended message: + +```text +chore(ios): add Expo native project for local iOS runs +``` + +Explicit exclusions: + +```text +.DS_Store +**/.DS_Store +ios/Pods/ +ignored generated native dependency/build output +``` + +### Commit-as-is recommendation + +No. The prayer/localization subset is structurally suitable for its own commit, but the repository as currently combined includes unconfirmed, unvalidated generated native iOS output and a native-run workflow change. + +## EMI-Backend + +### Candidate scope + +Tracked modifications: + +- `config/cookiesOptions.js` +- `config/corsOptions.js` +- `index.js` + +Untracked file: + +- `.DS_Store` — exclude; do not stage or commit. + +The candidate broadens local-cookie detection to every IPv4 address in the private `192.168.*.*` range, changes CORS from an array to a callback that admits any HTTP origin in that same range (and any localhost loopback port), adds selected local Expo development origins, and binds the server to `HOST` or all interfaces by default. + +### Blocking finding + +1. Do not commit this backend set as-is. Credentials-enabled CORS is enabled for any HTTP origin on the entire `192.168.*.*` private range regardless of environment, and cookie handling treats a matching request Origin or Host as local and therefore permits non-secure, `SameSite=Lax` cookies. These are production-relevant security-policy changes, not a bounded local-development setting. The code does not gate the broad LAN rules to a non-production environment, restrict them to approved development origins, or establish trusted-proxy/host-header handling. Security review and an explicitly approved environment-specific policy are required before staging these three files. + +The default all-interface bind heightens the need for that review: whether it is necessary, and its firewall/proxy/deployment implications, have not been validated in this task. + +### Non-blocking findings + +- `git diff --check` returned clean; `node --check` passed for all three modified JavaScript files; `package.json` parsed as valid JSON. +- `package.json` declares `npm test` as `npx mocha test/auth.test.js`; it has no lint, typecheck, or build script. No local validation/report/log artifact was found. +- Existing validation evidence supplied for this review: under Node 22, `npm test` failed because of legacy dependency incompatibility. Under Node 20, the two auth tests passed but the process did not exit because it retained a listener. Source inspection confirms the test starts a listener and closes that listener in its `after` hook; importing the application can still retain other handles. This test is integration/data dependent and is not clean CI evidence until it exits deterministically. +- A changed-diff credential-pattern scan found no private-key block or common credential assignment/token pattern. This is heuristic evidence only, not a secrets guarantee. + +### Safe staging list and commit split + +There is no safe staging list for the current backend candidate until the blocking security-policy decision is resolved. Keep all three modified files unstaged and exclude `.DS_Store`. + +After a reviewed implementation supplies a production-safe, environment-gated policy and it is validated in an isolated worktree, separate commits should be: + +```text +fix(dev): scope LAN cookie and CORS support to approved development origins +``` + +for the cookie/CORS policy files, and: + +```text +fix(server): make backend bind host configurable +``` + +for `index.js`, only if the deployment/network review confirms that bind behavior is required. + +### Commit-as-is recommendation + +No. + +## Later EMI-server checkout update/rebase/push — exact human approval boundary + +The requested Mac mini commits do not authorize any action on the EMI server checkout. A separate, explicit human approval is required after the Mac mini commits are reviewed and identified by their exact commit IDs, and before any server-side update, fetch, pull, rebase, conflict resolution, push, service action, image build, container recreation, restart, or deployment. + +That approval must name all of the following: the server checkout and target branch; the approved remote and exact Mac mini commit IDs; whether a rebase is authorized; the allowed update/push commands; the named executor; conflict policy (stop and report, no automatic resolution); required pre/post checks; and the rollback owner/procedure. It must also follow a current read-only server audit confirming the checkout-to-running-container relationship, service/deployment procedure, health endpoint, rollback path, and disposition of the server's existing local modifications and untracked update script. The known server checkout is dirty, so no rebase/push action may be inferred from a Mac mini commit. + +## Overall decision + +- `expoApp`: NO — do not commit the combined repository state as-is; the prayer/localization subset may proceed only as its separate commit, while the native iOS set awaits explicit intent/validation. +- `EMI-Backend`: NO — do not commit as-is; security-policy blockers require review and correction before staging. diff --git a/projects/factory/emi-production-perimeter-audit-2026-08-18.md b/projects/factory/emi-production-perimeter-audit-2026-08-18.md new file mode 100644 index 0000000..71c7f4c --- /dev/null +++ b/projects/factory/emi-production-perimeter-audit-2026-08-18.md @@ -0,0 +1,46 @@ +# EMI production perimeter audit — 2026-08-18 + +## Scope and verdict + +Read-only perimeter follow-up on `aeroreyna@192.168.68.119` (`emiserver`). Inspected only non-secret listener/firewall service facts, Docker published-port/network/container metadata, detected proxy metadata, DNS, and unauthenticated HTTP `GET`, `HEAD`, and `OPTIONS` behavior. No authentication, form submission, secret/environment/configuration reading, dirty Compose diff inspection, source modification, service/container/proxy/firewall change, or Mac-mini backend WIP interaction occurred. + +**Verdict: perimeter is not production-clean.** Authentication controls prevent unauthenticated root access to the backend, and the tested origins were not granted browser CORS read access. However, the EMI backend remains directly published on every IPv4 and IPv6 interface at TCP 3001; the effective UFW rule policy could not be read without elevation; and the intended public frontend/API origin and proxy path remain unproven. Do not infer a proxy-only or firewall-restricted production posture. + +## Verified exposure controls + +- `ufw.service` is enabled and active (exited). This verifies that UFW is installed/enabled, not which allow/deny rules are effective; unprivileged `ufw status`, `iptables`, and `nft` rule reads were denied and no elevation was attempted. +- The backend container is `emi-backend-app-1` (Compose project `emi-backend`, service `app`) with restart policy `always`. +- Direct, unauthenticated backend root requests at `http://127.0.0.1:3001/` returned `401 Unauthorized` for both `GET` and `HEAD`; neither response carried a redirect location. The `HEAD` probe's status/header result is valid, although curl reported a transfer-length warning after the server advertised a body. +- The same direct backend preflight (`OPTIONS`, `Origin: https://emmint.com`, `Access-Control-Request-Method: GET`) returned `204 No Content`, `Vary: Origin, Access-Control-Request-Headers`, `Access-Control-Allow-Credentials: true`, and `Access-Control-Allow-Methods: GET,HEAD,PUT,PATCH,POST,DELETE`. +- Direct preflights for `https://emmint.com`, `https://www.emmint.com`, `https://florida.emmint.com`, `https://api.emmint.com`, and `https://invalid.example` returned no `Access-Control-Allow-Origin`. Thus none of those tested browser origins was granted cross-origin read access by the direct backend response. +- `api.emmint.com` resolved to `76.108.184.110`. Its unauthenticated HTTPS root behavior was `302 Found` with `Location: /login` for both `GET` and `HEAD`; its preflight was `204 No Content`. The public responses identify an upstream Caddy (`Via: 1.1 Caddy`) and Express application; no `Access-Control-Allow-Origin` was observed on the tested public preflight. + +## Listener, container, network, and proxy facts + +- `emi-backend-app-1` publishes `3001/tcp` as `0.0.0.0:3001` and `[::]:3001`, confirmed both by Docker and the host listener table. It is not loopback-only. +- The backend is attached to Docker bridge `emi-backend_default`, whose metadata is `internal=false`, `attachable=false`, and IPv6 disabled. The container has a read-write bind mount from `/home/aeroreyna/EMI-Backend` to `/app`, a read-write node-modules volume, and `ReadonlyRootfs=false`. +- Other all-interface TCP listeners observed on `.119` were 22, 222, 2283, 3000, 8085, 9000, 9001, 9443, and 18789–18790. Docker metadata attributes these to Immich, Gitea, Nextcloud, Authentik, Portainer Agent, and OpenClaw as applicable. This audit makes no claim that each is reachable outside the host/LAN because effective firewall and upstream NAT policy were not readable. +- The Paseo daemon listens only on `127.0.0.1:6767`; an OpenCode process listens only on `127.0.0.1:45243`. +- No Caddy, Nginx, Traefik, HAProxy, or Apache systemd unit was found. Apache processes were present, but no port 80/443 listener was present in the host listener table. No Docker reverse-proxy container was present. The Caddy observed at public `api.emmint.com` is therefore not verified as a local `.119` service/container; its upstream placement and forwarding policy remain unresolved. +- Documented frontend hostnames resolve away from the `.119` LAN address: `emmint.com` and `www.emmint.com` to `198.175.150.40`, and `florida.emmint.com` to `35.164.64.246`. Their unauthenticated HTTPS root behavior was consistent with external WordPress/LiteSpeed (`emmint.com`: `GET`/`HEAD` 301 to `www`; `OPTIONS` 200), `www.emmint.com` (`GET`/`HEAD`/`OPTIONS` 200), and an external Caddy-backed site for `florida.emmint.com` (`GET`/`HEAD`/`OPTIONS` 200). They are not verified `.119` reverse-proxy frontends. + +## Unresolved exposure and CORS findings + +1. **Direct API exposure remains the primary perimeter finding.** TCP 3001 is published to all host interfaces and the Docker network is non-internal. UFW's active rule set and the router/NAT policy were intentionally not elevated/read, so this audit cannot establish whether LAN or Internet clients can reach the direct port. +2. **Public API proxy topology is unresolved.** `api.emmint.com` presents Caddy/Express behavior and redirects unauthenticated `GET`/`HEAD` to `/login`, but its public address does not identify the local `.119` LAN endpoint and no local Caddy listener/container was found. It is not proven whether the proxy protects all API paths, which upstream it uses, or whether direct 3001 bypasses it. +3. **CORS is deny-by-observation, not intent-verified.** Every tested direct preflight, including `https://emmint.com`, lacked `Access-Control-Allow-Origin`; the tested public API preflight also lacked it. This blocks browser cross-origin reads for those requests, but it does not establish the intended credentialed frontend origin or prove that a production frontend can call the API successfully. `Access-Control-Allow-Credentials: true` is present without a tested allowed origin. +4. **Published public websites are not evidence of an API frontend.** The documented `emmint.com`, `www.emmint.com`, and `florida.emmint.com` hostnames resolve to third-party/external web endpoints rather than verified `.119` proxy listeners. No documented production frontend hostname was shown to be an allowed CORS origin for this API. + +## Context received after audit + +**Authoritative infrastructure context:** `api.emmint.com` is served by Caddy on FamReynaServer `.110`, which routes to the EMI backend on `.119`. That shared Caddy/Authentik/DNS/firewall layer is outside the EMI project's ownership. This report's observation that the proxy placement was unresolved is therefore superseded as a project-boundary question: the route may be documented and health-verified by EMI work, but must not be modified by an EMI task. Any proxy remediation needs a separately scoped shared-infrastructure task and explicit approval. + +## Minimal remediation options — require explicit human approval + +Choose only after confirming the intended API hostname, frontend origin(s), required credential mode, and LAN/Internet exposure policy: + +1. **Proxy-only API:** bind Docker `3001` to loopback only (or remove the host publication), then explicitly proxy the required HTTPS API hostname through the approved reverse proxy. Review the dirty Compose change in an isolated worktree before any lifecycle action. +2. **Firewall-restricted direct API:** retain the published port only if necessary, and approve explicit UFW/router rules limiting 3001 to the named trusted proxy/LAN sources. Verify from an authorized external and LAN vantage point after the approved change. +3. **Explicit CORS allowlist:** configure only the confirmed HTTPS frontend origin(s), preserve `Vary: Origin`, and test allowed and denied preflights plus an unauthenticated request through the real proxy. Do not use a wildcard origin with credentialed requests. + +Any option requires separate approval for configuration review/change, rebuild/recreate/restart, deployment, or firewall/proxy modification. The Mac-mini backend CORS WIP remains untouched and uncommitted. diff --git a/projects/factory/emi-production-security-audit-2026-08-18.md b/projects/factory/emi-production-security-audit-2026-08-18.md new file mode 100644 index 0000000..b788de6 --- /dev/null +++ b/projects/factory/emi-production-security-audit-2026-08-18.md @@ -0,0 +1,54 @@ +# EMI production security audit — 2026-08-18 + +## Scope, safety boundary, and verdict + +Read-only audit of `aeroreyna@192.168.68.119`, `~/EMI-Backend`, and the running `emi-backend-app-1` container. No services, containers, checkout files, Git state, firewall/proxy configuration, credentials, environment values, compose diff content, or Mac-mini WIP were changed. No secret values were read or recorded. + +**Verdict: conditionally acceptable to remain running, but not production-security clean.** The live application source files that control the observed server behavior match the `.119` checkout's `HEAD` commit `92320c9c8993308172282d6ac4437e19c752650a` (`Add monthly MongoDB backup script`, 2026-05-29). The server should not be recreated or redeployed without human review because its local compose file is modified relative to that commit. + +The main `.119` server may remain on its current deployed commit while the separate Mac-mini backend WIP remains uncommitted. This audit made no change to that WIP. The conclusion is limited to keeping the existing `.119` container running; it is not approval to rebuild, recreate, deploy, merge, or commit anything. + +## Evidence and runtime identity + +- Checkout `HEAD`: `92320c9c8993308172282d6ac4437e19c752650a`. +- Checkout status: one tracked modified file and one untracked file. The tracked `docker-compose.yml` differs from `HEAD`; its diff content was neither read nor displayed. +- Running container: `emi-backend-app-1`; image `emi-backend-app`; image ID `sha256:0f245f652484e3704723cb93717b9ca867c38e74d8eb05eab7b123fa638eef44`. +- Image/container creation: 2026-05-29; current container start: 2026-08-17. Restart policy: `always`. +- The container bind-mounts `/home/aeroreyna/EMI-Backend` read-write at `/app`. It therefore executes checkout-mounted application files rather than an isolated immutable copy of those files. +- SHA-256 comparisons (without exposing file content) show the running `/app/index.js`, `/app/package.json`, `/app/config/corsOptions.js`, and `/app/config/cookiesOptions.js` each match the corresponding `HEAD` file. The checkout versions of those same files and `Dockerfile` also match `HEAD`. + +## Verified-good controls + +- The root request on `127.0.0.1:3001` returned `401 Unauthorized`, rather than an unauthenticated success response. No `Location` redirect header was observed. +- Preflight requests returned `204 No Content`, with `Vary: Origin, Access-Control-Request-Headers`; ordinary requests returned `Vary: Origin`. This prevents a shared cache from treating all origin variants as identical. +- Both tested origins (`https://emmint.com` and an intentionally invalid external origin) received no `Access-Control-Allow-Origin` header. In a browser, neither tested origin is granted cross-origin read access by that response. +- The server returned `Access-Control-Allow-Credentials: true`, so the observed CORS behavior is configured for credentialed requests only when an origin is explicitly permitted. +- The committed cookie-options source contains an `HttpOnly` control marker and that file is byte-identical in the running container. This establishes that the committed runtime file includes that control, not that every authentication flow actually emits a correctly flagged cookie. + +## Risks and findings + +1. **Public API port exposure — high-priority review.** Docker publishes `3001/tcp` on `0.0.0.0:3001` and `[::]:3001`, not loopback only. The container is on a non-internal Docker bridge (`emi-backend_default`, `internal=false`). Network/firewall enforcement outside Docker was not changed or assumed. If the intended posture is proxy-only API access, this is broader exposure than intended. + +2. **Mutable production code path — high-priority operational risk.** The production container bind-mounts the checkout read-write at `/app`, and the container root filesystem is not read-only. A checkout edit can affect the running process or subsequent restarts outside an immutable-image release boundary. + +3. **Dirty compose checkout — release-integrity blocker.** The only tracked modification is represented by the dirty `docker-compose.yml` check; its contents were deliberately not inspected. Current process-critical application files match `HEAD`, but a future recreate/restart through Compose may use uncommitted configuration. Do not treat a recreate as reproducing committed production source until reviewed in an isolated worktree. + +4. **CORS intent is not fully proven.** Both tested origins lacked `Access-Control-Allow-Origin`, including `https://emmint.com`. This is safe against those specific browser origins, but it may also mean the intended production frontend origin was not tested, is unavailable under that exact hostname, or is misconfigured. The audit cannot claim that the intended frontend works, nor that every unwanted origin is rejected. + +5. **Cookie flags are not runtime-verified.** No non-mutating endpoint in this audit emitted a `Set-Cookie` header, so `Secure`, `SameSite`, domain/path scope, and actual issuance behavior remain unverified. No authentication request was made. + +## Unknowns + +- Which exact public frontend origins are intended and whether each should be allowed with credentials. +- The effective firewall, upstream reverse-proxy, TLS termination, and Internet/LAN reachability policy for published port 3001. +- Whether the untracked file or modified compose file affects a future Compose lifecycle action; neither content was read. +- The running Node process's precise listener address inside the container, health endpoint, authentication-cookie issuance path, and behavior through the public proxy/TLS route. +- Whether image dependencies in `/app/node_modules` correspond to the committed lockfile; the named volume was not inspected. + +## Required human approval before remediation + +Any remediation requires explicit owner approval before: reviewing the dirty compose diff; creating an isolated worktree; modifying Docker/Compose, CORS, cookies, listener binding, reverse proxy, firewall, or image build; rebuilding/recreating/restarting the container; committing/merging; or deploying. The Mac-mini backend WIP must remain uncommitted and untouched unless separately approved. + +## Next recommended task + +Approved read-only follow-up: identify the intended EMI public frontend origin(s) and probe only their localhost-proxied, non-authenticated `GET`/`OPTIONS` responses for CORS headers; then separately inventory the reverse-proxy and firewall exposure without changing either. diff --git a/projects/factory/emi-production-vs-latest-code-2026-08-18.md b/projects/factory/emi-production-vs-latest-code-2026-08-18.md new file mode 100644 index 0000000..95f65f7 --- /dev/null +++ b/projects/factory/emi-production-vs-latest-code-2026-08-18.md @@ -0,0 +1,29 @@ +# EMI production vs latest code — 2026-08-18 + +Read-only comparison. No fetch/pull, checkout, container/service change, or dirty-diff content inspection was performed. + +## Committed-code relationship + +- Mac mini `~/Projects/EMI/EMI-Backend`: `codex/bible-verse-notes` at `c257fd1ec762e009fb0764571561010f306ee3ce` (`Add local MarianMT translation service`); upstream: none. Remote: `gitea` (`https://git.reynafamily.com/adolforeyna/EMI-Backend.git`), fetch refspec `+refs/heads/*:refs/remotes/gitea/*`. +- Production checkout `aeroreyna@192.168.68.119:~/EMI-Backend`: `master` at `92320c9c8993308172282d6ac4437e19c752650a` (`Add monthly MongoDB backup script`); upstream: `origin/master`. Remote: `origin` (`http://192.168.68.119:3000/adolforeyna/EMI-Backend.git`), fetch refspec `+refs/heads/*:refs/remotes/origin/*`. +- Both commits are one-child descendants of common ancestor `65a4178e2b1491117ddb9e1b8a5ed7b53c4b5be3`; neither checkout contains the other tip object. Therefore committed code has diverged, not a simple ahead/behind relationship. +- Gitea read-only advertised `master` is `65a4178e…`; it does not advertise the Mac-mini tip or production tip. Thus neither current checkout tip is established as a remotely published latest branch tip. +- From the common ancestor, Mac-mini committed changes are: modified `.gitignore`, `README.md`, `docker-compose.yml`, `utils/chatTranslation.js`; added `translation-service/.dockerignore`, `translation-service/Dockerfile`, `translation-service/requirements.txt`, `translation-service/server.py`. +- From the common ancestor, production committed changes are: modified `.gitignore`; added `scripts/monthlyMongoBackup.sh`. The two committed `.gitignore` blobs differ. Production `docker-compose.yml` is unchanged in its committed tree; Mac-mini’s committed tree modifies it. + +## Local WIP + +- Mac mini has no staged changes; it has three unstaged tracked changes (`config/cookiesOptions.js`, `config/corsOptions.js`, `index.js`) and one untracked `.DS_Store`. This WIP is uncommitted and is separate from `c257fd1…`. +- Production checkout also has uncommitted state: unstaged `docker-compose.yml` and untracked `update.sh`; contents were intentionally not inspected. This is not part of production’s committed-code comparison. + +## Runtime/container relationship + +- The running container is `emi-backend-app-1` (`e9355e13bf21…`), image `emi-backend-app` / `sha256:0f245f65…`, running since `2026-08-17T21:20:23Z`; command is `node index.js` with workdir `/app`. +- `/app` is a read-write bind mount of `/home/aeroreyna/EMI-Backend`; `/app/node_modules` is separately volume-mounted. Therefore the running application files are served directly from the production checkout rather than from an immutable image copy. +- Runtime and checkout SHA-256 values match for `index.js`, `config/cookiesOptions.js`, and `config/corsOptions.js` (including the currently uncommitted checkout state). Git is not installed in the container, so an in-container Git revision could not be read; the bind mount plus matching file hashes establish the relevant application-file match. + +## Verdict + +Production is **diverged** from the latest available Mac-mini committed code, with additional uncommitted WIP on both checkouts; it is not safe to call production simply behind or ahead. + +Minimal next decision required before any server update: select one explicit approved release commit/branch and decide how the production checkout’s dirty `docker-compose.yml` must be preserved or reconciled. diff --git a/projects/factory/emi-read-only-discovery-2026-08-18.md b/projects/factory/emi-read-only-discovery-2026-08-18.md new file mode 100644 index 0000000..f8d2dba --- /dev/null +++ b/projects/factory/emi-read-only-discovery-2026-08-18.md @@ -0,0 +1,66 @@ +# EMI read-only discovery — 2026-08-18 + +Scope: manifest/git/runtime/Paseo inspection only. No dependency installation, source/configuration changes, service actions, or secrets access. + +## Verified mapping + +| Host | Checkout | Git head / branch | Registered Paseo workspace | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/EMI/expoApp` | `4e26cc3` / `master` | `wks_f013c2c89410419b` — `EMI · Expo App — Main Checkout` | +| Mac mini `.102` | `~/Projects/EMI/website` | `d329c0c` / `master` | `wks_baf03fce83b6b3b7` — `EMI · Website — Main Checkout` | +| Mac mini `.102` | `~/Projects/EMI/EMI-Backend` | `c257fd1` / `codex/bible-verse-notes` | `wks_740a1fe0494b5cc9` — `EMI · Backend — Mac mini Checkout` | +| EMI server `.119` | `~/EMI-Backend` (`/home/aeroreyna/EMI-Backend`) | `92320c9` / `master` | `wks_fc39b6c9d2ebc9e0` — `EMI · Backend Production Checkout` | + +All four are registered as local/main-checkout workspaces, not isolated worktrees. No `paseo.json` exists in any inspected root. The Mac mini daemon is running/reachable on loopback; providers reported available: Codex, OpenCode, pi, hermes. On `.119`, the daemon is running/reachable on `127.0.0.1:6767`; available providers are Codex, OpenCode, and pi (Claude/copilot unavailable). + +## Declared candidate commands (not executed) + +Confidence means that the command is explicitly declared by the manifest, not that it is safe, hermetic, or passing. + +| Repository | Candidate command | Purpose | Confidence | +|---|---|---|---| +| expoApp | `npm start` | Expo dev server | High | +| expoApp | `npm run web` | Expo web dev server | High | +| expoApp | `npm run ios` / `npm run android` | native development/run | High | +| expoApp | No manifest lint, typecheck, test, or production-build script | — | High absence finding | +| website | `npm run lint` | Vue CLI lint; command sets `NODE_OPTIONS=--openssl-legacy-provider` | High | +| website | `npm run build` | Vue CLI production build; same Node option | High | +| website | `npm run serve` | development server on port 8080 | High | +| website | No manifest test or typecheck script | — | High absence finding | +| Mac mini backend | `npm run dev` | `node --watch index.js` development process | High | +| Mac mini backend | `npm start` | `node index.js` | High | +| Mac mini backend | `npm test` | declared `npx mocha test/auth.test.js` | High command / medium execution confidence: environment and test data were not examined | +| Mac mini backend | No manifest lint, typecheck, or build script | — | High absence finding | +| `.119` backend | same `npm run dev`, `npm start`, and `npm test` declarations | source checkout commands only | High declaration / low direct-host execution confidence: non-login SSH PATH has no `node`/`npm`; runtime is containerized | +| `.119` runtime | `curl --head --max-time 5 http://127.0.0.1:3001/` | reachability probe, not authenticated API health | High; executed: HTTP 302 to `/login` | + +Each Node repository has `package-lock.json`; no yarn/pnpm lockfile was found. No `tsconfig.json` or `jsconfig.json` was found in any root, so no typecheck command is evidenced. The backend has `docker-compose.yml` and `test/auth.test.js`; the local app and website have no compose manifest. + +## Local-change protection + +- expoApp is dirty: modified `Views/PrayerTimer.js`, `components/PrayerTracker.js`, `i18nMessages.js`, `package.json`; untracked `ios/`. Remotes: `gitea`, `origin`. +- website is clean. Remote: `origin`. +- Mac mini backend is dirty: modified `config/cookiesOptions.js`, `config/corsOptions.js`, `index.js`; untracked `.DS_Store`. Remote: `gitea` only (no `origin`). +- `.119` backend is dirty: modified `docker-compose.yml`; untracked `update.sh`. Remote: `origin`. + +Do not create a worktree from, reset, stash, clean, or dispatch an editing agent into any dirty checkout until the owner identifies and protects those changes. The existing workspaces point directly at those checkouts. + +## `.119` runtime, service, and deployment facts + +- Docker is the active system service. Container `emi-backend-app-1` (image `emi-backend-app`) has been up about five hours and publishes `0.0.0.0:3001` and `[::]:3001` to container port 3001. +- Host port 3001 is listening publicly on IPv4 and IPv6. The root probe returned `302 Found`, Express-powered, redirecting to `/login`; this confirms listener/reverse-route behavior only, not application health, authentication, dependencies, or database connectivity. +- `node index.js` is running in the backend container. The checkout's compose file exists, but it was not read because it is locally modified and may contain deployment-sensitive configuration. +- A user-managed Paseo daemon and supervisor are running. The CLI works after placing the discovered NVM Node path on `PATH`; its initial non-login SSH invocation failed only because that PATH was absent. +- Unknown: authoritative deployment/update procedure; relation of `/home/aeroreyna/EMI-Backend` to the running container (bind mount versus image build); compose project/working directory; image provenance; rollback procedure; authenticated/API health endpoint; database dependency health; expected Node version; and whether untracked `update.sh` is the intended release mechanism. + +## Human review required before `paseo.json` or worktree/agent setup + +1. Confirm ownership/disposition of every listed local modification and untracked path, especially `.119` `docker-compose.yml` and `update.sh`. +2. Select one repository and bounded goal; main-checkout workspaces are not writable task targets. Approve an isolated worktree location and branch policy for that repository. +3. Review the repository-specific command contract rather than inventing missing lint/typecheck/test/build steps; decide whether existing commands may access external services or mutate data. +4. For `.119`, verify the deployment source-to-container relationship, named deployment executor, health endpoint, rollback procedure, and a separately approved production boundary before any agent/worktree or `paseo.json` work. +5. Approve provider choice and required permissions; no provider/workspace/agent state was changed in this lane. + +## Proposed next bounded task + +Human-approved, read-only backend release-path audit on `.119`: inspect only non-secret Docker/compose metadata and container mount/image metadata to establish checkout-to-container provenance, deployment command, health endpoint, and rollback evidence; write one update to this record and make no runtime changes. diff --git a/projects/factory/emi.md b/projects/factory/emi.md new file mode 100644 index 0000000..ba93fcd --- /dev/null +++ b/projects/factory/emi.md @@ -0,0 +1,68 @@ +--- +project_key: emi +status: active +factory_maturity: discovery +updated: 2026-08-17 +--- + +# EMI — Project Definition + +## Purpose + +EMI is the cross-server ministry application and web/services collection: mobile/client work, website work, backend/API operations, ministry integrations, and the related human approval/deployment process. + +## Execution map + +| Host | Repository / service | Paseo-project role | Status | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/EMI/expoApp` | `EMI · Expo App` | Registered local workspace `wks_f013c2c89410419b`; local changes exist | +| Mac mini `.102` | `~/Projects/EMI/website` | `EMI · Website` | Registered local workspace `wks_baf03fce83b6b3b7` | +| Mac mini `.102` | `~/Projects/EMI/EMI-Backend` | `EMI · Backend (Mac mini)` for local/reproduction work | Registered local workspace `wks_740a1fe0494b5cc9`; local changes exist and no `origin` is configured | +| EMI server `.119` | `~/EMI-Backend`, production API documented at `:3001` | `EMI · Backend Production` | Registered local workspace `wks_fc39b6c9d2ebc9e0`; daemon healthy on loopback; OpenCode detected; runtime, health command, deployment procedure, and Ollama Cloud provider setup remain to be discovered | + +The parent `~/Projects/EMI` directory is a collection, not a source-changing Paseo project. + +## External infrastructure boundary + +- `api.emmint.com` is routed by the **FamReynaServer `.110` Caddy** instance to the EMI backend service on `.119`. +- This EMI project may document the dependency and verify its observed behavior, but it does **not** own or modify the FamReynaServer Caddy route, Authentik, DNS, firewall, or shared reverse-proxy policy. +- Any Caddy/proxy change belongs to the shared FamReyna infrastructure owner and requires a separately scoped, explicitly approved infrastructure task. EMI release work must treat that route as an external dependency and coordinate through evidence, not mutate it. + +## Personas + +- Planner: read-only repo/service discovery and task plan. +- Expo / web / backend implementer: isolated worktree only. +- Verifier: repo-specific scripts and integration evidence. +- Reviewer: independent diff, security, API/migration, and scope review. +- Release steward: prepare rollout/rollback evidence. +- Deployment executor: one named, explicitly approved production action only. +- Health monitor: read-only, change-only reporting. + +## Safety boundaries + +- Preserve existing local modifications before creating worktrees. +- No merge, deploy, restart, credential change, or public publishing without explicit human approval. +- Do not dispatch production backend tasks until `.119` checkout path, service manager, health command, and rollback procedure are verified. +- A cross-server change has separate Mac mini and `.119` workspaces; it is never one shared workspace. + +## Active factory coordination + +- **Feature / incident:** production reconciliation and release-branch convergence — **completed through push, then deployed manually by explicit approval**. +- **Coordinator session:** Factory profile session `20260818_102513_1346d3`, titled `emi: production reconciliation` and pinned for continuity. It exposed a follow-through gap: its interactive process exited after worker dispatch. The factory policy now requires interactive/resumable dispatch-and-follow-through, explicit agent IDs, and terminal-state monitoring. +- **Reconciled repository revision:** production `master` and `origin/master` are `4c1afea` (`chore(prod): preserve production compose settings`), following rebased translation commit `c257fd1` and backup-script commit `44988df`. +- **Deployment:** app and translation Compose services were rebuilt/recreated from `4c1afea`; a pre-update rollback image is retained as `emi-backend-app:pre-4c1afea-20260818T190206Z`. No Caddy, Authentik, DNS, or firewall changes were made. +- **Next active feature:** `emi: local translation production readiness`. **Execution owner: factory profile only.** The default/personal Hermes conversation may relay your instructions and report evidence, but it must not perform direct repository, server, Docker, Git, or Paseo actions for this project. Treat the current MarianMT service as WIP until its internal network path, health/readiness, functional translations, model-cache behavior, failure handling, and resource limits are verified. + +## Factory readiness next actions + +1. Read-only discovery of each Mac mini repository's scripts, tests, build commands, and current worktree state. +2. Read-only discovery on `.119` of the deployed checkout, runtime, service manager, health endpoint, and release procedure. +3. Register repo-specific local Paseo workspaces only after discovery review. +4. Add repo-specific `paseo.json` contracts; do not copy a generic template. + +## Related records + +- `emi-read-only-discovery-2026-08-18.md` — completed first factory experiment; commands and release-path unknowns +- `../paseo_software_factory_working_model_2026-08-17.md` +- `../latin_america_emi_collaboration_2026.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/factory/family-voice.md b/projects/factory/family-voice.md new file mode 100644 index 0000000..fd39bea --- /dev/null +++ b/projects/factory/family-voice.md @@ -0,0 +1,45 @@ +--- +project_key: family-voice +status: active +factory_maturity: discovery +updated: 2026-08-17 +--- + +# Family Voice — Project Definition + +## Purpose + +Family Voice covers the privacy-first local voice-context and speaker-identification prototype, with future device integration only after offline evaluation and explicit consent decisions. + +## Execution map + +| Host / target | Repository / service | Paseo-project role | Status | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/voice-speaker-id` | `Family Voice · Speaker ID` | Registered local workspace `wks_42151868896725e9` on `main`; offline CLI-only prototype | +| ESP32 / iPhone devices | audio input sources | Project assets, not Paseo hosts | No always-listening deployment is approved | + +## Personas + +- Privacy planner: evaluates scope, consent, retention, and data boundaries. +- ML experimenter: isolated code work without raw-audio export. +- Evaluation verifier: runs reproducible offline scoring/evaluation only. +- Privacy/security reviewer: checks data handling, authorization claims, and accidental cloud transmission. +- Device integration planner: design-only until explicit device approval. + +## Safety boundaries + +- Cached clips are never treated as approved enrollment data by filename alone. +- Do not upload raw audio, commit recordings/embeddings, create a listener, modify firmware, or enable always-listening capture without explicit approval. +- Speaker recognition must never be the sole authority for high-impact actions. + +## Factory readiness next actions + +1. Confirm repository checks and ignored-data boundaries. +2. Register the local repository workspace. +3. Define an evaluation-only Paseo contract. +4. Run no automated collection/deployment schedule until consent, retention, and calibration decisions are documented. + +## Related records + +- `../family_voice_context_and_speaker_id_2026.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/factory/kids-hermes-voice-system-design.mmd b/projects/factory/kids-hermes-voice-system-design.mmd new file mode 100644 index 0000000..0f609d5 --- /dev/null +++ b/projects/factory/kids-hermes-voice-system-design.mmd @@ -0,0 +1,34 @@ +flowchart LR + classDef confirmed fill:#123d2d,stroke:#34d399,color:#e2e8f0,stroke-width:2px; + classDef inferred fill:#46351a,stroke:#fbbf24,color:#fef3c7,stroke-width:2px,stroke-dasharray: 6 4; + classDef unknown fill:#1e293b,stroke:#94a3b8,color:#e2e8f0,stroke-width:2px,stroke-dasharray: 2 4; + classDef blocked fill:#3f1d2b,stroke:#fb7185,color:#ffe4e6,stroke-width:2px; + + subgraph Device[Candidate Tactility board] + PV[PipecatVoice external ELF
16 kHz PCM + protocol-v1]:::confirmed + RB[ReynaBot external ELF
separate legacy endpoint]:::inferred + CFG[Persisted config.json
may override PipecatVoice default]:::unknown + end + + subgraph Mac[Mac mini — current voice hosts] + AD[LAN voice adapter
protocol-v1 WebSocket · port 8644]:::confirmed + HG[Default Hermes gateway
listening · port 8642]:::confirmed + PC[Pipecat SmallWebRTC bot
listening · port 7860]:::confirmed + TS[Pipecat turn/STT/TTS experiments
repo: pipecat-voice-gateway]:::inferred + end + + subgraph Pi[AeroPi5 — Kids Hermes runtime] + KG[hermes-gateway-kids.service
kids profile · active]:::confirmed + KP[Voice route / listener / profile binding
not observed in discovery]:::unknown + end + + PV -->|CONFIRMED: current source default
protocol-v1 WS| AD + CFG -.->|UNKNOWN: runtime override
must reconcile| PV + RB -.->|INFERRED: direct legacy WS
endpoint differs from PipecatVoice| HG + AD -.->|INFERRED: may call voice processing
contract not yet traced live| TS + TS -.->|INFERRED: Hermes API use in source| HG + PC -.->|NOT PRODUCT PATH: WebRTC route
external ELF is a documented NO-GO| PV + KG -.->|UNKNOWN: no confirmed voice transport
binding to current client/adapter| AD + KG -.->|UNKNOWN: policy/runtime relationship| HG + + NOTE[Status key:
solid green = confirmed now
dashed amber = inferred from source/history
dotted gray = unknown; needs evidence
rose = blocked/no-go]:::unknown diff --git a/projects/factory/kids-hermes-voice-system-design.pdf b/projects/factory/kids-hermes-voice-system-design.pdf new file mode 100644 index 0000000..80465bf Binary files /dev/null and b/projects/factory/kids-hermes-voice-system-design.pdf differ diff --git a/projects/factory/kids-hermes-voice-system-design.svg b/projects/factory/kids-hermes-voice-system-design.svg new file mode 100644 index 0000000..d3e138e --- /dev/null +++ b/projects/factory/kids-hermes-voice-system-design.svg @@ -0,0 +1,51 @@ + + Kids Hermes Voice — verified system design + System design overview of the candidate Tactility board, Mac mini voice adapter, Pipecat path, default Hermes gateway, and AeroPi5 kids runtime. Connections are marked confirmed, inferred, or unknown. + + + + + + + + + KIDS HERMES VOICE — SYSTEM DESIGNRead-only baseline · connections show current evidence, not authorization to change or deploy + + + CANDIDATE TACTILITY BOARD + MAC MINI — CURRENT VOICE HOSTS + AEROPI5 — KIDS RUNTIME + + + CONFIRMED · protocol-v1 WS + INFERRED · legacy direct WS + UNKNOWN · config override + INFERRED · processing link + INFERRED · Hermes API + NO-GO: SmallWebRTC in current external ELF + UNKNOWN policy/transport binding + UNKNOWN + + + PipecatVoice appTactility external ELF16 kHz PCM + protocol-v1 state machineCurrent source target: Mac mini voice adapter + ReynaBot appSeparate legacy voice endpointEndpoint differs from PipecatVoiceLive use / target identity: unverified + Persisted config.jsonCan override non-secret endpointNot yet read from candidate board + + + LAN voice adapterprotocol-v1 WebSocket · LAN-only bindPath: /api/esp32/voice/wsConfirmed listening; HTTP probe requested WS upgrade + Pipecat voice processingSTT / turn service / TTS experimentsIntegration contract to adapter not live-traced + Pipecat SmallWebRTC botService is listeningAvailable path; not a supported current Tactility ELF route + DefaultHermesgatewaylistening + + + Kids Hermes runtimehermes-gateway-kids.serviceactive · kids profilePolicy/runtime owner + Voice-route bindingNo current listener observedConnection to adapter/client unknown + + + + EVIDENCE KEYConfirmed now: process/listener, active service, or current source endpointInferred: source/history exists; end-to-end linkage not provenUnknown: requires evidence + Sources: current Tactility app source/README; Mac mini listener and process inspection; AeroPi5 systemd inspection; PipecatVoice postmortem; factory record. + Current restore gate: reconcile the candidate board’s persisted PipecatVoice config against the confirmed Mac mini adapter endpoint. No source, service, or device changes were made. + \ No newline at end of file diff --git a/projects/factory/kids-hermes-voice.md b/projects/factory/kids-hermes-voice.md new file mode 100644 index 0000000..9daa05c --- /dev/null +++ b/projects/factory/kids-hermes-voice.md @@ -0,0 +1,105 @@ +--- +project_key: kids-hermes-voice +status: active +factory_maturity: discovery +updated: 2026-08-18 +--- + +# Kids Hermes Voice — Project Definition + +## Purpose + +Kids Hermes Voice is the child-safe, local voice experience spanning the Tactility ESP32 client, the voice-gateway application, and the Hermes kids/voice runtime. It is distinct from `family-voice`, which remains the evaluation-only speaker-identification and privacy research project. Speaker identification may later supply non-authoritative context to this project only after an explicit consent decision. + +## Execution map + +| Host / target | Repository / service | Paseo-project role | Current evidence | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/electronics/tactility/tactility_apps` — `Apps/PipecatVoice` / related `ReynaBot` paths | `Kids Hermes Voice · Tactility client` | Repository is present on `main`, ahead of `origin/main` by 1 commit, with existing modified/untracked voice-related work; preserve it until inventoried. Existing Tactility Apps workspace: `wks_c488f281bcb459c7` (registration must be rechecked before dispatch). | +| Mac mini `.102` | `~/Projects/pipecat-voice-gateway` | `Kids Hermes Voice · Gateway` | Repository is present on `main`, with existing modified/untracked gateway work; no reset, commit, or deployment is authorized. Workspace registration still needs discovery. | +| AeroPi5 `.126` | Hermes kids/voice runtime and legacy voice-host role | `Kids Hermes Voice · Runtime` | Host was reachable on 2026-08-18. Exact checkout, active service ownership, and current configuration are unverified; read-only discovery only. | +| Tactility ESP32 fleet | First target board must be named per task | Deployment target, not a Paseo host | No install, flash, or runtime change is authorized by this record. | + +## Architecture boundary + +```text +Tactility voice client <-> voice-gateway protocol <-> Hermes kids/voice runtime + device UX transport child-safe response policy +``` + +- The client owns capture, playback, device UI, and protocol compatibility. +- The gateway owns the versioned voice transport, capability negotiation, turn telemetry, and compatibility fallbacks. +- The Hermes runtime owns the child-safe profile, permitted tools, and local response routing. +- `family-voice` owns offline speaker-ID evaluation and privacy review; it is not an authentication mechanism. + +## Personas + +- Integration planner: maps protocol, repository boundaries, and acceptance criteria; read-only. +- Tactility client implementer: isolated worktree only. +- Gateway/runtime implementer: isolated worktree only; never edits both repositories in one shared checkout. +- Build/protocol verifier: reports exact commands and outcomes without source fixes. +- Child-safety/privacy reviewer: checks profile/tool boundary, retention, and no-cloud/raw-audio claims. +- Device QA/deployment executor: acts only for a named device after explicit approval, rollback plan, and compatible SDK/firmware verification. + +## Safety boundaries + +- Do not expose administrator/system tools to child-facing sessions. +- Do not upload, commit, or place raw audio, embeddings, credentials, or pairing material in project records. +- No always-listening capture, enrollment, firmware flash, device install, daemon restart, gateway deployment, profile/permission change, or service reconfiguration without explicit human approval. +- Existing dirty worktrees are evidence to inventory, not permission to reset, commit, merge, or overwrite. +- Every source-changing lane uses one isolated worktree and an explicitly `auto-review` Paseo coding session; planners/reviewers remain read-only. + +## First coordination task — baseline contract and inventory + +**Goal:** establish an implementation-ready, evidence-backed baseline without changing source or devices. + +**Incident context:** this voice path reportedly worked previously but has not been restored for an extended period. Treat the current effort as a restoration investigation: establish the last known working boundaries and concrete present blockers before proposing a change. + +**Acceptance criteria:** +1. Identify the intended first device/board and its current firmware/SDK compatibility. +2. Inventory existing uncommitted client and gateway work by file and behavioral intent; classify it as preserve, superseded, or candidate for the first worktree. +3. Confirm the live runtime host, checkout/service owner, and the current kids/voice entry route on AeroPi5. +4. Produce a versioned client↔gateway protocol contract covering capability negotiation, PCM-first streamed output, state/error events, interruption behavior, and the full-WAV/base64 fallback. +5. Name the first source-changing milestone and its repository owner; no coding until the human approves that scope. + +**Allowed now:** read-only repository, workspace, host, and device discovery; protocol planning; build-command discovery. + +**Required evidence:** exact git/workspace status; repository `AGENTS.md`; runtime/service ownership; device identity plus firmware/SDK version; proposed contract location and verification commands. + +**Forbidden effects:** source edits, commits, resets, installs, flashes, starts/stops/restarts, profile/permission changes, external sends, credentials, and raw-audio collection/export. + +**Approval gate:** explicit human approval is required before dispatching an implementation agent, changing source, or interacting with a device/runtime. + +## Baseline findings — 2026-08-18 + +- The canonical device architecture is **protocol-v1 LAN WebSocket**, not Pipecat SmallWebRTC inside a Tactility external ELF. The latter is a documented no-go for the current SDK/firmware boundary. +- The Mac mini currently has a live LAN adapter at `192.168.68.102:8644`, serving `/api/esp32/voice/ws`; a non-mutating HTTP probe correctly received `400` requesting a WebSocket upgrade. The default Hermes gateway separately listens on `*:8642`. +- Current Tactility `PipecatVoice` source and README agree on the `.102:8644` adapter endpoint, but prior restoration evidence refers to a different endpoint. The first gate is therefore endpoint plus persisted-device-config reconciliation, not a transport redesign. +- AeroPi5 has an active `hermes-gateway-kids.service` running the `kids` profile from `~/.hermes/profiles/kids`. It has no Paseo CLI/workspace registration, and no `:8642` listener was observed in this discovery; it is a runtime-policy dependency, not the current LAN adapter host. +- Board `.129` is reachable and its dashboard API returned HTTP `200`; board `.112` responds to ICMP but its dashboard port `80` was unavailable. `.129` is the evidence-backed candidate for the first restoration validation, pending the human naming it as the approved target. +- The local client protocol test passed (`voice_protocol tests passed`) and both involved working trees passed `git diff --check`. This is static evidence only; it does not prove a board WebSocket session, upstream PCM, speaker playback, reconnect, or STT/Hermes/TTS. +- Existing gateway/client modifications must be inventoried and retained. A credential-bearing source artifact was encountered during read-only inspection; it must be remediated in an explicitly approved, secret-safe source-change lane and must never be copied into records, logs, or chat. + +## Canonical project layout + +```text +Kids Hermes Voice (cross-project record) +├── Tactility client: tactility_apps/Apps/PipecatVoice +│ └── device capture/playback, protocol-v1 state machine, persisted non-secret endpoint +├── LAN adapter: voice-assistant/hermes-esp32-voice-gateway +│ └── 192.168.68.102:8644 protocol boundary, LAN framing/limits, deterministic audio fixtures +├── Voice processing: pipecat-voice-gateway +│ └── STT/TTS/turn-service experimentation; never silently substitutes for the adapter contract +└── Kids runtime: AeroPi5 ~/.hermes profile `kids` + └── child-safe policy and allowed-tool boundary; distinct from transport ownership +``` + +The next read-only deliverable is an endpoint/persisted-config reconciliation report for the approved board. Only after that evidence exists may a separate, approved worktree lane define the smallest restoration edit. + +## Related records + +- `family-voice.md` +- `tactility.md` +- `../tactility_voice_gateway_elato_transition_2026.md` +- `../voice_dev_infrastructure_2026.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/factory/remarkable-hermes.md b/projects/factory/remarkable-hermes.md new file mode 100644 index 0000000..e3fee48 --- /dev/null +++ b/projects/factory/remarkable-hermes.md @@ -0,0 +1,46 @@ +--- +project_key: remarkable-hermes +status: active +factory_maturity: discovery +updated: 2026-08-17 +--- + +# reMarkable Hermes Communication — Project Definition + +## Purpose + +reMarkable Hermes is the multi-host Paper Pro communication and watcher effort: a tablet-side Hermes surface, safe handwriting/document interaction, and the supporting logger/bridge infrastructure. + +## Execution map + +| Host / target | Repository / service | Paseo-project role | Status | +|---|---|---|---| +| iMac `.124` | Paper Pro SDK / cross-compile work documented under `~/remarkable-dev` | `reMarkable · App` | Exact repository path and daemon recovery still require discovery | +| AeroPi5 `.126` | watcher/logger/UDP listener history | `reMarkable · Watcher` | Inventory reports watcher not working; ownership and files need discovery | +| Paper Pro `.132` | sidecar and custom app target | Target environment, not a Paseo host | Explicit device safety controls apply | + +## Personas + +- App planner and Qt implementer: scoped app/worktree development. +- Watcher incident triager: read-only service inspection first. +- Watcher implementer and service verifier: only after root cause and task scope. +- Device deployment verifier: checks the specific approved artifact on-device. +- Deployment executor: performs an explicitly approved device-side action with rollback plan. + +## Safety boundaries + +- Do not restart xochitl, alter device system files, overwrite documents, or deploy a tablet app without explicit approval and rollback path. +- Treat the Paper Pro as a target environment, never as a generic remote coding host. +- Preserve handwritten source material and avoid bulk document manipulation. + +## Factory readiness next actions + +1. Discover the active iMac repository/workspace, build command, and Paseo daemon recovery path. +2. Discover current Pi watcher ownership, files, logs, and failure mode without modifications. +3. Register host-local Paseo workspaces only after that evidence is reviewed. +4. Pilot a read-only watcher triage or local app build—never a tablet deployment. + +## Related records + +- `../remarkable_hermes_communication_app.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/factory/reyna-cli.md b/projects/factory/reyna-cli.md new file mode 100644 index 0000000..f981f8d --- /dev/null +++ b/projects/factory/reyna-cli.md @@ -0,0 +1,44 @@ +--- +project_key: reyna-cli +status: active +factory_maturity: discovery +updated: 2026-08-17 +--- + +# Reyna CLI — Project Definition + +## Purpose + +Reyna CLI is the private Mac mini operations platform for privacy-sensitive Apple integrations, family operations, and controlled local/LAN service capabilities. + +## Execution map + +| Host | Repository / service | Paseo-project role | Status | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/platform/reyna-cli` (symlinked/known as `~/Projects/reyna-cli`), Gitea `adolforeyna/reyna-cli` | `Reyna CLI · Main` | Registered local workspace `wks_5d711dc3ed4df37e`; local ignored/untracked device artifacts exist | + +## Personas + +- Planner: maps requested capability to privacy and system boundaries. +- Privacy-boundary implementer: isolated worktree code changes only. +- Test verifier: runs exact CLI/unit/integration checks. +- Security reviewer: checks command injection, secret handling, permissions, network exposure, and unintended Apple-data access. +- Release steward and deployment executor: separate, approval-gated roles. + +## Safety boundaries + +- TCC permissions, Apple data, credentials, LaunchAgents, gateway configuration, and LAN listener exposure are separate approval boundaries. +- Never use a source-changing agent in the shared `main` checkout. +- Do not include data from Calendar, Contacts, Notes, Reminders, or authentication stores in agent prompts or brain records. + +## Factory readiness next actions + +1. Discover the repository's actual test/build/lint commands. +2. Register a local main-checkout Paseo workspace after checking the current local state. +3. Establish `paseo.json` with only audited, non-publishing commands. +4. Pilot a low-risk worktree change before scheduling quality automation. + +## Related records + +- `../reyna_cli_browser_control.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/factory/tactility.md b/projects/factory/tactility.md new file mode 100644 index 0000000..8dd8528 --- /dev/null +++ b/projects/factory/tactility.md @@ -0,0 +1,47 @@ +--- +project_key: tactility +status: active +factory_maturity: discovery +updated: 2026-08-17 +--- + +# Tactility — Project Definition + +## Purpose + +Tactility is the ESP32 platform and runtime-app collection for family displays, audio, media, device interfaces, and approved hardware experiments. + +## Execution map + +| Host / target | Repository / service | Paseo-project role | Status | +|---|---|---|---| +| Mac mini `.102` | `~/Projects/electronics/tactility/tactility`, Gitea origin | `Tactility · Platform` | Registered local workspace `wks_f6a631c20313f1a8` on `main` | +| Mac mini `.102` | `~/Projects/electronics/tactility/tactility_apps`, Gitea origin | `Tactility · Apps` | Registered local workspace `wks_c488f281bcb459c7` on `main`; detailed app build/deploy guidance is in repo `AGENTS.md` | +| ESP32 fleet | Boards such as `.112`, `.111`, `.123` | Target environments, not Paseo hosts | Device health/version must be verified per task | + +## Personas + +- Firmware/app planner: read-only, identifies board/SDK/app compatibility. +- Platform or app implementer: isolated worktree only. +- Build verifier: confirms build plus undefined-symbol check. +- Hardware reviewer: assesses firmware/device risk and deployment prerequisites. +- Device QA: captures approved behavioral/screenshot evidence after deployment. +- Deployment executor: performs a specific approved device install/run only. + +## Safety boundaries + +- Build success alone is not completion. +- Hardware deployment requires explicit approval, named board, compatible SDK/firmware, rollback/recovery plan, and behavior verification. +- Do not blindly flash firmware, mass-install apps, or assume a remembered IP/device identity. + +## Factory readiness next actions + +1. Discover project-specific build/test commands for platform and apps. +2. Register two separate Mac mini Paseo workspaces. +3. Create repository-specific Paseo script contracts. +4. Pilot an app-only worktree change with build + symbol verification, without device installation. + +## Related records + +- `../tactility_voice_gateway_elato_transition_2026.md` +- `../../areas/operations/services_inventory.md` diff --git a/projects/grace-belling-the-cat/book-background.md b/projects/grace-belling-the-cat/book-background.md new file mode 100644 index 0000000..8fc6457 --- /dev/null +++ b/projects/grace-belling-the-cat/book-background.md @@ -0,0 +1,51 @@ +--- +Date: 2026-08-25 +Book: Belling the Cat +Audience: Grace +Status: source background established from supplied title page and ending sequence (pages 26–32); opening pages are still needed for a complete page-by-page production package +Tags: [kids-book, tactility, Grace, source-background] +--- + +# Belling the Cat — Source Background + +## Source status + +- User supplied the title page and all **seven photographed story pages** for this fable. The printed numbers 26–32 are this fable's sequence within a larger book, not missing opening material. +- The direct review shows a complete narrative: meeting, discussion, young mouse's idea, silent-cat problem, bell proposal, practical objection, and ending. +- This note is a private production reference for an original child-friendly adaptation, not a reproduction of the physical book. + +## Main characters + +- **Young mouse:** A small gray mouse in an orange sweater and green trousers. He enthusiastically proposes tying a bell around the Cat's neck. +- **Older mouse:** A wise gray mouse with round glasses and a blue coat. He calmly asks the important practical question. +- **Mouse community:** A group of varied brown and gray mice in simple colorful clothes, gathered in a wooden attic/workroom. +- **The Cat:** The feared enemy, mostly represented through the Cat's portrait in the provided ending sequence. Keep her imposing but not frightening for a young child. + +## Setting and visual language + +- A cozy wooden attic/workroom: big spool of red thread, small green stools, blue cabinet, pink curtains, lamp, fabric scraps, and a framed cat picture. +- Soft colored-pencil/watercolor illustrations with warm muted colors, thin dark outlines, and a blue border around each image. +- The mood travels from worry, to excited hope, to thoughtful silence—without needing intense danger. + +## Story arc confirmed by the supplied pages + +1. The mice gather to discuss their enemy, the Cat. +2. A young mouse explains that the silent Cat keeps them in danger. +3. He proposes tying a bell around the Cat's neck so the mice can hear her coming and run away. +4. The other mice applaud the clever-sounding idea. +5. An older mouse asks who will actually put the bell on the Cat. +6. The mice fall silent, and no one speaks of belling the Cat again. + +## Adaptation guardrails + +- Generate original illustrations from the photos as visual and plot references; never use phone-photo crops as finished device art. +- Preserve continuity: cozy mouse workroom, young mouse in orange/green, older mouse with glasses/blue coat, red thread spool and small bell as recurring props. +- Device art target: 320×240 landscape, no printed text inside art. +- Narration should be warm, clear, and age-appropriate for Grace; pause slightly before the older mouse's question and make the ending thoughtful, not shameful. +- Central lesson: a clever idea is not enough unless someone can safely and realistically carry it out. + +## Remaining source material needed for complete production + +- Pages 1–25, if this should become a page-by-page device book +- Author/publisher information, if source credit is wanted +- Confirmation whether the final book should be English only or also Spanish diff --git a/projects/grace-belling-the-cat/captions_extracted.json b/projects/grace-belling-the-cat/captions_extracted.json new file mode 100644 index 0000000..cb2f589 --- /dev/null +++ b/projects/grace-belling-the-cat/captions_extracted.json @@ -0,0 +1,14 @@ +{ + "book_id": "grace-belling-the-cat", + "title": "Belling the Cat", + "source_status": "complete supplied story sequence: seven photographed story pages plus title page; printed pages 26–32 belong to this fable's full sequence", + "captions": [ + {"sequence": 1, "printed_page": 26, "text": "Long ago, the mice had a meeting to talk about their enemy—the Cat. What could they do about her?"}, + {"sequence": 2, "printed_page": 27, "text": "Some said this, and some said that. But at last a young mouse got up and said he had an idea."}, + {"sequence": 3, "printed_page": 28, "text": "The Cat moves without making a sound. That is why we are always in danger."}, + {"sequence": 4, "printed_page": 29, "text": "If we could hear the Cat coming, it would be easy for us to run away."}, + {"sequence": 5, "printed_page": 31, "text": "My idea is this: we will tie a bell around the Cat's neck. Then we will hear her coming and can run away."}, + {"sequence": 6, "printed_page": 30, "text": "The mice clapped and cheered. Then one old mouse asked which one would put the bell on the Cat. The mice looked at one another in silence."}, + {"sequence": 7, "printed_page": 32, "text": "And no one ever spoke again of belling the Cat."} + ] +} diff --git a/projects/grace-city-mouse-country-mouse/book-background.md b/projects/grace-city-mouse-country-mouse/book-background.md new file mode 100644 index 0000000..512fafe --- /dev/null +++ b/projects/grace-city-mouse-country-mouse/book-background.md @@ -0,0 +1,49 @@ +--- +Date: 2026-08-25 +Book: City Mouse-Country Mouse +Audience: Grace +Status: source background established from supplied photos; pages 1–7 still needed for a complete adaptation +Tags: [kids-book, tactility, Grace, source-background] +--- + +# City Mouse-Country Mouse — Source Background + +## Source status + +- User supplied the title page and all **11 story beats** across six photographed story pages/spreads; several photos contain two facing pages. +- The source sequence is now fully established, including the City Mouse's trip to visit the Country Mouse, the Country Mouse's welcome, the simple meal, the city visit, the dogs, and the peaceful ending. +- This note is a private production reference for an original, child-friendly device adaptation. It is not a reproduction of the physical book. + +## What the visible pages establish + +### Main characters + +- **City Mouse:** Comfortable in the city, fond of fancy food and city life; wears a blue coat in the source illustrations. +- **Country Mouse:** A visiting cousin from the country, modest and peace-seeking; wears a purple dress in the source illustrations. + +### Settings + +- **Country home:** A warm hollow inside a large tree in a birch forest. The Country Mouse has a simple domestic space. +- **City home:** An indoor house with a dining room, table, chairs, curtains, and plenty of leftovers from a fine dinner. + +### Story arc confirmed by the supplied pages + +1. City Mouse travels to visit Country Mouse. +2. Country Mouse happily welcomes the cousin and shares a simple meal. +3. City Mouse rejects the country meal and invites Country Mouse to the city. +4. They travel to the city, arrive late at night, and find a feast of leftovers. +5. They begin to eat, hear growling, and then two large dogs burst in; both mice flee. +6. Country Mouse chooses to return home, deciding that a peaceful simple meal is better than fine food that cannot be enjoyed safely. + +## Adaptation guardrails + +- Use the source photos only as visual and plot reference; generate new, original illustrations rather than use phone-photo crops. +- Preserve visual continuity from the source: small brown mice, City Mouse in blue, Country Mouse in purple, warm watercolor/ink storybook feeling. +- Device art target: 320×240 landscape, no printed text inside artwork. +- Narration should be warm, clear, and age-appropriate for Grace; retain the central lesson without copying the source wording. + +## Missing source material before production + +- Pages 1–7 / the beginning of the visit +- Any cover, author, or publisher information if the final package should credit the source +- Confirmation whether the book should be English only or also have a Spanish version diff --git a/projects/grace-city-mouse-country-mouse/captions_extracted.json b/projects/grace-city-mouse-country-mouse/captions_extracted.json new file mode 100644 index 0000000..2fb4de2 --- /dev/null +++ b/projects/grace-city-mouse-country-mouse/captions_extracted.json @@ -0,0 +1,18 @@ +{ + "book_id": "grace-city-mouse-country-mouse", + "title": "City Mouse-Country Mouse", + "source_status": "complete story sequence recovered by reviewing all seven supplied photos; several photos contained two facing pages", + "captions": [ + {"sequence": 1, "text": "Once upon a time a City Mouse went to visit his cousin in the country."}, + {"sequence": 2, "text": "The Country Mouse was happy to see his cousin."}, + {"sequence": 3, "text": "The Country Mouse did not have fine food, but he was happy to share what he had with the City Mouse."}, + {"sequence": 4, "text": "The City Mouse turned up his nose at the country food. And he invited his cousin to have dinner with him in the city."}, + {"sequence": 5, "text": "No sooner said than done. The two mice set off for the city."}, + {"sequence": 6, "text": "At last they came to the home of the City Mouse. It was very late at night."}, + {"sequence": 7, "text": "The City Mouse led the Country Mouse right into the dining room. The leftovers of a fine feast were still on the table."}, + {"sequence": 8, "text": "Soon the two mice were eating jam and cake and all that was nice. Suddenly, they heard growling and barking."}, + {"sequence": 9, "text": "All at once the door flew open and in came two huge dogs. Both mice ran for their lives."}, + {"sequence": 10, "text": "The Country Mouse made up his mind to go back to the country that very night."}, + {"sequence": 11, "text": "What good is fine food if you can't enjoy it! It is much better to eat plain food in peace."} + ] +} diff --git a/projects/grace-lion-and-mouse/book-background.md b/projects/grace-lion-and-mouse/book-background.md new file mode 100644 index 0000000..2809351 --- /dev/null +++ b/projects/grace-lion-and-mouse/book-background.md @@ -0,0 +1,51 @@ +--- +Date: 2026-08-25 +Book: The Lion and the Mouse +Audience: Grace +Status: source background established from supplied cover and story photos; page sequence is partial +Tags: [kids-book, tactility, Grace, source-background] +--- + +# The Lion and the Mouse — Source Background + +## Source status + +- User supplied the cover plus seven photographed story pages, including the opening, release, rescue, and closing moral. +- The photographed set is sufficient to establish the story arc and visual language. Any unseen intermediate pages should be captured before a page-for-page production package is built. +- This is a private production reference for an original, child-friendly adaptation—not a reproduction of the physical book. + +## Main characters + +- **Lion:** A large golden-brown lion with a dark brown mane, big paws, and an expressive, friendly face. He is powerful but learns humility and gratitude. +- **Mouse:** A tiny gray mouse in a bright red jacket. The Mouse is brave, kind, and resourceful despite being small. +- **Hunters:** Off-page antagonists represented by the rope net/trap; no need to make them visually prominent in an adaptation. + +## Setting and visual language + +- Woodland forest with pale purple-gray tree trunks, broad green leaves, stones, and small pink flowers. +- Classic colored-pencil/soft-watercolor storybook look, thin dark outlines, orange-gold picture frames, and a gentle rather than frightening mood. +- The lion's danger should feel urgent but not scary for a young child. The Mouse's rescue is the emotional high point. + +## Story arc confirmed by the supplied pages + +1. While a Lion sleeps in the forest, a small Mouse runs across his back. +2. The Lion wakes, catches the Mouse, and considers swallowing him. +3. The Mouse begs to be released and promises to help someday. +4. The Lion laughs, but kindly lets the Mouse go. +5. Hunters later trap the Lion with ropes and tie him to a tree. +6. The Mouse finds him, gnaws through the ropes, and frees him. +7. The Mouse reminds the Lion that little friends can do great things. + +## Adaptation guardrails + +- Generate original illustrations from the photos as references; never use phone-photo crops as the finished device art. +- Preserve continuity: Lion = warm golden brown with dark mane; Mouse = tiny gray mouse in red jacket; quiet leafy forest with pink flowers. +- Device art target: 320×240 landscape, no printed text inside artwork. +- Narration should be warm and clear for Grace, with a gentle suspense beat at the trapped-lion scene and a joyful resolution. +- Central lesson: size does not measure kindness, courage, or a person's ability to help. + +## Remaining source material needed for a complete page-by-page package + +- Any unphotographed intermediate pages and their printed captions +- Author/publisher information, if the final package should include a source credit +- Language choice: English only or an additional Spanish version diff --git a/projects/grace-lion-and-mouse/captions_extracted.json b/projects/grace-lion-and-mouse/captions_extracted.json new file mode 100644 index 0000000..024cde4 --- /dev/null +++ b/projects/grace-lion-and-mouse/captions_extracted.json @@ -0,0 +1,14 @@ +{ + "book_id": "grace-lion-and-mouse", + "title": "The Lion and the Mouse", + "source_status": "partial sequence: cover plus seven photographed story pages, including printed page 24", + "captions": [ + {"sequence": 1, "text": "Once while a Lion was sleeping, a little Mouse ran up and down his back."}, + {"sequence": 2, "text": "Soon the Lion woke up. He put his big paw on the Mouse. He opened his big jaws to swallow him."}, + {"sequence": 3, "text": "The Mouse begged the Lion to let him go. He promised to help the Lion some day."}, + {"sequence": 4, "text": "The Lion laughed at the thought of a little Mouse helping a great Lion. But he lifted his paw and he let the Mouse go."}, + {"sequence": 5, "text": "Not long after the Mouse saw the Lion tied to a tree. The Lion had been trapped by some hunters."}, + {"sequence": 6, "text": "The little Mouse went up to the great Lion and he gnawed right through the ropes. Soon the Lion was free."}, + {"page": 24, "text": "\"Wasn't I right?\" said the little Mouse to the Lion. \"Little friends can do great things.\""} + ] +} diff --git a/projects/grace_poppy_storybook_image_voice_app.md b/projects/grace_poppy_storybook_image_voice_app.md index 9f11a4a..a7aed2c 100644 --- a/projects/grace_poppy_storybook_image_voice_app.md +++ b/projects/grace_poppy_storybook_image_voice_app.md @@ -6,6 +6,12 @@ Tags: [project, family, kids, storybook, esp32, image-generation, voice, codex, # Grace/Poppy Storybook Image + Voice App +## TODO — Recognizable Kids' Voices + +- [ ] Prepare voice profiles/recordings that Grace and Elías recognize for voice integration on their Tactility/ESP32 devices. +- [ ] Evaluate the YouTube reference audio/transcription at `/Users/adolforeyna/output/youtube-transcriptions/Zimo86TbX8k/` as a possible source/reference for voice preparation. +- [ ] Decide the voice-engine and delivery path for device playback, then make a small test clip per child before bulk integration. + ## Summary This project documents the workflow used to turn a family storybook package for Princess Grace and Poppy into a synchronized image-and-audio experience on an ESP32/Tactility color screen device. The current working prototype is coordinated by Hermes: Hermes displays each generated image on the device, plays the matching narration audio, waits for playback, then advances to the next page. diff --git a/projects/kid_dash b/projects/kid_dash new file mode 160000 index 0000000..30f9148 --- /dev/null +++ b/projects/kid_dash @@ -0,0 +1 @@ +Subproject commit 30f9148adb1f90b1821e86727e75e9fadbc9bd9b diff --git a/projects/kindle-office-dashboard_2026.md b/projects/kindle-office-dashboard_2026.md new file mode 100644 index 0000000..2a2afd1 --- /dev/null +++ b/projects/kindle-office-dashboard_2026.md @@ -0,0 +1,59 @@ +--- +title: Kindle Office Dashboard +status: active +created: 2026-08-12 +updated: 2026-08-12 +tags: [kindle, office, dashboard, e-ink, ssh] +--- + +# Kindle Office Dashboard + +## Purpose + +The jailbroken Kindle is assigned as a permanent office e-ink display. Hermes can send text, grayscale PNG images, dashboards, and experimental typing/animation frames to it over SSH on the trusted home LAN. + +## Verified device + +- Kindle firmware: 5.18.1 +- Architecture: ARMv7 / armv7l +- LAN address used: 192.168.68.125 +- Access: root SSH currently works interactively; credentials are intentionally not recorded here. +- Existing Kindle software: KOReader, KUAL, KTerm, BusyBox, `eips`. +- Root filesystem: read-only; work is kept under `/mnt/us`. + +## Verified display methods + +- `eips -c` clears the screen. +- `eips X Y "text"` draws text; the observed coordinate behavior is pixel-like, with increasing Y moving downward. +- Small direct text updates use partial refreshes and produce useful terminal-like ghosting/typing animation. +- `eips -g IMAGE -f -W` displays a PNG with a full refresh. +- A 600x800 grayscale PNG is the reliable native portrait image format. +- Landscape content requires rendering an 800x600 page, rotating it into a 600x800 PNG, displaying it, and physically turning the Kindle sideways. + +## Reusable local scripts + +Located in `/Users/adolforeyna/bin/`: + +- `kindle-show` — send text using the local renderer. +- `kindle-send-image` — send a PNG and display it with `eips`. +- `kindle-render.py` — render text to a grayscale PNG. +- `kindle-ui` / `kindle-ui.py` — render/send a bordered dashboard UI. +- `kindle-keep-awake` — toggle or inspect the Kindle screensaver prevention state. +- `kindle-type-landscape` — render a rotated landscape text page. +- `kindle-png-type-landscape` — experimental cumulative rotated-PNG animation; not yet end-to-end verified because the Kindle's unusual empty-password SSH prompt interferes with binary streaming. + +## SSH key status + +The Mac public key was written to `/mnt/us/ssh/authorized_keys`, but passwordless authentication was not accepted. The SSH daemon's configured authorized-key path still needs discovery. Do not change the read-only root filesystem or record the Kindle password. Until fixed, use the existing interactive SSH path for sending. + +## Current direction + +Keep the Kindle permanently in the office and use it as a quiet family/household task dashboard. Prefer simple scripts over a new MCP server. Use grayscale, high contrast, modest refresh frequency, and full refreshes between substantially different dashboard pages to manage ghosting. Direct partial updates remain best for typing-style experiments. + +## Progress log — 2026-08-12 + +- Confirmed portrait text updates and vertical coordinates. +- Confirmed direct partial-refresh typing animation. +- Confirmed rotated landscape bitmap rendering. +- Confirmed image transfer/display through `kindle-send-image` with a live `eips -g` full refresh. +- Attempted individual cumulative PNG animation; blocked only by SSH authentication/stream ordering, not PNG rendering. diff --git a/projects/latin_america_emi_collaboration_2026.md b/projects/latin_america_emi_collaboration_2026.md index 93e0917..7d00ac7 100644 --- a/projects/latin_america_emi_collaboration_2026.md +++ b/projects/latin_america_emi_collaboration_2026.md @@ -70,6 +70,7 @@ Tags: #emi #latinamerica #leadership #kingdom #collaboration - [ ] Create WhatsApp logistics group. - [ ] Define shared reporting template for cross-region updates. - [ ] Buy flights to Chiapas (Alicia to coordinate). +- [ ] Talk to Rene about the trip to Chiapas. (Added 2026-08-14; reminder scheduled for Monday, August 17 at 9:00 AM.) - [ ] Prepare for Chiapas meeting in prayer and logistics planning. ## Flight Price Monitoring diff --git a/projects/live_captions_esp32_2026-08-23.md b/projects/live_captions_esp32_2026-08-23.md new file mode 100644 index 0000000..16f9b14 --- /dev/null +++ b/projects/live_captions_esp32_2026-08-23.md @@ -0,0 +1,49 @@ +--- +date: 2026-08-23 +type: project +status: active +tags: [tactility, esp32, captions, voice, mac-mini, stt] +related: [[Voice & Dev Infrastructure]] +--- + +# Live Captions — ESP32 / Mac mini + +## Purpose + +A dedicated Tactility ESP32-S3 app streams device microphone PCM to the Mac mini for local Apple Speech captioning. It shows captions on the device and records text locally on its SD card; raw device audio is not retained by the app. + +## Active architecture + +```text +Tactility `.113` (kidsos_591c) + -> authenticated WebSocket PCM, 16 kHz / mono / s16le + -> Mac mini `.102` caption service on :8645 + -> MacMiniMCP Apple Speech live transcription + -> draft + silence-finalized review events + -> ESP32 native caption display +``` + +The dedicated caption route does not invoke the old generic gateway screen-MCP drawing path, preventing caption UI conflicts. + +## Current state + +- Live Captions app deployed to `.113`; auto-connect and automatic reconnect are enabled. +- UI: device toolbar/close control, latest 50 caption words, and a bottom Connecting / Connected / Failed—Reconnecting status line. +- Mac service accepts multiple sessions and bounds retained audio at 30 seconds / 960 KB per device. +- The old fixed 64-second stream cap was removed. +- Silence VAD turns speech pauses into `review` events without closing the microphone stream. +- Finalized reviews are logged on the Mac mini to `~/.hermes/logs/esp32-captions/YYYY-MM-DD.jsonl` with UTC timestamp and friendly device name. +- The board is currently connected and the service has confirmed incoming 1,024-byte PCM frames. + +## Verified test evidence + +- Four caption-service tests are passing, including rolling-buffer and multi-device coverage. +- Synthesized long audio streams produced live draft/review events and final transcripts. +- A synthesized speech message plus valid silence produced a `review` before an explicit stop command. + +## Next + +- Observe a natural on-device speech pause and confirm the review visibly replaces the draft. +- Tune capture gain/filtering after that UI verification. +- Install the caption service LaunchAgent from an approved external shell for durability. +- Commit the app/service once physical acceptance is confirmed. diff --git a/projects/macos-notification-watcher-poc.md b/projects/macos-notification-watcher-poc.md new file mode 100644 index 0000000..1990afe --- /dev/null +++ b/projects/macos-notification-watcher-poc.md @@ -0,0 +1,34 @@ +# macOS Notification Watcher POC + +## Status + +POC implementation is built but not yet authorized to read Notification Center. Resume after granting Full Disk Access. + +## Artifacts + +- Project: `~/notification-poc` +- Binary: `~/notification-poc/notification-poc` +- Source: `~/notification-poc/Sources/NotificationPOC/main.swift` +- Log: `~/notification-poc/notifications.jsonl` +- State: `~/notification-poc/state.json` +- LaunchAgent: `~/Library/LaunchAgents/com.adolforeyna.notification-poc.plist` +- README: `~/notification-poc/README.md` + +## Behavior + +The watcher monitors `~/Library/Group Containers/group.com.apple.usernoted/db2/db`, primarily via `db-wal` filesystem events with a two-second fallback scan. It copies `db`, `db-wal`, and `db-shm` to a temporary directory before read-only SQLite access, baselines existing records on first successful run, and logs only later notifications as JSONL. It does not modify, dismiss, forward, or send notifications. + +## Verification so far + +- Swift release build passed. +- `plutil -lint` passed for the LaunchAgent. +- Runtime reached the expected TCC boundary: macOS returned permission denied for the database. +- Persistent LaunchAgent bootstrap was not run because Hermes blocks registering persistent jobs from inside the gateway process. + +## Resume steps + +1. In System Settings → Privacy & Security → Full Disk Access, add/enable `~/notification-poc/notification-poc`. +2. Run the binary manually and verify it prints `Watching` and creates/updates `notifications.jsonl`. +3. Generate a harmless test notification and confirm one JSONL record. +4. Install from a separate shell with: `launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.adolforeyna.notification-poc.plist`. +5. Verify with `launchctl print gui/$(id -u)/com.adolforeyna.notification-poc` and inspect watcher stderr/stdout logs. diff --git a/projects/network_usage/README.md b/projects/network_usage/README.md new file mode 100644 index 0000000..925e460 --- /dev/null +++ b/projects/network_usage/README.md @@ -0,0 +1,50 @@ +# Pi-hole device usage reports + +This directory contains a read-only daily DNS usage collector enriched with the live TP-Link Deco client map. + +## Run manually + +```bash +python3 /Users/adolforeyna/brain/projects/network_usage/pihole_daily_report.py --date today +python3 /Users/adolforeyna/brain/projects/network_usage/pihole_daily_report.py --date yesterday +``` + +Each run writes: + +- `reports/YYYY-MM-DD.json` — machine-readable data +- `reports/YYYY-MM-DD.md` — human-readable report +- `network_usage.sqlite3` — the same report JSON/Markdown plus Deco identity history + +The report uses `America/New_York` calendar boundaries. Pi-hole is queried over the existing owner-only SSH path in SQLite read-only mode. The live Deco client list is retrieved with the existing `reyna-cli deco clients --json` integration. + +The separate storage database is `/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3`. It contains: + +- `deco_snapshots` — timestamped client-list captures +- `deco_clients` — the IP/MAC/hostname/location rows for each capture +- `daily_reports` — the completed report JSON and Markdown + +## Automation + +`/Users/adolforeyna/.hermes/scripts/network_usage_daily_report.py` is the deterministic wrapper used by the Hermes scheduled job. It processes the previous local calendar day, stores the completed report in SQLite, writes one JSON/Markdown pair per day, and then removes raw Deco snapshots older than the current day. Reports remain available in the `daily_reports` table. It does not change Pi-hole, DNS, Deco, blocklists, or router settings. + +`/Users/adolforeyna/.hermes/scripts/deco_snapshot_10m.py` runs every ten minutes and appends the live Deco client list to SQLite. This preserves enough same-day IP-to-MAC history to map Pi-hole clients that are offline when the daily report runs. + +## Grouping plan + +The report grouping layer should treat all `espressif` clients as one ESP32 group and both `Google-Home-Mini` clients as one household group. iPhone and Mac ownership remains unassigned until the LAN names are confirmed; MAC addresses remain the identity key underneath those friendly names. + +“Top visited” excludes Pi-hole blocked statuses. “Top blocked” counts FTL blocked statuses, including gravity, regex, denylist, external blocking, and CNAME blocking. A device may appear in Pi-hole but not in the live Deco list if it is currently offline, has changed its IP, or is not in the current client snapshot; those entries are labeled accordingly rather than guessed. + +## Roku/Casita assessment + +The current live map identifies `50CasitaTv` at `192.168.68.114`, connected through the `Casita` Deco. The current report shows Roku log traffic already being blocked, especially `liberty.logs.roku.com` and `scribe.logs.roku.com`. A seven-day Pi-hole query inspection also found these Roku-adjacent domains allowed from the Roku devices: + +- `display.ravm.tv` — promotional/display service candidate +- `identity.ads.roku.com` — advertising identity candidate +- `api.roku.com`, `themes-service.sr.roku.com`, and other Roku service domains — do not block as ad domains without testing + +`ads.roku.com` is already present in one installed blocklist according to `pihole -q`; it was not queried by the Casita TV during the inspection window. On September 4, 2026, the two locally managed exact deny entries `display.ravm.tv` and `identity.ads.roku.com` were added with the comment `Roku ads`. The change was verified with `pihole -q` and live DNS lookups returning `0.0.0.0` for both domains. + +DNS blocking can reduce home-screen/promotional ad retrieval but cannot guarantee that all inappropriate content disappears, and it may leave empty tiles or affect Roku UI behavior. No other Roku service domains were changed. + +A safe next experiment is a dedicated Pi-hole client group containing only `50CasitaTv`, with a reviewed Roku candidate list and rollback available. That should be staged and tested only after explicit approval. diff --git a/projects/network_usage/network_usage.sqlite3 b/projects/network_usage/network_usage.sqlite3 new file mode 100644 index 0000000..52040f3 Binary files /dev/null and b/projects/network_usage/network_usage.sqlite3 differ diff --git a/projects/network_usage/pihole_daily_report.py b/projects/network_usage/pihole_daily_report.py new file mode 100644 index 0000000..7263fcb --- /dev/null +++ b/projects/network_usage/pihole_daily_report.py @@ -0,0 +1,451 @@ +#!/usr/bin/env python3 +"""Create Pi-hole daily reports and retain a short Deco identity history. + +Pi-hole is queried remotely over the user's existing SSH access. Deco snapshots +and completed reports are stored locally in a separate SQLite database. No +Pi-hole credentials or router session material is read or written here. +""" +from __future__ import annotations + +import argparse +import json +import os +import shlex +import sqlite3 +import subprocess +import sys +import time as time_module +from collections import defaultdict +from datetime import date, datetime, time, timedelta, timezone +from pathlib import Path +from typing import Dict, List, Optional +from zoneinfo import ZoneInfo + +TZ = ZoneInfo("America/New_York") +DEFAULT_SERVER = "adolforeyna@192.168.68.110" +DEFAULT_PIHOLE_DB = "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db" +DEFAULT_STORAGE_DB = str(Path.home() / "brain/projects/network_usage/network_usage.sqlite3") +BLOCKED_STATUSES = (1, 4, 5, 6, 7, 8, 9, 10, 11, 18) +STATUS_NAMES = { + 1: "gravity", + 4: "regex", + 5: "denylist", + 6: "external-blocked-ip", + 7: "external-blocked-null", + 8: "external-blocked-nxra", + 9: "gravity-cname", + 10: "regex-cname", + 11: "denylist-cname", + 18: "external-blocked-ede15", +} + + +def parse_day(value: str, today: date) -> date: + if value == "today": + return today + if value == "yesterday": + return today - timedelta(days=1) + return date.fromisoformat(value) + + +def run_json(command: List[str], timeout: int) -> dict: + proc = subprocess.run(command, capture_output=True, text=True, timeout=timeout) + if proc.returncode: + detail = proc.stderr.strip() or proc.stdout.strip() or "exit %s" % proc.returncode + raise RuntimeError("command failed: %s" % detail[:500]) + try: + return json.loads(proc.stdout) + except json.JSONDecodeError as exc: + raise RuntimeError("command returned invalid JSON: %s" % exc) from exc + + +def get_deco_clients(cli: str) -> List[dict]: + payload = run_json([cli, "deco", "clients", "--json"], timeout=120) + if not payload.get("ok"): + raise RuntimeError("Deco client lookup failed: %s" % payload) + return payload.get("result", {}).get("clients", []) + + +def connect_storage(path: str) -> sqlite3.Connection: + storage = Path(path).expanduser() + storage.parent.mkdir(parents=True, exist_ok=True) + conn = sqlite3.connect(str(storage), timeout=10) + conn.execute("PRAGMA foreign_keys=ON") + conn.execute("PRAGMA busy_timeout=10000") + conn.execute("PRAGMA journal_mode=WAL") + conn.executescript( + """ + CREATE TABLE IF NOT EXISTS deco_snapshots ( + snapshot_id INTEGER PRIMARY KEY AUTOINCREMENT, + captured_at TEXT NOT NULL, + captured_epoch INTEGER NOT NULL, + client_count INTEGER NOT NULL + ); + CREATE INDEX IF NOT EXISTS idx_deco_snapshots_epoch + ON deco_snapshots(captured_epoch); + CREATE TABLE IF NOT EXISTS deco_clients ( + snapshot_id INTEGER NOT NULL REFERENCES deco_snapshots(snapshot_id) ON DELETE CASCADE, + ip TEXT NOT NULL, + mac TEXT, + hostname TEXT, + connection TEXT, + interface TEXT, + active INTEGER, + linked_deco_mac TEXT, + linked_deco_name TEXT, + linked_deco_role TEXT, + raw_json TEXT NOT NULL, + PRIMARY KEY(snapshot_id, ip, mac) + ); + CREATE INDEX IF NOT EXISTS idx_deco_clients_ip + ON deco_clients(ip); + CREATE TABLE IF NOT EXISTS daily_reports ( + report_day TEXT PRIMARY KEY, + generated_at TEXT NOT NULL, + report_json TEXT NOT NULL, + report_markdown TEXT NOT NULL + ); + """ + ) + conn.commit() + return conn + + +def save_deco_snapshot(storage_path: str, clients: List[dict], captured: Optional[datetime] = None) -> dict: + captured = captured or datetime.now(timezone.utc) + captured_epoch = int(captured.timestamp()) + captured_text = captured.isoformat() + conn = connect_storage(storage_path) + try: + with conn: + cur = conn.execute( + "INSERT INTO deco_snapshots(captured_at,captured_epoch,client_count) VALUES(?,?,?)", + (captured_text, captured_epoch, len(clients)), + ) + snapshot_id = cur.lastrowid + rows = [] + for client in clients: + ip = str(client.get("ip") or "").strip() + if not ip: + continue + rows.append( + ( + snapshot_id, + ip, + client.get("mac"), + client.get("hostname"), + client.get("connection"), + client.get("interface"), + 1 if client.get("active") else 0, + client.get("linkedDecoMac"), + client.get("linkedDecoName"), + client.get("linkedDecoRole"), + json.dumps(client, separators=(",", ":"), sort_keys=True), + ) + ) + conn.executemany( + """INSERT OR REPLACE INTO deco_clients + (snapshot_id,ip,mac,hostname,connection,interface,active, + linked_deco_mac,linked_deco_name,linked_deco_role,raw_json) + VALUES(?,?,?,?,?,?,?,?,?,?,?)""", + rows, + ) + return {"snapshot_id": snapshot_id, "captured_at": captured_text, "clients": len(rows)} + finally: + conn.close() + + +def load_snapshot_map(storage_path: str, start_epoch: int, end_epoch: int) -> dict: + """Return latest identity per IP observed during the report day. + + If an IP was associated with multiple MACs during the day, the latest + record is selected but the mapping is explicitly marked ambiguous. + """ + conn = connect_storage(storage_path) + try: + rows = conn.execute( + """SELECT s.captured_at,c.ip,c.mac,c.hostname,c.connection,c.interface, + c.active,c.linked_deco_mac,c.linked_deco_name,c.linked_deco_role + FROM deco_clients c JOIN deco_snapshots s ON s.snapshot_id=c.snapshot_id + WHERE s.captured_epoch>=? AND s.captured_epoch 1: + deco["mapping_status"] = "multiple_identities_seen" + deco["mapping_identity_count"] = len(identities[ip]) + return by_ip + + +def prune_old_snapshots(storage_path: str, before_epoch: int) -> int: + conn = connect_storage(storage_path) + try: + with conn: + cur = conn.execute("DELETE FROM deco_snapshots WHERE captured_epoch None: + conn = connect_storage(storage_path) + try: + with conn: + conn.execute( + """INSERT INTO daily_reports(report_day,generated_at,report_json,report_markdown) + VALUES(?,?,?,?) + ON CONFLICT(report_day) DO UPDATE SET + generated_at=excluded.generated_at, + report_json=excluded.report_json, + report_markdown=excluded.report_markdown""", + ( + report["day"], + report["generated_at"], + json.dumps(report, indent=2), + markdown_text, + ), + ) + finally: + conn.close() + + +def get_pihole_data(server: str, db_path: str, start_epoch: int, end_epoch: int) -> dict: + blocked = ",".join(str(x) for x in BLOCKED_STATUSES) + remote = f'''import sqlite3,json +p={db_path!r}; start={start_epoch}; end={end_epoch}; blocked=({blocked},) +c=sqlite3.connect("file:"+p+"?mode=ro",uri=True) +c.row_factory=sqlite3.Row +base="""from query_storage q +join domain_by_id d on d.id=q.domain +join client_by_id cb on cb.id=q.client +where q.timestamp>=? and q.timestamp=? and q.timestamp List[dict]: + by_ip = dict(historical_map) + for client in deco_clients: + ip = str(client.get("ip") or "") + if ip and ip not in by_ip: + copy = dict(client) + copy["mapping_status"] = "live_deco_lookup" + by_ip[ip] = copy + domains_by_ip = defaultdict(list) + for row in pihole["domains"]: + domains_by_ip[row["ip"]].append(row) + result = [] + for row in pihole["clients"]: + ip = row["ip"] + deco = by_ip.get(ip) + visited = sorted( + (x for x in domains_by_ip[ip] if not x["blocked"]), + key=lambda x: (x["allowed"], x["queries"], x["domain"]), + reverse=True, + ) + blocked = sorted( + (x for x in domains_by_ip[ip] if x["blocked"]), + key=lambda x: (x["blocked"], x["queries"], x["domain"]), + reverse=True, + ) + result.append({ + "ip": ip, + "pihole_name": row["pihole_name"], + "queries": row["queries"], + "blocked_queries": row["blocked"], + "block_rate_percent": round(100 * row["blocked"] / row["queries"], 2) if row["queries"] else 0, + "unique_domains": row["unique_domains"], + "last_query_epoch": row["last_query"], + "deco": deco or { + "hostname": None, + "mac": None, + "linkedDecoName": None, + "active": False, + "mapping_status": "not_in_snapshot_or_live_deco_list", + }, + "top_visited": visited[:10], + "top_blocked": blocked[:10], + }) + return result + + +def markdown(report: dict) -> str: + lines = [ + f"# Pi-hole DNS usage — {report['day']}", + "", + f"Window: {report['window']['start_local']} to {report['window']['end_local']} ({report['timezone']})", + f"Generated: {report['generated_at']}", + f"Pi-hole: {report['pihole']['server']} (FTL database, read-only)", + f"Deco mapping source: {report['deco_mapping_source']}", + "", + "Blocked status codes counted: " + ", ".join(f"{k}={v}" for k, v in STATUS_NAMES.items()), + "", + "## Device summary", + "", + "| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked |", + "|---|---|---|---:|---:|---:|---|---|", + ] + for d in report["devices"]: + deco = d["deco"] + label = deco.get("hostname") or d["pihole_name"] or "Unknown device" + location = deco.get("linkedDecoName") or "not mapped" + visited = d["top_visited"][0]["domain"] if d["top_visited"] else "—" + blocked = d["top_blocked"][0]["domain"] if d["top_blocked"] else "—" + lines.append(f"| {label} | {d['ip']} | {location} | {d['queries']:,} | {d['blocked_queries']:,} | {d['block_rate_percent']:.2f}% | `{visited}` | `{blocked}` |") + lines += ["", "## Per-device detail", ""] + for d in report["devices"]: + deco = d["deco"] + label = deco.get("hostname") or d["pihole_name"] or "Unknown device" + location = deco.get("linkedDecoName") or "not mapped" + lines += [ + f"### {label} ({d['ip']})", + f"Location: {location}; MAC: {deco.get('mac') or 'unknown'}; mapping: {deco.get('mapping_status', 'unknown')}.", + f"Queries: {d['queries']:,}; blocked: {d['blocked_queries']:,}; block rate: {d['block_rate_percent']:.2f}%; unique domains: {d['unique_domains']:,}.", + "", + "Top visited (not blocked):", + ] + lines += [f"- {x['domain']} — {x['queries']:,}" for x in d["top_visited"]] or ["- none"] + lines.append("Top blocked:") + lines += [f"- {x['domain']} — {x['blocked']:,} blocked of {x['queries']:,}" for x in d["top_blocked"]] or ["- none"] + lines.append("") + return "\n".join(lines) + + +def main() -> int: + parser = argparse.ArgumentParser() + parser.add_argument("--date", default="today", help="today, yesterday, or YYYY-MM-DD") + parser.add_argument("--output-dir", default=str(Path.home() / "brain/projects/network_usage/reports")) + parser.add_argument("--storage-db", default=os.environ.get("NETWORK_USAGE_DB", DEFAULT_STORAGE_DB)) + parser.add_argument("--server", default=os.environ.get("PIHOLE_SSH", DEFAULT_SERVER)) + parser.add_argument("--db-path", default=os.environ.get("PIHOLE_DB_PATH", DEFAULT_PIHOLE_DB)) + parser.add_argument("--deco-cli", default=os.environ.get("REYNA_CLI", "reyna-cli")) + parser.add_argument("--snapshot-only", action="store_true") + parser.add_argument("--prune", action="store_true", help="after saving the report, remove snapshots before today") + args = parser.parse_args() + + if args.snapshot_only: + clients = get_deco_clients(args.deco_cli) + result = save_deco_snapshot(args.storage_db, clients) + print(json.dumps({"ok": True, "job": "deco_snapshot", "storage_db": args.storage_db, **result}, separators=(",", ":"))) + return 0 + + today = datetime.now(TZ).date() + day = parse_day(args.date, today) + start_dt = datetime.combine(day, time.min, tzinfo=TZ) + end_dt = start_dt + timedelta(days=1) + now = datetime.now(TZ) + start_epoch = int(start_dt.timestamp()) + end_epoch = int(end_dt.timestamp()) + data = get_pihole_data(args.server, args.db_path, start_epoch, end_epoch) + + historical_map = load_snapshot_map(args.storage_db, start_epoch, end_epoch) + live_clients = [] + if day == today or not historical_map: + live_clients = get_deco_clients(args.deco_cli) + devices = enrich(data, live_clients, historical_map) + if historical_map: + mapping_source = "historical Deco snapshots plus live fallback" + else: + mapping_source = "live Deco lookup" + report = { + "schema_version": 2, + "day": day.isoformat(), + "timezone": str(TZ), + "generated_at": now.isoformat(), + "deco_mapping_source": mapping_source, + "window": { + "start_local": start_dt.isoformat(), + "end_local": end_dt.isoformat(), + "start_epoch": start_epoch, + "end_epoch": end_epoch, + }, + "pihole": { + "server": args.server, + "database": args.db_path, + "blocked_statuses": list(BLOCKED_STATUSES), + "status_names": STATUS_NAMES, + "status_counts": data["statuses"], + }, + "storage": { + "database": args.storage_db, + "historical_snapshot_client_ips": len(historical_map), + "live_deco_client_count": len(live_clients), + }, + "deco_live_client_count": len(live_clients), + "devices": devices, + } + report_text = markdown(report) + save_daily_report(args.storage_db, report, report_text) + + output_dir = Path(args.output_dir).expanduser() + output_dir.mkdir(parents=True, exist_ok=True) + json_path = output_dir / f"{day.isoformat()}.json" + md_path = output_dir / f"{day.isoformat()}.md" + json_path.write_text(json.dumps(report, indent=2) + "\n", encoding="utf-8") + md_path.write_text(report_text + "\n", encoding="utf-8") + + pruned = 0 + if args.prune: + current_start = int(datetime.combine(today, time.min, tzinfo=TZ).timestamp()) + pruned = prune_old_snapshots(args.storage_db, current_start) + print(json.dumps({"ok": True, "day": report["day"], "devices": len(devices), "historical_snapshot_ips": len(historical_map), "live_deco_clients": len(live_clients), "pruned_snapshots": pruned, "storage_db": args.storage_db, "json": str(json_path), "markdown": str(md_path)}, separators=(",", ":"))) + return 0 + + +if __name__ == "__main__": + try: + raise SystemExit(main()) + except Exception as exc: + print(json.dumps({"ok": False, "error": str(exc)})) + raise SystemExit(1) diff --git a/projects/network_usage/reports/2026-09-03.json b/projects/network_usage/reports/2026-09-03.json new file mode 100644 index 0000000..da8ddad --- /dev/null +++ b/projects/network_usage/reports/2026-09-03.json @@ -0,0 +1,3057 @@ +{ + "schema_version": 2, + "day": "2026-09-03", + "timezone": "America/New_York", + "generated_at": "2026-09-04T12:00:54.171571-04:00", + "deco_mapping_source": "live Deco lookup", + "window": { + "start_local": "2026-09-03T00:00:00-04:00", + "end_local": "2026-09-04T00:00:00-04:00", + "start_epoch": 1788408000, + "end_epoch": 1788494400 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 9186 + }, + { + "status": 2, + "queries": 11436 + }, + { + "status": 3, + "queries": 36553 + }, + { + "status": 4, + "queries": 131 + }, + { + "status": 5, + "queries": 135 + }, + { + "status": 9, + "queries": 1716 + }, + { + "status": 12, + "queries": 24 + }, + { + "status": 14, + "queries": 1563 + }, + { + "status": 16, + "queries": 367 + }, + { + "status": 17, + "queries": 28166 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 0, + "live_deco_client_count": 25 + }, + "deco_live_client_count": 25, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 29823, + "blocked_queries": 486, + "block_rate_percent": 1.63, + "unique_domains": 413, + "last_query_epoch": 1788493715.312866, + "deco": { + "hostname": "Mac", + "mac": "06-79-91-73-6F-6A", + "ip": "192.168.68.112", + "connection": "band5", + "interface": "main", + "upSpeed": 5, + "downSpeed": 4, + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 6216, + "blocked": 0, + "allowed": 6216 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 2984, + "blocked": 0, + "allowed": 2984 + }, + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 2115, + "blocked": 0, + "allowed": 2115 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 780, + "blocked": 0, + "allowed": 780 + }, + { + "ip": "192.168.68.112", + "domain": "star.c10r.facebook.com", + "queries": 691, + "blocked": 0, + "allowed": 691 + }, + { + "ip": "192.168.68.112", + "domain": "metamate.internalmeta.com", + "queries": 648, + "blocked": 0, + "allowed": 648 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 584, + "blocked": 0, + "allowed": 584 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 560, + "blocked": 0, + "allowed": 560 + }, + { + "ip": "192.168.68.112", + "domain": "logging.internalmeta.com", + "queries": 531, + "blocked": 0, + "allowed": 531 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 478, + "blocked": 0, + "allowed": 478 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "chromereporting-pa.googleapis.com", + "queries": 342, + "blocked": 330, + "allowed": 12 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 85, + "blocked": 78, + "allowed": 7 + }, + { + "ip": "192.168.68.112", + "domain": "fbs.smoot.apple.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "beacon.flexera-prod.aws.metafb.cloud", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 13, + "blocked": 13, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "appsgrowthpromo-pa.clients6.google.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.trafficmanager.net", + "queries": 16, + "blocked": 6, + "allowed": 10 + }, + { + "ip": "192.168.68.112", + "domain": "ogads-pa.clients6.google.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 12073, + "blocked_queries": 894, + "block_rate_percent": 7.4, + "unique_domains": 729, + "last_query_epoch": 1788493777.2962399, + "deco": { + "hostname": "Mac", + "mac": "82-A1-8E-D4-03-7A", + "ip": "192.168.68.108", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 395, + "blocked": 0, + "allowed": 395 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 360, + "blocked": 0, + "allowed": 360 + }, + { + "ip": "192.168.68.108", + "domain": "chat.cdn.whatsapp.net", + "queries": 345, + "blocked": 0, + "allowed": 345 + }, + { + "ip": "192.168.68.108", + "domain": "api.telegram.org", + "queries": 311, + "blocked": 0, + "allowed": 311 + }, + { + "ip": "192.168.68.108", + "domain": "ab.chatgpt.com", + "queries": 293, + "blocked": 0, + "allowed": 293 + }, + { + "ip": "192.168.68.108", + "domain": "brain.reynafamily.com", + "queries": 291, + "blocked": 0, + "allowed": 291 + }, + { + "ip": "192.168.68.108", + "domain": "ssl.gstatic.com", + "queries": 276, + "blocked": 0, + "allowed": 276 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 274, + "blocked": 0, + "allowed": 274 + }, + { + "ip": "192.168.68.108", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 258, + "blocked": 0, + "allowed": 258 + }, + { + "ip": "192.168.68.108", + "domain": "apple.com", + "queries": 254, + "blocked": 0, + "allowed": 254 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 505, + "blocked": 499, + "allowed": 6 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 151, + "blocked": 133, + "allowed": 18 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 100, + "blocked": 100, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "fbs.smoot.apple.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 22, + "blocked": 20, + "allowed": 2 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 12, + "blocked": 8, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 12, + "blocked": 8, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "improving.duckduckgo.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 9575, + "blocked_queries": 1194, + "block_rate_percent": 12.47, + "unique_domains": 1025, + "last_query_epoch": 1788494339.4026484, + "deco": { + "hostname": "iPhone", + "mac": "C6-37-18-E7-39-39", + "ip": "192.168.68.105", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 343, + "blocked": 0, + "allowed": 343 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 318, + "blocked": 0, + "allowed": 318 + }, + { + "ip": "192.168.68.105", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 229, + "blocked": 0, + "allowed": 229 + }, + { + "ip": "192.168.68.105", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 214, + "blocked": 0, + "allowed": 214 + }, + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.105", + "domain": "chat.cdn.whatsapp.net", + "queries": 143, + "blocked": 0, + "allowed": 143 + }, + { + "ip": "192.168.68.105", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 102, + "blocked": 0, + "allowed": 102 + }, + { + "ip": "192.168.68.105", + "domain": "ts01-b.cloudsink.net", + "queries": 98, + "blocked": 0, + "allowed": 98 + }, + { + "ip": "192.168.68.105", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.105", + "domain": "ocsp2.apple.com", + "queries": 86, + "blocked": 0, + "allowed": 86 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 262, + "blocked": 260, + "allowed": 2 + }, + { + "ip": "192.168.68.105", + "domain": "app-analytics-services.com", + "queries": 132, + "blocked": 132, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "app-measurement.com", + "queries": 90, + "blocked": 90, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "stocks-analytics-events.apple.com", + "queries": 65, + "blocked": 61, + "allowed": 4 + }, + { + "ip": "192.168.68.105", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 51, + "blocked": 51, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "fbs.smoot.apple.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "sdk.iad-05.braze.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "slackb.com", + "queries": 23, + "blocked": 23, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "sdk.iad-08.braze.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "collector-pxuarm9b04.perimeterx.net", + "queries": 21, + "blocked": 21, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 6398, + "blocked_queries": 1558, + "block_rate_percent": 24.35, + "unique_domains": 62, + "last_query_epoch": 1788494375.8582895, + "deco": { + "hostname": "adolforeyna-iMac11-3", + "mac": "C8-BC-C8-BB-19-2D", + "ip": "192.168.68.124", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1969, + "blocked": 0, + "allowed": 1969 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 643, + "blocked": 0, + "allowed": 643 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 583, + "blocked": 0, + "allowed": 583 + }, + { + "ip": "192.168.68.124", + "domain": "easylist-downloads.adblockplus.org", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 126, + "blocked": 0, + "allowed": 126 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 115, + "blocked": 0, + "allowed": 115 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 110, + "blocked": 0, + "allowed": 110 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 99, + "blocked": 0, + "allowed": 99 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 848, + "blocked": 836, + "allowed": 12 + }, + { + "ip": "192.168.68.124", + "domain": "sdk.iad-01.braze.com", + "queries": 506, + "blocked": 504, + "allowed": 2 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 221, + "blocked": 218, + "allowed": 3 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 5313, + "blocked_queries": 413, + "block_rate_percent": 7.77, + "unique_domains": 306, + "last_query_epoch": 1788493977.9125102, + "deco": { + "hostname": "Mac", + "mac": "0E-A4-E4-20-5C-1C", + "ip": "192.168.68.111", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 195, + "blocked": 0, + "allowed": 195 + }, + { + "ip": "192.168.68.111", + "domain": "www.apple.com", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 189, + "blocked": 0, + "allowed": 189 + }, + { + "ip": "192.168.68.111", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 163, + "blocked": 0, + "allowed": 163 + }, + { + "ip": "192.168.68.111", + "domain": "ai.zoom.us", + "queries": 138, + "blocked": 0, + "allowed": 138 + }, + { + "ip": "192.168.68.111", + "domain": "p49-imap.mail.me.com.akadns.net", + "queries": 133, + "blocked": 0, + "allowed": 133 + }, + { + "ip": "192.168.68.111", + "domain": "111.68.168.192.in-addr.arpa", + "queries": 126, + "blocked": 0, + "allowed": 126 + }, + { + "ip": "192.168.68.111", + "domain": "us04zpns.zoom.us", + "queries": 119, + "blocked": 0, + "allowed": 119 + }, + { + "ip": "192.168.68.111", + "domain": "us04ark.zoom.us", + "queries": 117, + "blocked": 0, + "allowed": 117 + }, + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 222, + "blocked": 220, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 76, + "blocked": 72, + "allowed": 4 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 60, + "blocked": 55, + "allowed": 5 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "experiments.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ct.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 3915, + "blocked_queries": 519, + "block_rate_percent": 13.26, + "unique_domains": 844, + "last_query_epoch": 1788494341.6412494, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 82, + "blocked": 0, + "allowed": 82 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 70, + "blocked": 0, + "allowed": 70 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.106", + "domain": "youtubei.googleapis.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.106", + "domain": "redirector.googlevideo.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.106", + "domain": "yt3.googleusercontent.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.106", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.106", + "domain": "s.youtube.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 136, + "blocked": 136, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "graph.instagram.com", + "queries": 80, + "blocked": 80, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "graph-fallback.instagram.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "sdk.iad-01.braze.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ca.iadsdk.apple.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ogads-pa.clients6.google.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "csp.withgoogle.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "unagi.amazon.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "analytics.google.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 3656, + "blocked_queries": 3096, + "block_rate_percent": 84.68, + "unique_domains": 54, + "last_query_epoch": 1788494389.1606894, + "deco": { + "hostname": "50CasitaTv", + "mac": "DC-72-23-B1-13-BE", + "ip": "192.168.68.114", + "connection": "band5", + "interface": "main", + "upSpeed": 8, + "downSpeed": 5, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 155, + "blocked": 0, + "allowed": 155 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 115, + "blocked": 0, + "allowed": 115 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.114", + "domain": "cdn-0.nflximg.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.114", + "domain": "uiboot.netflix.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.cloud.netflix.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.114", + "domain": "api-global.netflix.com", + "queries": 15, + "blocked": 0, + "allowed": 15 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2294, + "blocked": 2292, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 404, + "blocked": 400, + "allowed": 4 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 319, + "blocked": 319, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 33, + "blocked": 33, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "ichnaea.netflix.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "customerevents.netflix.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.118", + "pihole_name": "", + "queries": 3021, + "blocked_queries": 281, + "block_rate_percent": 9.3, + "unique_domains": 434, + "last_query_epoch": 1788472957.3904085, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.118", + "domain": "mask.apple-dns.net", + "queries": 155, + "blocked": 0, + "allowed": 155 + }, + { + "ip": "192.168.68.118", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 153, + "blocked": 0, + "allowed": 153 + }, + { + "ip": "192.168.68.118", + "domain": "ts01-b.cloudsink.net", + "queries": 98, + "blocked": 0, + "allowed": 98 + }, + { + "ip": "192.168.68.118", + "domain": "outlook.office365.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.118", + "domain": "whatsapp.com", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.118", + "domain": "www.google.com", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.118", + "domain": "mdm-na2.mobileiron.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.118", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.118", + "domain": "chat.cdn.whatsapp.net", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.118", + "domain": "ocsp2.apple.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.118", + "domain": "dit.whatsapp.net", + "queries": 85, + "blocked": 85, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "app-analytics-services.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "app-measurement.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "unagi-na.amazon.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "unagi.amazon.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "fbs.smoot.apple.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "fls-na.amazon.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "sdk.iad-05.braze.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "cdp.customer.io", + "queries": 12, + "blocked": 12, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 2206, + "blocked_queries": 224, + "block_rate_percent": 10.15, + "unique_domains": 36, + "last_query_epoch": 1788494221.481795, + "deco": { + "hostname": "adolforeynaserver", + "mac": "18-60-24-78-DB-E8", + "ip": "192.168.68.110", + "connection": "wired", + "interface": "main", + "upSpeed": 4, + "downSpeed": 5, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 600, + "blocked": 0, + "allowed": 600 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 300, + "blocked": 0, + "allowed": 300 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.110", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.110", + "domain": "motd.ubuntu.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2127, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 17, + "last_query_epoch": 1788494289.1109147, + "deco": { + "hostname": "aeropi5", + "mac": "2C-CF-67-95-2B-F8", + "ip": "192.168.68.126", + "connection": "wired", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1192, + "blocked": 0, + "allowed": 1192 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 612, + "blocked": 0, + "allowed": 612 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "canonical-lgw01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2113, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 17, + "last_query_epoch": 1788494289.1092262, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1190, + "blocked": 0, + "allowed": 1190 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 613, + "blocked": 0, + "allowed": 613 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 180, + "blocked": 0, + "allowed": 180 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "canonical-lgw01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 2068, + "blocked_queries": 1988, + "block_rate_percent": 96.13, + "unique_domains": 19, + "last_query_epoch": 1788494286.7476087, + "deco": { + "hostname": "50LivingRoom", + "mac": "84-3E-1D-4F-4A-1D", + "ip": "192.168.68.100", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "tpc.googlesyndication.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "tis.cti.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 1772, + "blocked": 1768, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 208, + "blocked": 204, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 17, + "blocked": 16, + "allowed": 1 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 1886, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 25, + "last_query_epoch": 1788494361.5962307, + "deco": { + "hostname": "emiserver", + "mac": "C8-5A-CF-0A-7A-A7", + "ip": "192.168.68.119", + "connection": "wired", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1096, + "blocked": 0, + "allowed": 1096 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 658, + "blocked": 0, + "allowed": 658 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-227.compute-1.amazonaws.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "us.i.posthog.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-02.yyalx.mongodb.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1683, + "blocked_queries": 389, + "block_rate_percent": 23.11, + "unique_domains": 189, + "last_query_epoch": 1788494322.689644, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 262, + "blocked": 0, + "allowed": 262 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.107", + "domain": "swallow.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.107", + "domain": "configuration.ls.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.107", + "domain": "m.sni.global.fastly.net", + "queries": 41, + "blocked": 0, + "allowed": 41 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.107", + "domain": "swallow-apple-com.v.aaplimg.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 287, + "blocked": 287, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 34, + "blocked": 32, + "allowed": 2 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1171, + "blocked_queries": 32, + "block_rate_percent": 2.73, + "unique_domains": 162, + "last_query_epoch": 1788493111.9382868, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 284, + "blocked": 0, + "allowed": 284 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 57, + "blocked": 0, + "allowed": 57 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.129", + "domain": "bag.itunes.apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.129", + "domain": "mask-api.icloud.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 641, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 36, + "last_query_epoch": 1788491424.1803403, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 490, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788494304.9749694, + "deco": { + "hostname": "espressif", + "mac": "14-C1-9F-D0-59-1C", + "ip": "192.168.68.113", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 483, + "blocked": 0, + "allowed": 483 + }, + { + "ip": "192.168.68.113", + "domain": "cdn.tactilityproject.org", + "queries": 7, + "blocked": 0, + "allowed": 7 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 335, + "blocked_queries": 32, + "block_rate_percent": 9.55, + "unique_domains": 58, + "last_query_epoch": 1788493122.779275, + "deco": { + "hostname": "Adolfos-iPhone", + "mac": "30-35-AD-68-A3-AB", + "ip": "192.168.68.150", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "safebrowsing.googleapis.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.150", + "domain": "p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "_bookmarkdavs._tcp.p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "valid.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "fbs.smoot.apple.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 276, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788494343.583172, + "deco": { + "hostname": "espressif", + "mac": "14-C1-9F-D1-56-90", + "ip": "192.168.68.135", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 276, + "blocked": 0, + "allowed": 276 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 183, + "blocked_queries": 49, + "block_rate_percent": 26.78, + "unique_domains": 7, + "last_query_epoch": 1788492875.3980193, + "deco": { + "hostname": "Amazon", + "mac": "A0-D2-B1-A6-EC-BD", + "ip": "192.168.68.134", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 91, + "blocked": 0, + "allowed": 91 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 51, + "blocked": 49, + "allowed": 2 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 77, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 17, + "last_query_epoch": 1788483150.6861866, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.104", + "domain": "iphone-ld.apple.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.104", + "domain": "_dns.resolver.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.104", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "mask-api.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "init.ess.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "apple-native-relay.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.g.aaplimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "mask.icloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 59, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788492590.2782087, + "deco": { + "hostname": "E31868152", + "mac": "80-9F-9B-45-9A-FF", + "ip": "192.168.68.128", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.128", + "domain": "litedev.us.ezvizlife.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 59, + "blocked_queries": 1, + "block_rate_percent": 1.69, + "unique_domains": 20, + "last_query_epoch": 1788490247.5667806, + "deco": { + "hostname": "espressif", + "mac": "14-C1-9F-D0-5C-5C", + "ip": "192.168.68.121", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "time.cloudflare.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.121", + "domain": "device-messaging-na.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.121", + "domain": "todo-ta-g7g.amazon.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.121", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.121", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.121", + "domain": "pins.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "guzzoni.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "api.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "unagi-na.amazon.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 54, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1788480984.1588554, + "deco": { + "hostname": "MyCloudEX2Ultra", + "mac": "00-00-C0-3C-B8-FF", + "ip": "192.168.68.137", + "connection": "wired", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "prod-15ce3e0b80af991.wdckeystone.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "download.wdc.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788493020.9490373, + "deco": { + "hostname": "F49758774", + "mac": "C0-E7-BF-DD-C8-2A", + "ip": "192.168.68.125", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 15, + "blocked_queries": 12, + "block_rate_percent": 80.0, + "unique_domains": 7, + "last_query_epoch": 1788491507.1799872, + "deco": { + "hostname": "Mac-mini-M4", + "mac": "D0-11-E5-73-96-5A", + "ip": "192.168.68.130", + "connection": "wired", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "google.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.130", + "domain": "youtubei.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "youtube.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "youtu.be", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "x.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "www.youtube.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "www.googlevideo.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.122", + "pihole_name": "", + "queries": 5, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788484338.4366925, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.122", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 3, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788484279.1036859, + "deco": { + "hostname": "FN-LINK", + "mac": "24-18-C6-B5-4A-DC", + "ip": "192.168.68.139", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788453462.558633, + "deco": { + "hostname": "Mac", + "mac": "5A-D2-AA-CB-96-08", + "ip": "192.168.68.102", + "connection": "band5", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.109", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788467788.8875825, + "deco": { + "hostname": "blink-sync-module", + "mac": "84-28-59-24-D7-CA", + "ip": "192.168.68.109", + "connection": "band2_4", + "interface": "main", + "upSpeed": 0, + "downSpeed": 0, + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "live_deco_lookup" + }, + "top_visited": [ + { + "ip": "192.168.68.109", + "domain": "rest-hw-u011.immedia-semi.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.109", + "domain": "cs-u011.immedia-semi.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-03.md b/projects/network_usage/reports/2026-09-03.md new file mode 100644 index 0000000..2b90845 --- /dev/null +++ b/projects/network_usage/reports/2026-09-03.md @@ -0,0 +1,588 @@ +# Pi-hole DNS usage — 2026-09-03 + +Window: 2026-09-03T00:00:00-04:00 to 2026-09-04T00:00:00-04:00 (America/New_York) +Generated: 2026-09-04T12:00:54.171571-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: live Deco lookup + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Barn | 29,823 | 486 | 1.63% | `www.internalfb.com` | `chromereporting-pa.googleapis.com` | +| Mac | 192.168.68.108 | Casita | 12,073 | 894 | 7.40% | `www.google.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.105 | Casita | 9,575 | 1,194 | 12.47% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeyna-iMac11-3 | 192.168.68.124 | WashMachine | 6,398 | 1,558 | 24.35% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| Mac | 192.168.68.111 | Hallway | 5,313 | 413 | 7.77% | `www.google.com` | `dit.whatsapp.net` | +| Unknown device | 192.168.68.106 | not mapped | 3,915 | 519 | 13.26% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 3,656 | 3,096 | 84.68% | `nrdp.prod.ftl.netflix.com` | `scribe.logs.roku.com` | +| Unknown device | 192.168.68.118 | not mapped | 3,021 | 281 | 9.30% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 2,206 | 224 | 10.15% | `chatgpt.com` | `telemetry.n8n.io` | +| aeropi5 | 192.168.68.126 | Office | 2,127 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| Unknown device | 192.168.68.116 | not mapped | 2,113 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| 50LivingRoom | 192.168.68.100 | Office | 2,068 | 1,988 | 96.13% | `api.roku.com` | `scribe.logs.roku.com` | +| emiserver | 192.168.68.119 | Office | 1,886 | 0 | 0.00% | `api.telegram.org` | `—` | +| Unknown device | 192.168.68.107 | not mapped | 1,683 | 389 | 23.11% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| Unknown device | 192.168.68.129 | not mapped | 1,171 | 32 | 2.73% | `mask.apple-dns.net` | `partiality.itunes.apple.com` | +| localhost | 127.0.0.1 | not mapped | 641 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.113 | Study | 490 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 335 | 32 | 9.55% | `safebrowsing.googleapis.com` | `fbs.smoot.apple.com` | +| espressif | 192.168.68.135 | WashMachine | 276 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 183 | 49 | 26.78% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Unknown device | 192.168.68.104 | not mapped | 77 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 59 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| espressif | 192.168.68.121 | Office | 59 | 1 | 1.69% | `time.cloudflare.com` | `unagi-na.amazon.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 54 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 15 | 12 | 80.00% | `google.com` | `youtubei.googleapis.com` | +| Unknown device | 192.168.68.122 | not mapped | 5 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 3 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Mac | 192.168.68.102 | Office | 2 | 0 | 0.00% | `local` | `—` | +| blink-sync-module | 192.168.68.109 | Study | 2 | 0 | 0.00% | `rest-hw-u011.immedia-semi.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Barn; MAC: 06-79-91-73-6F-6A; mapping: live_deco_lookup. +Queries: 29,823; blocked: 486; block rate: 1.63%; unique domains: 413. + +Top visited (not blocked): +- www.internalfb.com — 6,216 +- graph.facebook.com — 2,984 +- internalfb.com — 2,115 +- ssl.gstatic.com — 780 +- star.c10r.facebook.com — 691 +- metamate.internalmeta.com — 648 +- play.google.com — 584 +- api.manus.im — 560 +- logging.internalmeta.com — 531 +- chat.google.com — 478 +Top blocked: +- chromereporting-pa.googleapis.com — 330 blocked of 342 +- us-v20.events.data.microsoft.com — 78 blocked of 85 +- fbs.smoot.apple.com — 28 blocked of 28 +- beacon.flexera-prod.aws.metafb.cloud — 17 blocked of 17 +- csp.withgoogle.com — 13 blocked of 13 +- appsgrowthpromo-pa.clients6.google.com — 9 blocked of 9 +- us-v20.events.data.trafficmanager.net — 6 blocked of 16 +- ogads-pa.clients6.google.com — 3 blocked of 3 +- experiments.apple.com — 2 blocked of 2 + +### Mac (192.168.68.108) +Location: Casita; MAC: 82-A1-8E-D4-03-7A; mapping: live_deco_lookup. +Queries: 12,073; blocked: 894; block rate: 7.40%; unique domains: 729. + +Top visited (not blocked): +- www.google.com — 395 +- mask.apple-dns.net — 360 +- chat.cdn.whatsapp.net — 345 +- api.telegram.org — 311 +- ab.chatgpt.com — 293 +- brain.reynafamily.com — 291 +- ssl.gstatic.com — 276 +- chat.openai.com — 274 +- optimizationguide-pa.googleapis.com — 258 +- apple.com — 254 +Top blocked: +- dit.whatsapp.net — 499 blocked of 505 +- x.com — 133 blocked of 151 +- slackb.com — 100 blocked of 100 +- partiality.itunes.apple.com — 22 blocked of 22 +- cf.iadsdk.apple.com — 22 blocked of 22 +- fbs.smoot.apple.com — 21 blocked of 21 +- ogads-pa.clients6.google.com — 20 blocked of 22 +- sentry.bga.li — 8 blocked of 12 +- analytics.google.com — 8 blocked of 12 +- improving.duckduckgo.com — 8 blocked of 8 + +### iPhone (192.168.68.105) +Location: Casita; MAC: C6-37-18-E7-39-39; mapping: live_deco_lookup. +Queries: 9,575; blocked: 1,194; block rate: 12.47%; unique domains: 1,025. + +Top visited (not blocked): +- mask.apple-dns.net — 343 +- outlook.office365.com — 318 +- ts01-b.csa.cloudsink.net — 229 +- mmx-ds.cdn.whatsapp.net — 214 +- www.google.com — 204 +- chat.cdn.whatsapp.net — 143 +- oauthaccountmanager.googleapis.com — 102 +- ts01-b.cloudsink.net — 98 +- atm.outlook.mira.tm.svc.cloud.microsoft — 89 +- ocsp2.apple.com — 86 +Top blocked: +- dit.whatsapp.net — 260 blocked of 262 +- app-analytics-services.com — 132 blocked of 132 +- app-measurement.com — 90 blocked of 90 +- stocks-analytics-events.apple.com — 61 blocked of 65 +- firebaselogging-pa.googleapis.com — 51 blocked of 51 +- fbs.smoot.apple.com — 28 blocked of 28 +- sdk.iad-05.braze.com — 26 blocked of 26 +- slackb.com — 23 blocked of 23 +- sdk.iad-08.braze.com — 21 blocked of 21 +- collector-pxuarm9b04.perimeterx.net — 21 blocked of 21 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: WashMachine; MAC: C8-BC-C8-BB-19-2D; mapping: live_deco_lookup. +Queries: 6,398; blocked: 1,558; block rate: 24.35%; unique domains: 62. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,969 +- chatgpt.com — 643 +- connectivity-check.ubuntu.com — 583 +- easylist-downloads.adblockplus.org — 190 +- push.services.mozilla.com — 146 +- firefox.settings.services.mozilla.com — 126 +- www.gstatic.com — 115 +- www.recaptcha.net — 112 +- filters.adtidy.org — 110 +- fonts.gstatic.com — 99 +Top blocked: +- cdp.cloud.unity3d.com — 836 blocked of 848 +- sdk.iad-01.braze.com — 504 blocked of 506 +- incoming.telemetry.mozilla.org — 218 blocked of 221 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: live_deco_lookup. +Queries: 5,313; blocked: 413; block rate: 7.77%; unique domains: 306. + +Top visited (not blocked): +- www.google.com — 195 +- www.apple.com — 192 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 189 +- api.apple-cloudkit.fe2.apple-dns.net — 163 +- ai.zoom.us — 138 +- p49-imap.mail.me.com.akadns.net — 133 +- 111.68.168.192.in-addr.arpa — 126 +- us04zpns.zoom.us — 119 +- us04ark.zoom.us — 117 +- ssl.gstatic.com — 114 +Top blocked: +- dit.whatsapp.net — 220 blocked of 222 +- word-telemetry.officeapps.live.com — 72 blocked of 76 +- bam.nr-data.net — 55 blocked of 60 +- track.capitaloneshopping.com — 38 blocked of 38 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- experiments.apple.com — 4 blocked of 4 +- iadsdk.apple.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 +- ct.pinterest.com — 2 blocked of 2 + +### Unknown device (192.168.68.106) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3,915; blocked: 519; block rate: 13.26%; unique domains: 844. + +Top visited (not blocked): +- mask.apple-dns.net — 89 +- outlook.office365.com — 82 +- mmx-ds.cdn.whatsapp.net — 70 +- www.google.com — 50 +- youtubei.googleapis.com — 47 +- redirector.googlevideo.com — 44 +- chat.cdn.whatsapp.net — 44 +- yt3.googleusercontent.com — 36 +- bag-cdn.itunes-apple.com.akadns.net — 35 +- s.youtube.com — 31 +Top blocked: +- dit.whatsapp.net — 136 blocked of 136 +- graph.instagram.com — 80 blocked of 80 +- graph-fallback.instagram.com — 48 blocked of 48 +- app-analytics-services.com — 36 blocked of 36 +- sdk.iad-01.braze.com — 21 blocked of 21 +- ca.iadsdk.apple.com — 19 blocked of 19 +- ogads-pa.clients6.google.com — 14 blocked of 14 +- csp.withgoogle.com — 14 blocked of 14 +- unagi.amazon.com — 10 blocked of 10 +- analytics.google.com — 8 blocked of 8 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: live_deco_lookup. +Queries: 3,656; blocked: 3,096; block rate: 84.68%; unique domains: 54. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 155 +- nrdp.push.prod.netflix.com — 115 +- nrdp51-appboot.netflix.com — 35 +- api.roku.com — 34 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 20 +- cdn-0.nflximg.com — 19 +- uiboot.netflix.com — 17 +- nrdp.prod.cloud.netflix.com — 17 +- api-global.netflix.com — 15 +Top blocked: +- scribe.logs.roku.com — 2,292 blocked of 2,294 +- liberty.logs.roku.com — 400 blocked of 404 +- nrdp.logs.netflix.com — 319 blocked of 319 +- logs.netflix.com — 33 blocked of 33 +- ichnaea.netflix.com — 19 blocked of 19 +- customerevents.netflix.com — 19 blocked of 19 +- cloudservices.roku.com — 14 blocked of 14 + +### Unknown device (192.168.68.118) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3,021; blocked: 281; block rate: 9.30%; unique domains: 434. + +Top visited (not blocked): +- mask.apple-dns.net — 155 +- ts01-b.csa.cloudsink.net — 153 +- ts01-b.cloudsink.net — 98 +- outlook.office365.com — 90 +- whatsapp.com — 67 +- www.google.com — 60 +- mdm-na2.mobileiron.com — 56 +- mmx-ds.cdn.whatsapp.net — 53 +- chat.cdn.whatsapp.net — 42 +- ocsp2.apple.com — 40 +Top blocked: +- dit.whatsapp.net — 85 blocked of 85 +- app-analytics-services.com — 36 blocked of 36 +- app-measurement.com — 22 blocked of 22 +- unagi-na.amazon.com — 19 blocked of 19 +- unagi.amazon.com — 17 blocked of 17 +- firebaselogging-pa.googleapis.com — 16 blocked of 16 +- fbs.smoot.apple.com — 16 blocked of 16 +- fls-na.amazon.com — 15 blocked of 15 +- sdk.iad-05.braze.com — 14 blocked of 14 +- cdp.customer.io — 12 blocked of 12 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: live_deco_lookup. +Queries: 2,206; blocked: 224; block rate: 10.15%; unique domains: 36. + +Top visited (not blocked): +- chatgpt.com — 600 +- media.reynafamily.com — 570 +- adolforeynaserver — 300 +- acme-v02.api.letsencrypt.org — 188 +- ph.n8n.io — 112 +- version.goauthentik.io — 48 +- api.github.com — 48 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- motd.ubuntu.com — 8 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: live_deco_lookup. +Queries: 2,127; blocked: 0; block rate: 0.00%; unique domains: 17. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,192 +- chatgpt.com — 612 +- herdr.dev — 194 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 12 +- cdn.fwupd.org — 5 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +- canonical-lgw01.cdn.snapcraftcontent.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.116) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 2,113; blocked: 0; block rate: 0.00%; unique domains: 17. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,190 +- chatgpt.com — 613 +- herdr.dev — 180 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 12 +- cdn.fwupd.org — 6 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +- canonical-lgw01.cdn.snapcraftcontent.com — 2 +Top blocked: +- none + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: live_deco_lookup. +Queries: 2,068; blocked: 1,988; block rate: 96.13%; unique domains: 19. + +Top visited (not blocked): +- api.roku.com — 27 +- themes-service.sr.roku.com — 24 +- tpc.googlesyndication.com — 2 +- sw-update.cs.roku.com — 2 +- mediaservices.cdn-apple.com — 2 +- display.ravm.tv — 2 +- austin.sb.roku.com — 2 +- api2.sr.roku.com — 2 +- tis.cti.roku.com — 1 +- lat-services.api.data.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,768 blocked of 1,772 +- liberty.logs.roku.com — 204 blocked of 208 +- cloudservices.roku.com — 16 blocked of 17 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: live_deco_lookup. +Queries: 1,886; blocked: 0; block rate: 0.00%; unique domains: 25. + +Top visited (not blocked): +- api.telegram.org — 1,096 +- chatgpt.com — 658 +- version.goauthentik.io — 48 +- version.immich.cloud — 24 +- api.snapcraft.io — 10 +- ec2-89-192-235-227.compute-1.amazonaws.com — 9 +- motd.ubuntu.com — 6 +- us.i.posthog.com — 4 +- security.ubuntu.com — 4 +- cluster0-shard-00-02.yyalx.mongodb.net — 4 +Top blocked: +- none + +### Unknown device (192.168.68.107) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 1,683; blocked: 389; block rate: 23.11%; unique domains: 189. + +Top visited (not blocked): +- mask.apple-dns.net — 262 +- _dns.resolver.arpa — 60 +- ocsp2.apple.com — 54 +- swallow.apple.com — 44 +- mask.icloud.com — 44 +- configuration.ls.apple.com — 44 +- m.sni.global.fastly.net — 41 +- ocsp2.g.aaplimg.com — 29 +- gdmf.apple.com — 26 +- swallow-apple-com.v.aaplimg.com — 24 +Top blocked: +- sdk.iad-01.braze.com — 287 blocked of 287 +- app-measurement.com — 48 blocked of 48 +- fbs.smoot.apple.com — 32 blocked of 34 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- firebaselogging-pa.googleapis.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- banner.youversionapi.com — 2 blocked of 2 + +### Unknown device (192.168.68.129) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 1,171; blocked: 32; block rate: 2.73%; unique domains: 162. + +Top visited (not blocked): +- mask.apple-dns.net — 284 +- _dns.resolver.arpa — 57 +- iphone-ld.apple.com — 48 +- ocsp2.apple.com — 46 +- mask.icloud.com — 46 +- iphone-ld.g.aaplimg.com — 43 +- ocsp2.g.aaplimg.com — 29 +- bag.itunes.apple.com — 20 +- mask-api.icloud.com — 18 +- configuration.ls.apple.com — 18 +Top blocked: +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- app-analytics-services.com — 6 blocked of 6 +- experiments.apple.com — 4 blocked of 4 +- app-measurement.com — 4 blocked of 4 +- trk.pinterest.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 641; blocked: 0; block rate: 0.00%; unique domains: 36. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: live_deco_lookup. +Queries: 490; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 483 +- cdn.tactilityproject.org — 7 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: live_deco_lookup. +Queries: 335; blocked: 32; block rate: 9.55%; unique domains: 58. + +Top visited (not blocked): +- safebrowsing.googleapis.com — 47 +- gateway.fe2.apple-dns.net — 34 +- time-ios.apple.com — 33 +- p33-bookmarks.icloud.com — 20 +- _bookmarkdavs._tcp.p33-bookmarks.icloud.com — 20 +- gateway.icloud.com — 16 +- ocsp.apple.com — 14 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +- valid.apple.com — 7 +Top blocked: +- fbs.smoot.apple.com — 24 blocked of 24 +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.135) +Location: WashMachine; MAC: 14-C1-9F-D1-56-90; mapping: live_deco_lookup. +Queries: 276; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 276 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: live_deco_lookup. +Queries: 183; blocked: 49; block rate: 26.78%; unique domains: 7. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 91 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 30 +- www.amazon.com — 6 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 49 blocked of 51 + +### Unknown device (192.168.68.104) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 77; blocked: 0; block rate: 0.00%; unique domains: 17. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 22 +- iphone-ld.apple.com — 10 +- _dns.resolver.arpa — 9 +- iphone-ld.g.aaplimg.com — 5 +- ocsp2.apple.com — 4 +- mask-api.icloud.com — 4 +- init.ess.apple.com — 4 +- apple-native-relay.apple.com — 4 +- ocsp2.g.aaplimg.com — 2 +- mask.icloud.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: live_deco_lookup. +Queries: 59; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 54 +- litedev.us.ezvizlife.com — 5 +Top blocked: +- none + +### espressif (192.168.68.121) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: live_deco_lookup. +Queries: 59; blocked: 1; block rate: 1.69%; unique domains: 20. + +Top visited (not blocked): +- time.cloudflare.com — 20 +- device-messaging-na.amazon.com — 6 +- todo-ta-g7g.amazon.com — 4 +- podcast.emmint.com — 4 +- dogvgb9ujhybx.cloudfront.net — 3 +- pins.amazon.com — 2 +- ms-cam-u011.immedia-semi.com — 2 +- guzzoni.apple.com — 2 +- api.amazon.com — 2 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 2 +Top blocked: +- unagi-na.amazon.com — 1 blocked of 1 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: live_deco_lookup. +Queries: 54; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod.wdckeystone.com — 10 +- prod-proxy.wdckeystone.com — 8 +- prod-15ce3e0b80af991.wdckeystone.com — 6 +- config.mycloud.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-gateway.wdckeystone.com — 4 +- google.com — 4 +- download.wdc.com — 4 +- prod-31cdfc8017b5028.wdckeystone.com — 2 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: live_deco_lookup. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: live_deco_lookup. +Queries: 15; blocked: 12; block rate: 80.00%; unique domains: 7. + +Top visited (not blocked): +- google.com — 3 +Top blocked: +- youtubei.googleapis.com — 2 blocked of 2 +- youtube.com — 2 blocked of 2 +- youtu.be — 2 blocked of 2 +- x.com — 2 blocked of 2 +- www.youtube.com — 2 blocked of 2 +- www.googlevideo.com — 2 blocked of 2 + +### Unknown device (192.168.68.122) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 5; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 5 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: live_deco_lookup. +Queries: 3; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 3 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: live_deco_lookup. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- local — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### blink-sync-module (192.168.68.109) +Location: Study; MAC: 84-28-59-24-D7-CA; mapping: live_deco_lookup. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- rest-hw-u011.immedia-semi.com — 1 +- cs-u011.immedia-semi.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-04.json b/projects/network_usage/reports/2026-09-04.json new file mode 100644 index 0000000..f9c3725 --- /dev/null +++ b/projects/network_usage/reports/2026-09-04.json @@ -0,0 +1,3232 @@ +{ + "schema_version": 2, + "day": "2026-09-04", + "timezone": "America/New_York", + "generated_at": "2026-09-05T00:15:26.487880-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-04T00:00:00-04:00", + "end_local": "2026-09-05T00:00:00-04:00", + "start_epoch": 1788494400, + "end_epoch": 1788580800 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 10787 + }, + { + "status": 2, + "queries": 11401 + }, + { + "status": 3, + "queries": 47465 + }, + { + "status": 4, + "queries": 1372 + }, + { + "status": 5, + "queries": 69 + }, + { + "status": 9, + "queries": 1265 + }, + { + "status": 10, + "queries": 951 + }, + { + "status": 12, + "queries": 6 + }, + { + "status": 14, + "queries": 1692 + }, + { + "status": 16, + "queries": 376 + }, + { + "status": 17, + "queries": 32625 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 31, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 41774, + "blocked_queries": 3181, + "block_rate_percent": 7.61, + "unique_domains": 674, + "last_query_epoch": 1788580130.9238653, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 2758, + "blocked": 0, + "allowed": 2758 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 1131, + "blocked": 0, + "allowed": 1131 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 1006, + "blocked": 0, + "allowed": 1006 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 932, + "blocked": 0, + "allowed": 932 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 909, + "blocked": 0, + "allowed": 909 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 579, + "blocked": 0, + "allowed": 579 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 446, + "blocked": 0, + "allowed": 446 + }, + { + "ip": "192.168.68.112", + "domain": "waa-pa.clients6.google.com", + "queries": 396, + "blocked": 0, + "allowed": 396 + }, + { + "ip": "192.168.68.112", + "domain": "google.com", + "queries": 396, + "blocked": 0, + "allowed": 396 + }, + { + "ip": "192.168.68.112", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 391, + "blocked": 0, + "allowed": 391 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 7775, + "blocked": 746, + "allowed": 7029 + }, + { + "ip": "192.168.68.112", + "domain": "chromereporting-pa.googleapis.com", + "queries": 480, + "blocked": 468, + "allowed": 12 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 3746, + "blocked": 333, + "allowed": 3413 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 616, + "blocked": 226, + "allowed": 390 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 174, + "blocked": 168, + "allowed": 6 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 447, + "blocked": 152, + "allowed": 295 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 425, + "blocked": 140, + "allowed": 285 + }, + { + "ip": "192.168.68.112", + "domain": "star.c10r.facebook.com", + "queries": 1196, + "blocked": 122, + "allowed": 1074 + }, + { + "ip": "192.168.68.112", + "domain": "stocks-analytics-events.apple.com", + "queries": 66, + "blocked": 64, + "allowed": 2 + }, + { + "ip": "192.168.68.112", + "domain": "www.youtube.com", + "queries": 159, + "blocked": 60, + "allowed": 99 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 11614, + "blocked_queries": 952, + "block_rate_percent": 8.2, + "unique_domains": 498, + "last_query_epoch": 1788580163.185064, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:41:18.188917+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 748, + "blocked": 0, + "allowed": 748 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 424, + "blocked": 0, + "allowed": 424 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 345, + "blocked": 0, + "allowed": 345 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 344, + "blocked": 0, + "allowed": 344 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 310, + "blocked": 0, + "allowed": 310 + }, + { + "ip": "192.168.68.108", + "domain": "ssl.gstatic.com", + "queries": 307, + "blocked": 0, + "allowed": 307 + }, + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 294, + "blocked": 0, + "allowed": 294 + }, + { + "ip": "192.168.68.108", + "domain": "ab.chatgpt.com", + "queries": 252, + "blocked": 0, + "allowed": 252 + }, + { + "ip": "192.168.68.108", + "domain": "cloud.reynafamily.com", + "queries": 240, + "blocked": 0, + "allowed": 240 + }, + { + "ip": "192.168.68.108", + "domain": "signaler-pa.clients6.google.com", + "queries": 232, + "blocked": 0, + "allowed": 232 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 728, + "blocked": 723, + "allowed": 5 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 72, + "blocked": 56, + "allowed": 16 + }, + { + "ip": "192.168.68.108", + "domain": "fbs.smoot.apple.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cdn3.optimizely.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "experiments.apple.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 9731, + "blocked_queries": 1452, + "block_rate_percent": 14.92, + "unique_domains": 848, + "last_query_epoch": 1788580761.5635417, + "deco": { + "ip": "192.168.68.105", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 411, + "blocked": 0, + "allowed": 411 + }, + { + "ip": "192.168.68.105", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 409, + "blocked": 0, + "allowed": 409 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 326, + "blocked": 0, + "allowed": 326 + }, + { + "ip": "192.168.68.105", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 303, + "blocked": 0, + "allowed": 303 + }, + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 256, + "blocked": 0, + "allowed": 256 + }, + { + "ip": "192.168.68.105", + "domain": "chat.cdn.whatsapp.net", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.105", + "domain": "ts01-b.cloudsink.net", + "queries": 186, + "blocked": 0, + "allowed": 186 + }, + { + "ip": "192.168.68.105", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 109, + "blocked": 0, + "allowed": 109 + }, + { + "ip": "192.168.68.105", + "domain": "mdm-na2.mobileiron.com", + "queries": 106, + "blocked": 0, + "allowed": 106 + }, + { + "ip": "192.168.68.105", + "domain": "whatsapp.com", + "queries": 102, + "blocked": 0, + "allowed": 102 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 525, + "blocked": 520, + "allowed": 5 + }, + { + "ip": "192.168.68.105", + "domain": "stocks-analytics-events.apple.com", + "queries": 230, + "blocked": 230, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "app-analytics-services.com", + "queries": 120, + "blocked": 118, + "allowed": 2 + }, + { + "ip": "192.168.68.105", + "domain": "app-measurement.com", + "queries": 72, + "blocked": 69, + "allowed": 3 + }, + { + "ip": "192.168.68.105", + "domain": "cdp.customer.io", + "queries": 55, + "blocked": 55, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "sdk.iad-01.braze.com", + "queries": 41, + "blocked": 41, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "sdk.iad-05.braze.com", + "queries": 39, + "blocked": 39, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "fbs.smoot.apple.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "youtubei.googleapis.com", + "queries": 82, + "blocked": 18, + "allowed": 64 + }, + { + "ip": "192.168.68.105", + "domain": "unagi.amazon.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 7908, + "blocked_queries": 662, + "block_rate_percent": 8.37, + "unique_domains": 395, + "last_query_epoch": 1788580126.7705398, + "deco": { + "ip": "192.168.68.111", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 304, + "blocked": 0, + "allowed": 304 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 299, + "blocked": 0, + "allowed": 299 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 232, + "blocked": 0, + "allowed": 232 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 228, + "blocked": 0, + "allowed": 228 + }, + { + "ip": "192.168.68.111", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 210, + "blocked": 0, + "allowed": 210 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.111", + "domain": "www.apple.com", + "queries": 179, + "blocked": 0, + "allowed": 179 + }, + { + "ip": "192.168.68.111", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 160, + "blocked": 0, + "allowed": 160 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 155, + "blocked": 0, + "allowed": 155 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 378, + "blocked": 372, + "allowed": 6 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 186, + "blocked": 178, + "allowed": 8 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 32, + "blocked": 30, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "sentry.bga.li", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 28, + "blocked": 12, + "allowed": 16 + }, + { + "ip": "192.168.68.111", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ogads-pa.clients6.google.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 7066, + "blocked_queries": 777, + "block_rate_percent": 11.0, + "unique_domains": 1256, + "last_query_epoch": 1788580737.2786791, + "deco": { + "ip": "192.168.68.106", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 239, + "blocked": 0, + "allowed": 239 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 200, + "blocked": 0, + "allowed": 200 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 101, + "blocked": 0, + "allowed": 101 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 93, + "blocked": 0, + "allowed": 93 + }, + { + "ip": "192.168.68.106", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 78, + "blocked": 0, + "allowed": 78 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.106", + "domain": "whatsapp.com", + "queries": 64, + "blocked": 0, + "allowed": 64 + }, + { + "ip": "192.168.68.106", + "domain": "imap.gmail.com", + "queries": 63, + "blocked": 0, + "allowed": 63 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 198, + "blocked": 198, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 78, + "blocked": 78, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "sdk.iad-01.braze.com", + "queries": 54, + "blocked": 54, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "fbs.smoot.apple.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "analytics.google.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "monorail-edge.shopifysvc.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "clienttracing-pa.googleapis.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "trk.pinterest.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ct.pinterest.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 5901, + "blocked_queries": 5178, + "block_rate_percent": 87.75, + "unique_domains": 63, + "last_query_epoch": 1788580749.7422497, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 138, + "blocked": 0, + "allowed": 138 + }, + { + "ip": "192.168.68.114", + "domain": "www.youtube.com", + "queries": 133, + "blocked": 0, + "allowed": 133 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 113, + "blocked": 0, + "allowed": 113 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "i.ytimg.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.114", + "domain": "googleads.g.doubleclick.net", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.cloud.netflix.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 3170, + "blocked": 3164, + "allowed": 6 + }, + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 1540, + "blocked": 1538, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 264, + "blocked": 254, + "allowed": 10 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 199, + "blocked": 189, + "allowed": 10 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 6, + "blocked": 4, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5713, + "blocked_queries": 1148, + "block_rate_percent": 20.09, + "unique_domains": 139, + "last_query_epoch": 1788580796.2567582, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1948, + "blocked": 0, + "allowed": 1948 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 581, + "blocked": 0, + "allowed": 581 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 537, + "blocked": 0, + "allowed": 537 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 159, + "blocked": 0, + "allowed": 159 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 116, + "blocked": 0, + "allowed": 116 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 116, + "blocked": 0, + "allowed": 116 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 116, + "blocked": 0, + "allowed": 116 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 106, + "blocked": 0, + "allowed": 106 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 839, + "blocked": 827, + "allowed": 12 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 270, + "blocked": 270, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "pi.reddit.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "csp.withgoogle.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "s.amazon-adsystem.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "confiant-integrations.global.ssl.fastly.net", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "c.amazon-adsystem.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "btloader.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "analytics.google.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "w3-reporting.reddit.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 5294, + "blocked_queries": 224, + "block_rate_percent": 4.23, + "unique_domains": 39, + "last_query_epoch": 1788580690.0592966, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 3672, + "blocked": 0, + "allowed": 3672 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 314, + "blocked": 0, + "allowed": 314 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.110", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.110", + "domain": "cdn.fwupd.org", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2437, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788580744.5529046, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1168, + "blocked": 0, + "allowed": 1168 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 949, + "blocked": 0, + "allowed": 949 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 195, + "blocked": 0, + "allowed": 195 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.126", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2393, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788580744.5416012, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T01:31:07.240182+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1167, + "blocked": 0, + "allowed": 1167 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 919, + "blocked": 0, + "allowed": 919 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 184, + "blocked": 0, + "allowed": 184 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.116", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1879, + "blocked_queries": 304, + "block_rate_percent": 16.18, + "unique_domains": 262, + "last_query_epoch": 1788579955.5069094, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 337, + "blocked": 0, + "allowed": 337 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "known-issues.v.aaplimg.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.107", + "domain": "m.sni.global.fastly.net", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.107", + "domain": "time.g.aaplimg.com", + "queries": 23, + "blocked": 0, + "allowed": 23 + }, + { + "ip": "192.168.68.107", + "domain": "mask-api.icloud.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "known-issues.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 244, + "blocked": 244, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "crashlyticsreports-pa.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 1766, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 24, + "last_query_epoch": 1788580769.1542394, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1114, + "blocked": 0, + "allowed": 1114 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 510, + "blocked": 0, + "allowed": 510 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-234.compute-1.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-227.compute-1.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-218.compute-1.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1566, + "blocked_queries": 53, + "block_rate_percent": 3.38, + "unique_domains": 236, + "last_query_epoch": 1788580123.6144223, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:41:18.188917+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 302, + "blocked": 0, + "allowed": 302 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 41, + "blocked": 0, + "allowed": 41 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.apple.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.129", + "domain": "gdmf.apple.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.v.aaplimg.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 8, + "blocked": 6, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 668, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 37, + "last_query_epoch": 1788577200.9850283, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "local.api.ftl", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 487, + "blocked_queries": 417, + "block_rate_percent": 85.63, + "unique_domains": 13, + "last_query_epoch": 1788580466.2811863, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "tpc.googlesyndication.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 222, + "blocked": 214, + "allowed": 8 + }, + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 204, + "blocked": 202, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 1, + "allowed": 1 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 422, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788580767.6882203, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 422, + "blocked": 0, + "allowed": 422 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 360, + "blocked_queries": 30, + "block_rate_percent": 8.33, + "unique_domains": 81, + "last_query_epoch": 1788580542.6919467, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "safebrowsing.googleapis.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.150", + "domain": "p33-bookmarks.icloud.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.150", + "domain": "_bookmarkdavs._tcp.p33-bookmarks.icloud.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "mesu.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 264, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788580642.7306213, + "deco": { + "ip": "192.168.68.135", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 264, + "blocked": 0, + "allowed": 264 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 215, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788580617.5360088, + "deco": { + "ip": "192.168.68.121", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:31:17.666289+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "time.cloudflare.com", + "queries": 215, + "blocked": 0, + "allowed": 215 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 177, + "blocked_queries": 36, + "block_rate_percent": 20.34, + "unique_domains": 10, + "last_query_epoch": 1788579278.9521372, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 77, + "blocked": 0, + "allowed": 77 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 92, + "blocked_queries": 1, + "block_rate_percent": 1.09, + "unique_domains": 24, + "last_query_epoch": 1788566201.4572563, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "todo-ta-g7g.amazon.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.104", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.104", + "domain": "device-messaging-na.amazon.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.104", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.104", + "domain": "podcast.emmint.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.104", + "domain": "s3.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "_dns.resolver.arpa", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "pins.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "api.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 58, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1788576462.4397418, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-7c74fffc718ed01.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-15ce3e0b80af991.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "downloads.mycloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 53, + "blocked_queries": 29, + "block_rate_percent": 54.72, + "unique_domains": 19, + "last_query_epoch": 1788557752.081262, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "google.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.130", + "domain": "46-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "meta.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.130", + "domain": "messenger.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.130", + "domain": "x.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "facebook.com", + "queries": 8, + "blocked": 4, + "allowed": 4 + }, + { + "ip": "192.168.68.130", + "domain": "instagram.com", + "queries": 8, + "blocked": 3, + "allowed": 5 + }, + { + "ip": "192.168.68.130", + "domain": "youtube.com", + "queries": 5, + "blocked": 3, + "allowed": 2 + }, + { + "ip": "192.168.68.130", + "domain": "www.facebook.com", + "queries": 3, + "blocked": 2, + "allowed": 1 + }, + { + "ip": "192.168.68.130", + "domain": "fbcdn.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "facebook.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "www.instagram.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "static.xx.fbcdn.net", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.130", + "domain": "m.facebook.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 52, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788577733.3843946, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.128", + "domain": "litedev.us.ezvizlife.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788579440.4526987, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 31, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 9, + "last_query_epoch": 1788575423.0455186, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.127", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.127", + "domain": "guzzoni.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.127", + "domain": "mesu.g.aaplimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "mesu.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "mesu-cdn.origin-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.127", + "domain": "guzzoni-apple-com.v.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 17, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1788566135.9215589, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "mnz-efz.ms-acdc.office.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.102", + "domain": "gsp-ssl.ls.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.102", + "domain": "us-se-courier-4.push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "mtalk.google.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "us-sandbox-courier-4.push-apple.com.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "paseo-relay-next.fly.dev", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "outlook.office365.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "get-bx.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 14, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788532166.1214683, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 3, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788531838.482093, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788572136.9600554, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788566616.3578796, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788529710.45562, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.127", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.127", + "domain": "guzzoni.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.127", + "domain": "mesu.g.aaplimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "mesu.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "mesu-cdn.origin-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.127", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.127", + "domain": "guzzoni-apple-com.v.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.122", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788529055.1636543, + "deco": { + "ip": "192.168.68.122", + "mac": "48-D6-D5-7B-91-C5", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T03:51:27.947620+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.122", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-04.md b/projects/network_usage/reports/2026-09-04.md new file mode 100644 index 0000000..f9794fe --- /dev/null +++ b/projects/network_usage/reports/2026-09-04.md @@ -0,0 +1,632 @@ +# Pi-hole DNS usage — 2026-09-04 + +Window: 2026-09-04T00:00:00-04:00 to 2026-09-05T00:00:00-04:00 (America/New_York) +Generated: 2026-09-05T00:15:26.487880-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Office | 41,774 | 3,181 | 7.61% | `internalfb.com` | `www.internalfb.com` | +| Mac | 192.168.68.108 | Hallway | 11,614 | 952 | 8.20% | `whatsapp.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.105 | Hallway | 9,731 | 1,452 | 14.92% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.111 | Hallway | 7,908 | 662 | 8.37% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.106 | Hallway | 7,066 | 777 | 11.00% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 5,901 | 5,178 | 87.75% | `nrdp.prod.ftl.netflix.com` | `liberty.logs.roku.com` | +| adolforeyna-iMac11-3 | 192.168.68.124 | WashMachine | 5,713 | 1,148 | 20.09% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| adolforeynaserver | 192.168.68.110 | Office | 5,294 | 224 | 4.23% | `chatgpt.com` | `telemetry.n8n.io` | +| aeropi5 | 192.168.68.126 | Office | 2,437 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,393 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPad-4 | 192.168.68.107 | WashMachine | 1,879 | 304 | 16.18% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| emiserver | 192.168.68.119 | Office | 1,766 | 0 | 0.00% | `api.telegram.org` | `—` | +| iPad | 192.168.68.129 | Study | 1,566 | 53 | 3.38% | `mask.apple-dns.net` | `app-analytics-services.com` | +| localhost | 127.0.0.1 | not mapped | 668 | 0 | 0.00% | `local.api.ftl` | `—` | +| 50LivingRoom | 192.168.68.100 | Office | 487 | 417 | 85.63% | `themes-service.sr.roku.com` | `liberty.logs.roku.com` | +| espressif | 192.168.68.113 | Study | 422 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 360 | 30 | 8.33% | `safebrowsing.googleapis.com` | `fbs.smoot.apple.com` | +| espressif | 192.168.68.135 | WashMachine | 264 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.121 | Casita | 215 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 177 | 36 | 20.34% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Unknown device | 192.168.68.104 | not mapped | 92 | 1 | 1.09% | `todo-ta-g7g.amazon.com` | `unagi-na.amazon.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 58 | 0 | 0.00% | `prod-gateway.wdckeystone.com` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 53 | 29 | 54.72% | `google.com` | `x.com` | +| E31868152 | 192.168.68.128 | Barn | 52 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| macm1.reynafamily.com | 192.168.68.127 | not mapped | 31 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Mac | 192.168.68.102 | Office | 17 | 0 | 0.00% | `mnz-efz.ms-acdc.office.com` | `—` | +| Unknown device | 192.168.68.132 | not mapped | 14 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Unknown device | 192.168.68.131 | not mapped | 3 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 2 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Unknown device | 192.168.68.117 | not mapped | 2 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Unknown device | 192.168.68.127 | not mapped | 1 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Google-Home-Mini | 192.168.68.122 | Office | 1 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 41,774; blocked: 3,181; block rate: 7.61%; unique domains: 674. + +Top visited (not blocked): +- internalfb.com — 2,758 +- ssl.gstatic.com — 1,131 +- beacons.gcp.gvt2.com — 1,006 +- play.google.com — 932 +- api.manus.im — 909 +- chat.google.com — 579 +- signaler-pa.clients6.google.com — 446 +- waa-pa.clients6.google.com — 396 +- google.com — 396 +- 1.courier-push-apple.com.akadns.net — 391 +Top blocked: +- www.internalfb.com — 746 blocked of 7,775 +- chromereporting-pa.googleapis.com — 468 blocked of 480 +- graph.facebook.com — 333 blocked of 3,746 +- graph.prod.facebook.com — 226 blocked of 616 +- us-v20.events.data.microsoft.com — 168 blocked of 174 +- interngraph.internmc.facebook.com — 152 blocked of 447 +- www.facebook.com — 140 blocked of 425 +- star.c10r.facebook.com — 122 blocked of 1,196 +- stocks-analytics-events.apple.com — 64 blocked of 66 +- www.youtube.com — 60 blocked of 159 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 11,614; blocked: 952; block rate: 8.20%; unique domains: 498. + +Top visited (not blocked): +- whatsapp.com — 748 +- chat.openai.com — 424 +- mask.apple-dns.net — 345 +- chatgpt.com — 344 +- mmx-ds.cdn.whatsapp.net — 310 +- ssl.gstatic.com — 307 +- www.google.com — 294 +- ab.chatgpt.com — 252 +- cloud.reynafamily.com — 240 +- signaler-pa.clients6.google.com — 232 +Top blocked: +- dit.whatsapp.net — 723 blocked of 728 +- x.com — 56 blocked of 72 +- fbs.smoot.apple.com — 48 blocked of 48 +- slackb.com — 44 blocked of 44 +- partiality.itunes.apple.com — 11 blocked of 11 +- cf.iadsdk.apple.com — 11 blocked of 11 +- ogads-pa.clients6.google.com — 10 blocked of 10 +- analytics.google.com — 8 blocked of 8 +- cdn3.optimizely.com — 6 blocked of 6 +- experiments.apple.com — 3 blocked of 3 + +### iPhone (192.168.68.105) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: multiple_identities_seen. +Queries: 9,731; blocked: 1,452; block rate: 14.92%; unique domains: 848. + +Top visited (not blocked): +- mask.apple-dns.net — 411 +- ts01-b.csa.cloudsink.net — 409 +- outlook.office365.com — 326 +- mmx-ds.cdn.whatsapp.net — 303 +- www.google.com — 256 +- chat.cdn.whatsapp.net — 194 +- ts01-b.cloudsink.net — 186 +- oauthaccountmanager.googleapis.com — 109 +- mdm-na2.mobileiron.com — 106 +- whatsapp.com — 102 +Top blocked: +- dit.whatsapp.net — 520 blocked of 525 +- stocks-analytics-events.apple.com — 230 blocked of 230 +- app-analytics-services.com — 118 blocked of 120 +- app-measurement.com — 69 blocked of 72 +- cdp.customer.io — 55 blocked of 55 +- sdk.iad-01.braze.com — 41 blocked of 41 +- sdk.iad-05.braze.com — 39 blocked of 39 +- fbs.smoot.apple.com — 20 blocked of 20 +- youtubei.googleapis.com — 18 blocked of 82 +- unagi.amazon.com — 18 blocked of 18 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 7,908; blocked: 662; block rate: 8.37%; unique domains: 395. + +Top visited (not blocked): +- ssl.gstatic.com — 304 +- www.google.com — 299 +- outlook.cloud.microsoft — 232 +- optimizationguide-pa.googleapis.com — 228 +- usc-word-edit.officeapps.live.com — 210 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 182 +- chat.google.com — 182 +- www.apple.com — 179 +- api.apple-cloudkit.fe2.apple-dns.net — 160 +- mask.apple-dns.net — 155 +Top blocked: +- dit.whatsapp.net — 372 blocked of 378 +- word-telemetry.officeapps.live.com — 178 blocked of 186 +- track.capitaloneshopping.com — 30 blocked of 32 +- sentry.bga.li — 24 blocked of 24 +- bam.nr-data.net — 12 blocked of 28 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- analytics.google.com — 8 blocked of 8 +- iadsdk.apple.com — 6 blocked of 6 +- ogads-pa.clients6.google.com — 4 blocked of 4 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 7,066; blocked: 777; block rate: 11.00%; unique domains: 1,256. + +Top visited (not blocked): +- mask.apple-dns.net — 239 +- outlook.office365.com — 200 +- mmx-ds.cdn.whatsapp.net — 101 +- www.google.com — 93 +- bag-cdn.itunes-apple.com.akadns.net — 78 +- chat.cdn.whatsapp.net — 67 +- whatsapp.com — 64 +- imap.gmail.com — 63 +- ts01-b.csa.cloudsink.net — 59 +- ocsp2.apple.com — 56 +Top blocked: +- dit.whatsapp.net — 198 blocked of 198 +- app-analytics-services.com — 78 blocked of 78 +- sdk.iad-01.braze.com — 54 blocked of 54 +- fbs.smoot.apple.com — 30 blocked of 30 +- analytics.google.com — 20 blocked of 20 +- app-measurement.com — 19 blocked of 19 +- monorail-edge.shopifysvc.com — 15 blocked of 15 +- clienttracing-pa.googleapis.com — 15 blocked of 15 +- trk.pinterest.com — 14 blocked of 14 +- ct.pinterest.com — 14 blocked of 14 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 5,901; blocked: 5,178; block rate: 87.75%; unique domains: 63. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 138 +- www.youtube.com — 133 +- nrdp.push.prod.netflix.com — 113 +- api.roku.com — 29 +- nrdp51-appboot.netflix.com — 25 +- themes-service.sr.roku.com — 24 +- i.ytimg.com — 22 +- googleads.g.doubleclick.net — 18 +- mediaservices.cdn-apple.com — 14 +- nrdp.prod.cloud.netflix.com — 10 +Top blocked: +- liberty.logs.roku.com — 3,164 blocked of 3,170 +- scribe.logs.roku.com — 1,538 blocked of 1,540 +- nrdp.logs.netflix.com — 254 blocked of 264 +- logs.netflix.com — 189 blocked of 199 +- cloudservices.roku.com — 28 blocked of 28 +- display.ravm.tv — 4 blocked of 6 +- identity.ads.roku.com — 1 blocked of 1 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: WashMachine; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,713; blocked: 1,148; block rate: 20.09%; unique domains: 139. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,948 +- connectivity-check.ubuntu.com — 581 +- chatgpt.com — 537 +- firefox.settings.services.mozilla.com — 159 +- push.services.mozilla.com — 146 +- www.recaptcha.net — 116 +- www.gstatic.com — 116 +- filters.adtidy.org — 116 +- merino.services.mozilla.com — 106 +- fonts.gstatic.com — 94 +Top blocked: +- cdp.cloud.unity3d.com — 827 blocked of 839 +- incoming.telemetry.mozilla.org — 270 blocked of 270 +- pi.reddit.com — 6 blocked of 6 +- csp.withgoogle.com — 6 blocked of 6 +- s.amazon-adsystem.com — 5 blocked of 5 +- confiant-integrations.global.ssl.fastly.net — 5 blocked of 5 +- c.amazon-adsystem.com — 5 blocked of 5 +- btloader.com — 5 blocked of 5 +- analytics.google.com — 5 blocked of 5 +- w3-reporting.reddit.com — 3 blocked of 3 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 5,294; blocked: 224; block rate: 4.23%; unique domains: 39. + +Top visited (not blocked): +- chatgpt.com — 3,672 +- media.reynafamily.com — 570 +- adolforeynaserver — 314 +- acme-v02.api.letsencrypt.org — 182 +- ph.n8n.io — 112 +- version.goauthentik.io — 48 +- api.github.com — 48 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- cdn.fwupd.org — 8 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,437; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,168 +- chatgpt.com — 949 +- herdr.dev — 195 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 16 +- canonical-bos01.cdn.snapcraftcontent.com — 4 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- cdn.fwupd.org — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,393; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,167 +- chatgpt.com — 919 +- herdr.dev — 184 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 14 +- canonical-bos01.cdn.snapcraftcontent.com — 4 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- cdn.fwupd.org — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,879; blocked: 304; block rate: 16.18%; unique domains: 262. + +Top visited (not blocked): +- mask.apple-dns.net — 337 +- _dns.resolver.arpa — 61 +- ocsp2.apple.com — 42 +- mask.icloud.com — 40 +- known-issues.v.aaplimg.com — 40 +- ocsp2.g.aaplimg.com — 38 +- m.sni.global.fastly.net — 30 +- time.g.aaplimg.com — 23 +- mask-api.icloud.com — 22 +- known-issues.apple.com — 22 +Top blocked: +- sdk.iad-01.braze.com — 244 blocked of 244 +- app-measurement.com — 34 blocked of 34 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- iadsdk.apple.com — 4 blocked of 4 +- experiments.apple.com — 4 blocked of 4 +- fbs.smoot.apple.com — 2 blocked of 2 +- crashlyticsreports-pa.googleapis.com — 2 blocked of 2 +- banner.youversionapi.com — 2 blocked of 2 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 1,766; blocked: 0; block rate: 0.00%; unique domains: 24. + +Top visited (not blocked): +- api.telegram.org — 1,114 +- chatgpt.com — 510 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- motd.ubuntu.com — 6 +- cdn.fwupd.org — 6 +- ec2-89-192-235-234.compute-1.amazonaws.com — 4 +- ec2-89-192-235-227.compute-1.amazonaws.com — 4 +- ec2-89-192-235-218.compute-1.amazonaws.com — 4 +Top blocked: +- none + +### iPad (192.168.68.129) +Location: Study; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,566; blocked: 53; block rate: 3.38%; unique domains: 236. + +Top visited (not blocked): +- mask.apple-dns.net — 302 +- iphone-ld.apple.com — 56 +- _dns.resolver.arpa — 55 +- ocsp2.apple.com — 42 +- mask.icloud.com — 42 +- iphone-ld.g.aaplimg.com — 41 +- configuration.ls.apple.com — 40 +- ocsp2.g.aaplimg.com — 30 +- gdmf.apple.com — 26 +- configuration.ls.v.aaplimg.com — 22 +Top blocked: +- app-analytics-services.com — 17 blocked of 17 +- app-measurement.com — 12 blocked of 12 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- fbs.smoot.apple.com — 6 blocked of 8 +- trk.pinterest.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 668; blocked: 0; block rate: 0.00%; unique domains: 37. + +Top visited (not blocked): +- local.api.ftl — 35 +- 8.8.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 487; blocked: 417; block rate: 85.63%; unique domains: 13. + +Top visited (not blocked): +- themes-service.sr.roku.com — 24 +- api.roku.com — 24 +- sw-update.cs.roku.com — 2 +- mediaservices.cdn-apple.com — 2 +- austin.sb.roku.com — 2 +- tpc.googlesyndication.com — 1 +- lat-services.api.data.roku.com — 1 +- identity.ads.roku.com — 1 +- hints.voice.roku.com — 1 +- api2.sr.roku.com — 1 +Top blocked: +- liberty.logs.roku.com — 214 blocked of 222 +- scribe.logs.roku.com — 202 blocked of 204 +- display.ravm.tv — 1 blocked of 2 + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 422; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 422 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 360; blocked: 30; block rate: 8.33%; unique domains: 81. + +Top visited (not blocked): +- safebrowsing.googleapis.com — 44 +- time-ios.apple.com — 33 +- gateway.fe2.apple-dns.net — 26 +- p33-bookmarks.icloud.com — 22 +- _bookmarkdavs._tcp.p33-bookmarks.icloud.com — 22 +- ocsp.apple.com — 18 +- gateway.icloud.com — 16 +- mesu.apple.com — 8 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +Top blocked: +- fbs.smoot.apple.com — 22 blocked of 22 +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.135) +Location: WashMachine; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 264; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 264 +Top blocked: +- none + +### espressif (192.168.68.121) +Location: Casita; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 215; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 215 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 177; blocked: 36; block rate: 20.34%; unique domains: 10. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 77 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 46 +- www.amazon.com — 7 +- m.media-amazon.com — 4 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 36 blocked of 36 + +### Unknown device (192.168.68.104) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 92; blocked: 1; block rate: 1.09%; unique domains: 24. + +Top visited (not blocked): +- todo-ta-g7g.amazon.com — 25 +- dogvgb9ujhybx.cloudfront.net — 10 +- device-messaging-na.amazon.com — 9 +- ms-cam-u011.immedia-semi.com — 8 +- podcast.emmint.com — 6 +- s3.amazonaws.com — 4 +- _dns.resolver.arpa — 4 +- us-se-courier-vs.push-apple.com.akadns.net — 2 +- pins.amazon.com — 2 +- api.amazon.com — 2 +Top blocked: +- unagi-na.amazon.com — 1 blocked of 1 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 58; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod-gateway.wdckeystone.com — 16 +- prod-proxy.wdckeystone.com — 10 +- prod.wdckeystone.com — 6 +- prod-fc14d21a5887149.wdckeystone.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- google.com — 4 +- prod-7c74fffc718ed01.wdckeystone.com — 2 +- prod-15ce3e0b80af991.wdckeystone.com — 2 +- downloads.mycloud.com — 2 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 53; blocked: 29; block rate: 54.72%; unique domains: 19. + +Top visited (not blocked): +- google.com — 5 +- 46-courier.push.apple.com — 3 +- meta.com — 2 +- messenger.com — 2 +Top blocked: +- x.com — 5 blocked of 5 +- facebook.com — 4 blocked of 8 +- instagram.com — 3 blocked of 8 +- youtube.com — 3 blocked of 5 +- www.facebook.com — 2 blocked of 3 +- fbcdn.net — 2 blocked of 2 +- facebook.net — 2 blocked of 2 +- www.instagram.com — 1 blocked of 1 +- static.xx.fbcdn.net — 1 blocked of 1 +- m.facebook.com — 1 blocked of 1 + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 52; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 50 +- litedev.us.ezvizlife.com — 2 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### macm1.reynafamily.com (192.168.68.127) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 31; blocked: 0; block rate: 0.00%; unique domains: 9. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 14 +- podcast.emmint.com — 4 +- guzzoni.apple.com — 4 +- mesu.g.aaplimg.com — 2 +- mesu.apple.com — 2 +- mesu-cdn.origin-apple.com.akadns.net — 2 +- _dns.resolver.arpa — 2 +- s3.amazonaws.com — 1 +- guzzoni-apple-com.v.aaplimg.com — 1 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 17; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- mnz-efz.ms-acdc.office.com — 3 +- gsp-ssl.ls.apple.com — 3 +- us-se-courier-4.push-apple.com.akadns.net — 2 +- mtalk.google.com — 2 +- us-sandbox-courier-4.push-apple.com.akadns.net — 1 +- paseo-relay-next.fly.dev — 1 +- outlook.office365.com — 1 +- local — 1 +- get-bx.g.aaplimg.com — 1 +- api.apple-cloudkit.fe2.apple-dns.net — 1 +Top blocked: +- none + +### Unknown device (192.168.68.132) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 14; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 14 +Top blocked: +- none + +### Unknown device (192.168.68.131) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 3 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 2 +Top blocked: +- none + +### Unknown device (192.168.68.117) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.127) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 14 +- podcast.emmint.com — 4 +- guzzoni.apple.com — 4 +- mesu.g.aaplimg.com — 2 +- mesu.apple.com — 2 +- mesu-cdn.origin-apple.com.akadns.net — 2 +- _dns.resolver.arpa — 2 +- s3.amazonaws.com — 1 +- guzzoni-apple-com.v.aaplimg.com — 1 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.122) +Location: Office; MAC: 48-D6-D5-7B-91-C5; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-05.json b/projects/network_usage/reports/2026-09-05.json new file mode 100644 index 0000000..f6184bf --- /dev/null +++ b/projects/network_usage/reports/2026-09-05.json @@ -0,0 +1,3760 @@ +{ + "schema_version": 2, + "day": "2026-09-05", + "timezone": "America/New_York", + "generated_at": "2026-09-06T00:15:12.145470-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-05T00:00:00-04:00", + "end_local": "2026-09-06T00:00:00-04:00", + "start_epoch": 1788580800, + "end_epoch": 1788667200 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 13720 + }, + { + "status": 2, + "queries": 13727 + }, + { + "status": 3, + "queries": 38990 + }, + { + "status": 4, + "queries": 413 + }, + { + "status": 5, + "queries": 6 + }, + { + "status": 9, + "queries": 2173 + }, + { + "status": 10, + "queries": 63 + }, + { + "status": 12, + "queries": 11 + }, + { + "status": 14, + "queries": 2246 + }, + { + "status": 16, + "queries": 393 + }, + { + "status": 17, + "queries": 30810 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 38, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 15668, + "blocked_queries": 2827, + "block_rate_percent": 18.04, + "unique_domains": 1869, + "last_query_epoch": 1788667167.2049966, + "deco": { + "ip": "192.168.68.105", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:40:55.438146+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 365, + "blocked": 0, + "allowed": 365 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 344, + "blocked": 0, + "allowed": 344 + }, + { + "ip": "192.168.68.105", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 175, + "blocked": 0, + "allowed": 175 + }, + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 133, + "blocked": 0, + "allowed": 133 + }, + { + "ip": "192.168.68.105", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 108, + "blocked": 0, + "allowed": 108 + }, + { + "ip": "192.168.68.105", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 104, + "blocked": 0, + "allowed": 104 + }, + { + "ip": "192.168.68.105", + "domain": "imap.gmail.com", + "queries": 101, + "blocked": 0, + "allowed": 101 + }, + { + "ip": "192.168.68.105", + "domain": "btlr.sharethrough.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.105", + "domain": "logs.ads.vungle.com", + "queries": 71, + "blocked": 0, + "allowed": 71 + }, + { + "ip": "192.168.68.105", + "domain": "ocsp2.apple.com", + "queries": 70, + "blocked": 0, + "allowed": 70 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 407, + "blocked": 405, + "allowed": 2 + }, + { + "ip": "192.168.68.105", + "domain": "ep2.facebook.com", + "queries": 150, + "blocked": 150, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "app-analytics-services.com", + "queries": 130, + "blocked": 130, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "g2.gumgum.com", + "queries": 121, + "blocked": 121, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "et-eus.w.inmobi.com", + "queries": 109, + "blocked": 109, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "ts.amazon-adsystem.com", + "queries": 99, + "blocked": 99, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "eus-r.w.inmobi.com", + "queries": 95, + "blocked": 95, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 93, + "blocked": 93, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "sdk.iad-01.braze.com", + "queries": 90, + "blocked": 90, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "unagi-na.amazon.com", + "queries": 83, + "blocked": 83, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 14592, + "blocked_queries": 1789, + "block_rate_percent": 12.26, + "unique_domains": 443, + "last_query_epoch": 1788666603.7298985, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 719, + "blocked": 0, + "allowed": 719 + }, + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 653, + "blocked": 0, + "allowed": 653 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 547, + "blocked": 0, + "allowed": 547 + }, + { + "ip": "192.168.68.108", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 477, + "blocked": 0, + "allowed": 477 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 454, + "blocked": 0, + "allowed": 454 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 444, + "blocked": 0, + "allowed": 444 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 391, + "blocked": 0, + "allowed": 391 + }, + { + "ip": "192.168.68.108", + "domain": "apple.com", + "queries": 379, + "blocked": 0, + "allowed": 379 + }, + { + "ip": "192.168.68.108", + "domain": "us-sandbox-courier-4.push-apple.com.akadns.net", + "queries": 366, + "blocked": 0, + "allowed": 366 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 362, + "blocked": 0, + "allowed": 362 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 1605, + "blocked": 1605, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 64, + "blocked": 64, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "collector.github.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "browser-update.org", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "iadsdk.apple.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 13502, + "blocked_queries": 1993, + "block_rate_percent": 14.76, + "unique_domains": 532, + "last_query_epoch": 1788667193.5735798, + "deco": { + "ip": "192.168.68.111", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 784, + "blocked": 0, + "allowed": 784 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 627, + "blocked": 0, + "allowed": 627 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 542, + "blocked": 0, + "allowed": 542 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 500, + "blocked": 0, + "allowed": 500 + }, + { + "ip": "192.168.68.111", + "domain": "wordonline.nel.measure.office.net", + "queries": 417, + "blocked": 0, + "allowed": 417 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 362, + "blocked": 0, + "allowed": 362 + }, + { + "ip": "192.168.68.111", + "domain": "play.google.com", + "queries": 270, + "blocked": 0, + "allowed": 270 + }, + { + "ip": "192.168.68.111", + "domain": "c.pub.network", + "queries": 266, + "blocked": 0, + "allowed": 266 + }, + { + "ip": "192.168.68.111", + "domain": "signaler-pa.clients6.google.com", + "queries": 248, + "blocked": 0, + "allowed": 248 + }, + { + "ip": "192.168.68.111", + "domain": "waa-pa.clients6.google.com", + "queries": 218, + "blocked": 0, + "allowed": 218 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 912, + "blocked": 912, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 454, + "blocked": 454, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 316, + "blocked": 278, + "allowed": 38 + }, + { + "ip": "192.168.68.111", + "domain": "sentry.bga.li", + "queries": 100, + "blocked": 100, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bat.bing.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "acsbapp.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ogads-pa.clients6.google.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "fbs.smoot.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 11173, + "blocked_queries": 393, + "block_rate_percent": 3.52, + "unique_domains": 316, + "last_query_epoch": 1788666600.7668064, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 666, + "blocked": 0, + "allowed": 666 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 198, + "blocked": 0, + "allowed": 198 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 195, + "blocked": 0, + "allowed": 195 + }, + { + "ip": "192.168.68.112", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 177, + "blocked": 0, + "allowed": 177 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 171, + "blocked": 0, + "allowed": 171 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 171, + "blocked": 0, + "allowed": 171 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.fe2.apple-dns.net", + "queries": 167, + "blocked": 0, + "allowed": 167 + }, + { + "ip": "192.168.68.112", + "domain": "mask.apple-dns.net", + "queries": 166, + "blocked": 0, + "allowed": 166 + }, + { + "ip": "192.168.68.112", + "domain": "chat.openai.com", + "queries": 164, + "blocked": 0, + "allowed": 164 + }, + { + "ip": "192.168.68.112", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 148, + "blocked": 0, + "allowed": 148 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "chromereporting-pa.googleapis.com", + "queries": 117, + "blocked": 117, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 1963, + "blocked": 57, + "allowed": 1906 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 31, + "blocked": 31, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 241, + "blocked": 30, + "allowed": 211 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 1092, + "blocked": 28, + "allowed": 1064 + }, + { + "ip": "192.168.68.112", + "domain": "collector.github.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "beacon.flexera-prod.aws.metafb.cloud", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 67, + "blocked": 14, + "allowed": 53 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 103, + "blocked": 12, + "allowed": 91 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 8507, + "blocked_queries": 1214, + "block_rate_percent": 14.27, + "unique_domains": 761, + "last_query_epoch": 1788660779.3623421, + "deco": { + "ip": "192.168.68.106", + "mac": "56-68-92-84-12-EE", + "hostname": "Alicia-2022-2", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-06T01:11:41.517568+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 287, + "blocked": 0, + "allowed": 287 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 242, + "blocked": 0, + "allowed": 242 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 209, + "blocked": 0, + "allowed": 209 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 202, + "blocked": 0, + "allowed": 202 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 152, + "blocked": 0, + "allowed": 152 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.cloudsink.net", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.106", + "domain": "whatsapp.com", + "queries": 135, + "blocked": 0, + "allowed": 135 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 130, + "blocked": 0, + "allowed": 130 + }, + { + "ip": "192.168.68.106", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 106, + "blocked": 0, + "allowed": 106 + }, + { + "ip": "192.168.68.106", + "domain": "mdm-na2.mobileiron.com", + "queries": 102, + "blocked": 0, + "allowed": 102 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 297, + "blocked": 297, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 195, + "blocked": 195, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "cdp.customer.io", + "queries": 89, + "blocked": 89, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 81, + "blocked": 81, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "events.flagship.io", + "queries": 74, + "blocked": 74, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 72, + "blocked": 72, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "unagi-na.amazon.com", + "queries": 60, + "blocked": 60, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "unagi.amazon.com", + "queries": 57, + "blocked": 57, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "uslog.ezvizlife.com", + "queries": 43, + "blocked": 43, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "bugsnag.com", + "queries": 37, + "blocked": 37, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 6250, + "blocked_queries": 232, + "block_rate_percent": 3.71, + "unique_domains": 58, + "last_query_epoch": 1788667165.036193, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 4072, + "blocked": 0, + "allowed": 4072 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 326, + "blocked": 0, + "allowed": 326 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 264, + "blocked": 0, + "allowed": 264 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 184, + "blocked": 0, + "allowed": 184 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 118, + "blocked": 0, + "allowed": 118 + }, + { + "ip": "192.168.68.110", + "domain": "ghcr.io", + "queries": 84, + "blocked": 0, + "allowed": 84 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "auth.openai.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 232, + "blocked": 232, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5234, + "blocked_queries": 1089, + "block_rate_percent": 20.81, + "unique_domains": 41, + "last_query_epoch": 1788667127.2535138, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1977, + "blocked": 0, + "allowed": 1977 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 579, + "blocked": 0, + "allowed": 579 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 531, + "blocked": 0, + "allowed": 531 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 165, + "blocked": 0, + "allowed": 165 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 118, + "blocked": 0, + "allowed": 118 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 837, + "blocked": 837, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 252, + "blocked": 252, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 4286, + "blocked_queries": 704, + "block_rate_percent": 16.43, + "unique_domains": 828, + "last_query_epoch": 1788613966.0596054, + "deco": { + "ip": "192.168.68.133", + "mac": "C6-C3-37-60-5C-88", + "hostname": "Dzidula-s-S22", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T13:10:58.757184+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "google.com", + "queries": 212, + "blocked": 0, + "allowed": 212 + }, + { + "ip": "192.168.68.133", + "domain": "www.google.com", + "queries": 169, + "blocked": 0, + "allowed": 169 + }, + { + "ip": "192.168.68.133", + "domain": "opcode", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.133", + "domain": "tlx.3lift.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.133", + "domain": "pagead2.googlesyndication.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.133", + "domain": "eb2.3lift.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.133", + "domain": "rtb.openx.net", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.133", + "domain": "imp-dev.mediavine.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.133", + "domain": "graph.facebook.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.133", + "domain": "googleads4.g.doubleclick.net", + "queries": 30, + "blocked": 0, + "allowed": 30 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.133", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 103, + "blocked": 103, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "smetrics.t-mobile.com", + "queries": 83, + "blocked": 83, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "graph.instagram.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "static.adsafeprotected.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "onetag-sys.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "prebid.scope3.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "graph-fallback.instagram.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "id5-sync.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "cdn.doubleverify.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "c.amazon-adsystem.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 3414, + "blocked_queries": 879, + "block_rate_percent": 25.75, + "unique_domains": 484, + "last_query_epoch": 1788667172.7419124, + "deco": { + "ip": "192.168.68.121", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 128, + "blocked": 0, + "allowed": 128 + }, + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 111, + "blocked": 0, + "allowed": 111 + }, + { + "ip": "192.168.68.121", + "domain": "outlook.office365.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.121", + "domain": "chat.cdn.whatsapp.net", + "queries": 73, + "blocked": 0, + "allowed": 73 + }, + { + "ip": "192.168.68.121", + "domain": "whatsapp.com", + "queries": 69, + "blocked": 0, + "allowed": 69 + }, + { + "ip": "192.168.68.121", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.121", + "domain": "www.google.com", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.121", + "domain": "time.cloudflare.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.121", + "domain": "ts01-b.cloudsink.net", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.121", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "dit.whatsapp.net", + "queries": 281, + "blocked": 281, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "app-measurement.com", + "queries": 52, + "blocked": 51, + "allowed": 1 + }, + { + "ip": "192.168.68.121", + "domain": "app-analytics-services.com", + "queries": 52, + "blocked": 50, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "collector-pxuarm9b04.perimeterx.net", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "analytics.mobile.walmart.com", + "queries": 47, + "blocked": 47, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "sdk.iad-08.braze.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 37, + "blocked": 37, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "gateway.facebook.com", + "queries": 21, + "blocked": 18, + "allowed": 3 + }, + { + "ip": "192.168.68.121", + "domain": "sdk.iad-06.braze.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "web.facebook.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 3120, + "blocked_queries": 2766, + "block_rate_percent": 88.65, + "unique_domains": 16, + "last_query_epoch": 1788667185.2960536, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 131, + "blocked": 0, + "allowed": 131 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 129, + "blocked": 0, + "allowed": 129 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "longview.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2108, + "blocked": 2106, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 297, + "blocked": 297, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 200, + "blocked": 198, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 139, + "blocked": 139, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2407, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1788667144.0654078, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1171, + "blocked": 0, + "allowed": 1171 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 869, + "blocked": 0, + "allowed": 869 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 221, + "blocked": 0, + "allowed": 221 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.126", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.126", + "domain": "_https._tcp.packages.microsoft.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2337, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1788667144.0695908, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T02:41:47.202938+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1174, + "blocked": 0, + "allowed": 1174 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 826, + "blocked": 0, + "allowed": 826 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.116", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.116", + "domain": "_https._tcp.packages.microsoft.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 1945, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 29, + "last_query_epoch": 1788667133.095478, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1123, + "blocked": 0, + "allowed": 1123 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 651, + "blocked": 0, + "allowed": 651 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 23, + "blocked": 0, + "allowed": 23 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-234.compute-1.amazonaws.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 1824, + "blocked_queries": 1760, + "block_rate_percent": 96.49, + "unique_domains": 14, + "last_query_epoch": 1788666747.8235264, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api-g2.rokutime.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 1562, + "blocked": 1560, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 198, + "blocked": 196, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 1645, + "blocked_queries": 255, + "block_rate_percent": 15.5, + "unique_domains": 77, + "last_query_epoch": 1788636293.387179, + "deco": { + "ip": "192.168.68.127", + "mac": "5C-62-5A-F5-3F-BA", + "hostname": "c00000F53FBA", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-05T23:11:16.210998+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "google.com", + "queries": 732, + "blocked": 0, + "allowed": 732 + }, + { + "ip": "192.168.68.127", + "domain": "opcode", + "queries": 160, + "blocked": 0, + "allowed": 160 + }, + { + "ip": "192.168.68.127", + "domain": "www.google.com", + "queries": 127, + "blocked": 0, + "allowed": 127 + }, + { + "ip": "192.168.68.127", + "domain": "216.58.202.4.in-addr.arpa", + "queries": 105, + "blocked": 0, + "allowed": 105 + }, + { + "ip": "192.168.68.127", + "domain": "www.goooooooooooooooooooooooooooooooooooooooooooooooooooooooooogle.com", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.127", + "domain": "*google.com", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.127", + "domain": "google.com.onion", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.127", + "domain": "graph.facebook.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.127", + "domain": "play.googleapis.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.127", + "domain": "outlook.office365.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.127", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 231, + "blocked": 231, + "allowed": 0 + }, + { + "ip": "192.168.68.127", + "domain": "mobile.events.data.microsoft.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.127", + "domain": "app-measurement.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.127", + "domain": "in.appcenter.ms", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.127", + "domain": "collect.ureca-lab.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.127", + "domain": "dls-udc.dqa.samsung.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1614, + "blocked_queries": 41, + "block_rate_percent": 2.54, + "unique_domains": 250, + "last_query_epoch": 1788666733.4409316, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:10:52.636822+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 232, + "blocked": 0, + "allowed": 232 + }, + { + "ip": "192.168.68.129", + "domain": "sps-media.v.aaplimg.com", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.129", + "domain": "cma2.itunes.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.129", + "domain": "uts-api-cdn.itunes-apple.com.akadns.net", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "crashlogs.whatsapp.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "collector-pxhyx10rg3.perimeterx.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1050, + "blocked_queries": 111, + "block_rate_percent": 10.57, + "unique_domains": 165, + "last_query_epoch": 1788665900.45359, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 206, + "blocked": 0, + "allowed": 206 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.107", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "pancake.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 72, + "blocked": 72, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 850, + "blocked_queries": 229, + "block_rate_percent": 26.94, + "unique_domains": 219, + "last_query_epoch": 1788666837.2800546, + "deco": { + "ip": "192.168.68.117", + "mac": "24-FD-FA-03-53-0C", + "hostname": "ubuntu-server", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.117", + "domain": "mask.apple-dns.net", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.117", + "domain": "www.google.com", + "queries": 21, + "blocked": 0, + "allowed": 21 + }, + { + "ip": "192.168.68.117", + "domain": "play.googleapis.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.117", + "domain": "flag.lab.amplitude.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.117", + "domain": "chat.cdn.whatsapp.net", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.117", + "domain": "api.lab.amplitude.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.117", + "domain": "eu.tectonic.remarkable.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.117", + "domain": "m.sni.global.fastly.net", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.117", + "domain": "cdn.branch.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "dit.whatsapp.net", + "queries": 84, + "blocked": 84, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "app-analytics-services.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "sdk.iad-01.braze.com", + "queries": 35, + "blocked": 35, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "app-measurement.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "browser-intake-datadoghq.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "receive-lp1.dg.srv.nintendo.net", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "in.appcenter.ms", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 724, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 38, + "last_query_epoch": 1788663600.8071837, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "114.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "113.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "112.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 709, + "blocked_queries": 28, + "block_rate_percent": 3.95, + "unique_domains": 151, + "last_query_epoch": 1788613936.1992898, + "deco": { + "ip": "192.168.68.132", + "mac": "CA-75-80-F1-99-94", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T13:10:58.757184+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 75, + "blocked": 0, + "allowed": 75 + }, + { + "ip": "192.168.68.132", + "domain": "lb._dns-sd._udp.2.0.0.192.in-addr.arpa", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.132", + "domain": "lb._dns-sd._udp.131.150.49.28.in-addr.arpa", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.132", + "domain": "mask.apple-dns.net", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.132", + "domain": "weatherkit.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.132", + "domain": "ocsp2.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.132", + "domain": "flag.lab.amplitude.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.132", + "domain": "_dns.resolver.arpa", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.132", + "domain": "weatherkit.apple.com.akadns.net", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.132", + "domain": "fp-us-tmobile.rcs.telephony.goog", + "queries": 10, + "blocked": 0, + "allowed": 10 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.132", + "domain": "app-analytics-services.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "sdk.iad-01.braze.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "app-measurement.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 473, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788666900.7569194, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 473, + "blocked": 0, + "allowed": 473 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 433, + "blocked_queries": 22, + "block_rate_percent": 5.08, + "unique_domains": 125, + "last_query_epoch": 1788667143.9760525, + "deco": { + "ip": "192.168.68.131", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "time.cloudflare.com", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.131", + "domain": "www.google.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.131", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.131", + "domain": "people-pa.googleapis.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "mask.apple-dns.net", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "lh3.googleusercontent.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.131", + "domain": "us.telemetry.zoom.us", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.131", + "domain": "gs-loc.ls-apple.com.akadns.net", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.131", + "domain": "dit.whatsapp.net", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "teams.events.data.microsoft.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "log-gateway.zoom.us", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "ic3.events.data.microsoft.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "adserver.pandora.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 193, + "blocked_queries": 33, + "block_rate_percent": 17.1, + "unique_domains": 19, + "last_query_epoch": 1788666983.3119426, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 75, + "blocked": 0, + "allowed": 75 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "pins.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "7a6e3418b2b39c5852077c212b8b75b4.00672507000024.kindle-perf.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "shm.amazon.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 33, + "blocked": 33, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 191, + "blocked_queries": 2, + "block_rate_percent": 1.05, + "unique_domains": 12, + "last_query_epoch": 1788666877.4129827, + "deco": { + "ip": "192.168.68.104", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "time.cloudflare.com", + "queries": 150, + "blocked": 0, + "allowed": 150 + }, + { + "ip": "192.168.68.104", + "domain": "todo-ta-g7g.amazon.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.104", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.104", + "domain": "device-messaging-na.amazon.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.104", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.104", + "domain": "pins.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "is-cam-u011.immedia-semi.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "ntp-g7g.amazon.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.tactilityproject.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 162, + "blocked_queries": 8, + "block_rate_percent": 4.94, + "unique_domains": 41, + "last_query_epoch": 1788666886.6668308, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.150", + "domain": "iphonesubmissions.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.150", + "domain": "www.icloud.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 67, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788611878.022268, + "deco": { + "ip": "192.168.68.135", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T09:31:11.446898+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.135", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 50, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1788662433.5529234, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-15ce3e0b80af991.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "downloads.mycloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 49, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788664230.2466524, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.128", + "domain": "pmsus1.ezvizlife.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 49, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788665855.1398523, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.125", + "domain": "pmsus1.ezvizlife.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 22, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 5, + "last_query_epoch": 1788608021.3535347, + "deco": { + "ip": "192.168.68.136", + "mac": "24-FD-FA-03-53-0C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-05T12:10:55.660403+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "eu.tectonic.remarkable.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.136", + "domain": "webapp-prod.cloud.remarkable.engineering", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.136", + "domain": "ping.remarkable.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "device.cloud.remarkable.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "dev.tectonic.remarkable.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "172.22.0.1", + "pihole_name": "cloud.reynafamily.com", + "queries": 7, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 5, + "last_query_epoch": 1788659851.8176663, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "youtube.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "example.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "colanode.reynafamily.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "instagram.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "facebook.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788665451.541896, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788659940.0604608, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T03:50:57.420638+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "colanode.reynafamily.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "172.22.0.1", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788647311.9965277, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "youtube.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "example.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "colanode.reynafamily.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "instagram.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "facebook.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-05.md b/projects/network_usage/reports/2026-09-05.md new file mode 100644 index 0000000..4f0f4be --- /dev/null +++ b/projects/network_usage/reports/2026-09-05.md @@ -0,0 +1,703 @@ +# Pi-hole DNS usage — 2026-09-05 + +Window: 2026-09-05T00:00:00-04:00 to 2026-09-06T00:00:00-04:00 (America/New_York) +Generated: 2026-09-06T00:15:12.145470-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| iPhone | 192.168.68.105 | Hallway | 15,668 | 2,827 | 18.04% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.108 | Hallway | 14,592 | 1,789 | 12.26% | `www.google.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.111 | Hallway | 13,502 | 1,993 | 14.76% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.112 | Office | 11,173 | 393 | 3.52% | `internalfb.com` | `chromereporting-pa.googleapis.com` | +| Alicia-2022-2 | 192.168.68.106 | Office | 8,507 | 1,214 | 14.27% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 6,250 | 232 | 3.71% | `chatgpt.com` | `telemetry.n8n.io` | +| adolforeyna-iMac11-3 | 192.168.68.124 | WashMachine | 5,234 | 1,089 | 20.81% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| Dzidula-s-S22 | 192.168.68.133 | Barn | 4,286 | 704 | 16.43% | `google.com` | `mobile.pipe.aria.microsoft.com` | +| iPhone | 192.168.68.121 | Hallway | 3,414 | 879 | 25.75% | `mmx-ds.cdn.whatsapp.net` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 3,120 | 2,766 | 88.65% | `nrdp.prod.ftl.netflix.com` | `scribe.logs.roku.com` | +| aeropi5 | 192.168.68.126 | Office | 2,407 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,337 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| emiserver | 192.168.68.119 | Office | 1,945 | 0 | 0.00% | `api.telegram.org` | `—` | +| 50LivingRoom | 192.168.68.100 | Office | 1,824 | 1,760 | 96.49% | `api.roku.com` | `scribe.logs.roku.com` | +| c00000F53FBA | 192.168.68.127 | Office | 1,645 | 255 | 15.50% | `google.com` | `mobile.pipe.aria.microsoft.com` | +| iPad | 192.168.68.129 | Study | 1,614 | 41 | 2.54% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 1,050 | 111 | 10.57% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| ubuntu-server | 192.168.68.117 | Study | 850 | 229 | 26.94% | `mmx-ds.cdn.whatsapp.net` | `dit.whatsapp.net` | +| localhost | 127.0.0.1 | not mapped | 724 | 0 | 0.00% | `4.4.8.8.in-addr.arpa` | `—` | +| iPhone | 192.168.68.132 | Hallway | 709 | 28 | 3.95% | `lb._dns-sd._udp.0.68.168.192.in-addr.arpa` | `app-analytics-services.com` | +| espressif | 192.168.68.113 | Study | 473 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.131 | Office | 433 | 22 | 5.08% | `time.cloudflare.com` | `dit.whatsapp.net` | +| Amazon | 192.168.68.134 | Office | 193 | 33 | 17.10% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| espressif | 192.168.68.104 | Study | 191 | 2 | 1.05% | `time.cloudflare.com` | `unagi-na.amazon.com` | +| Adolfos-iPhone | 192.168.68.150 | Office | 162 | 8 | 4.94% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| espressif | 192.168.68.135 | WashMachine | 67 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 50 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 49 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 49 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| iot_device | 192.168.68.136 | Casita | 22 | 0 | 0.00% | `eu.tectonic.remarkable.com` | `—` | +| cloud.reynafamily.com | 172.22.0.1 | not mapped | 7 | 0 | 0.00% | `youtube.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 2 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 2 | 0 | 0.00% | `colanode.reynafamily.com` | `—` | +| Unknown device | 172.22.0.1 | not mapped | 1 | 0 | 0.00% | `youtube.com` | `—` | + +## Per-device detail + +### iPhone (192.168.68.105) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 15,668; blocked: 2,827; block rate: 18.04%; unique domains: 1,869. + +Top visited (not blocked): +- mask.apple-dns.net — 365 +- outlook.office365.com — 344 +- mmx-ds.cdn.whatsapp.net — 175 +- www.google.com — 133 +- atm.outlook.mira.tm.svc.cloud.microsoft — 108 +- bag-cdn.itunes-apple.com.akadns.net — 104 +- imap.gmail.com — 101 +- btlr.sharethrough.com — 90 +- logs.ads.vungle.com — 71 +- ocsp2.apple.com — 70 +Top blocked: +- dit.whatsapp.net — 405 blocked of 407 +- ep2.facebook.com — 150 blocked of 150 +- app-analytics-services.com — 130 blocked of 130 +- g2.gumgum.com — 121 blocked of 121 +- et-eus.w.inmobi.com — 109 blocked of 109 +- ts.amazon-adsystem.com — 99 blocked of 99 +- eus-r.w.inmobi.com — 95 blocked of 95 +- firebaselogging-pa.googleapis.com — 93 blocked of 93 +- sdk.iad-01.braze.com — 90 blocked of 90 +- unagi-na.amazon.com — 83 blocked of 83 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 14,592; blocked: 1,789; block rate: 12.26%; unique domains: 443. + +Top visited (not blocked): +- www.google.com — 719 +- whatsapp.com — 653 +- www.apple.com — 547 +- api.apple-cloudkit.fe2.apple-dns.net — 477 +- mmx-ds.cdn.whatsapp.net — 454 +- 1.courier-sandbox-push-apple.com.akadns.net — 444 +- chat.openai.com — 391 +- apple.com — 379 +- us-sandbox-courier-4.push-apple.com.akadns.net — 366 +- chatgpt.com — 362 +Top blocked: +- dit.whatsapp.net — 1,605 blocked of 1,605 +- slackb.com — 64 blocked of 64 +- collector.github.com — 24 blocked of 24 +- sentry.bga.li — 20 blocked of 20 +- analytics.google.com — 14 blocked of 14 +- partiality.itunes.apple.com — 12 blocked of 12 +- cf.iadsdk.apple.com — 12 blocked of 12 +- ogads-pa.clients6.google.com — 10 blocked of 10 +- browser-update.org — 10 blocked of 10 +- iadsdk.apple.com — 3 blocked of 3 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 13,502; blocked: 1,993; block rate: 14.76%; unique domains: 532. + +Top visited (not blocked): +- ssl.gstatic.com — 784 +- outlook.cloud.microsoft — 627 +- optimizationguide-pa.googleapis.com — 542 +- chat.google.com — 500 +- wordonline.nel.measure.office.net — 417 +- www.google.com — 362 +- play.google.com — 270 +- c.pub.network — 266 +- signaler-pa.clients6.google.com — 248 +- waa-pa.clients6.google.com — 218 +Top blocked: +- dit.whatsapp.net — 912 blocked of 912 +- word-telemetry.officeapps.live.com — 454 blocked of 454 +- bam.nr-data.net — 278 blocked of 316 +- sentry.bga.li — 100 blocked of 100 +- analytics.google.com — 50 blocked of 50 +- track.capitaloneshopping.com — 48 blocked of 48 +- bat.bing.com — 18 blocked of 18 +- acsbapp.com — 16 blocked of 16 +- ogads-pa.clients6.google.com — 14 blocked of 14 +- fbs.smoot.apple.com — 12 blocked of 12 + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 11,173; blocked: 393; block rate: 3.52%; unique domains: 316. + +Top visited (not blocked): +- internalfb.com — 666 +- ssl.gstatic.com — 198 +- api.manus.im — 195 +- 1.courier-push-apple.com.akadns.net — 177 +- play.google.com — 171 +- beacons.gcp.gvt2.com — 171 +- gateway.fe2.apple-dns.net — 167 +- mask.apple-dns.net — 166 +- chat.openai.com — 164 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 148 +Top blocked: +- chromereporting-pa.googleapis.com — 117 blocked of 117 +- www.internalfb.com — 57 blocked of 1,963 +- us-v20.events.data.microsoft.com — 31 blocked of 31 +- graph.prod.facebook.com — 30 blocked of 241 +- graph.facebook.com — 28 blocked of 1,092 +- collector.github.com — 21 blocked of 21 +- csp.withgoogle.com — 18 blocked of 18 +- beacon.flexera-prod.aws.metafb.cloud — 17 blocked of 17 +- tokenservice.edge.x2p.facebook.net — 14 blocked of 67 +- www.facebook.com — 12 blocked of 103 + +### Alicia-2022-2 (192.168.68.106) +Location: Office; MAC: 56-68-92-84-12-EE; mapping: multiple_identities_seen. +Queries: 8,507; blocked: 1,214; block rate: 14.27%; unique domains: 761. + +Top visited (not blocked): +- mask.apple-dns.net — 287 +- ts01-b.csa.cloudsink.net — 242 +- mmx-ds.cdn.whatsapp.net — 209 +- outlook.office365.com — 202 +- www.google.com — 152 +- ts01-b.cloudsink.net — 146 +- whatsapp.com — 135 +- chat.cdn.whatsapp.net — 130 +- oauthaccountmanager.googleapis.com — 106 +- mdm-na2.mobileiron.com — 102 +Top blocked: +- dit.whatsapp.net — 297 blocked of 297 +- app-analytics-services.com — 195 blocked of 195 +- cdp.customer.io — 89 blocked of 89 +- app-measurement.com — 81 blocked of 81 +- events.flagship.io — 74 blocked of 74 +- firebaselogging-pa.googleapis.com — 72 blocked of 72 +- unagi-na.amazon.com — 60 blocked of 60 +- unagi.amazon.com — 57 blocked of 57 +- uslog.ezvizlife.com — 43 blocked of 43 +- bugsnag.com — 37 blocked of 37 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 6,250; blocked: 232; block rate: 3.71%; unique domains: 58. + +Top visited (not blocked): +- chatgpt.com — 4,072 +- media.reynafamily.com — 570 +- adolforeynaserver — 326 +- herdr.dev — 264 +- acme-v02.api.letsencrypt.org — 184 +- ph.n8n.io — 118 +- ghcr.io — 84 +- api.github.com — 52 +- version.goauthentik.io — 48 +- auth.openai.com — 36 +Top blocked: +- telemetry.n8n.io — 232 blocked of 232 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: WashMachine; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,234; blocked: 1,089; block rate: 20.81%; unique domains: 41. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,977 +- connectivity-check.ubuntu.com — 579 +- chatgpt.com — 531 +- firefox.settings.services.mozilla.com — 165 +- push.services.mozilla.com — 146 +- www.recaptcha.net — 118 +- www.gstatic.com — 114 +- filters.adtidy.org — 114 +- merino.services.mozilla.com — 97 +- fonts.gstatic.com — 97 +Top blocked: +- cdp.cloud.unity3d.com — 837 blocked of 837 +- incoming.telemetry.mozilla.org — 252 blocked of 252 + +### Dzidula-s-S22 (192.168.68.133) +Location: Barn; MAC: C6-C3-37-60-5C-88; mapping: historical_snapshot. +Queries: 4,286; blocked: 704; block rate: 16.43%; unique domains: 828. + +Top visited (not blocked): +- google.com — 212 +- www.google.com — 169 +- opcode — 46 +- tlx.3lift.com — 38 +- pagead2.googlesyndication.com — 38 +- eb2.3lift.com — 34 +- rtb.openx.net — 32 +- imp-dev.mediavine.com — 32 +- graph.facebook.com — 31 +- googleads4.g.doubleclick.net — 30 +Top blocked: +- mobile.pipe.aria.microsoft.com — 103 blocked of 103 +- smetrics.t-mobile.com — 83 blocked of 83 +- graph.instagram.com — 34 blocked of 34 +- static.adsafeprotected.com — 32 blocked of 32 +- onetag-sys.com — 32 blocked of 32 +- prebid.scope3.com — 22 blocked of 22 +- graph-fallback.instagram.com — 22 blocked of 22 +- id5-sync.com — 18 blocked of 18 +- cdn.doubleverify.com — 16 blocked of 16 +- c.amazon-adsystem.com — 16 blocked of 16 + +### iPhone (192.168.68.121) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: multiple_identities_seen. +Queries: 3,414; blocked: 879; block rate: 25.75%; unique domains: 484. + +Top visited (not blocked): +- mmx-ds.cdn.whatsapp.net — 128 +- mask.apple-dns.net — 111 +- outlook.office365.com — 90 +- chat.cdn.whatsapp.net — 73 +- whatsapp.com — 69 +- ts01-b.csa.cloudsink.net — 60 +- www.google.com — 59 +- time.cloudflare.com — 54 +- ts01-b.cloudsink.net — 42 +- oauthaccountmanager.googleapis.com — 42 +Top blocked: +- dit.whatsapp.net — 281 blocked of 281 +- app-measurement.com — 51 blocked of 52 +- app-analytics-services.com — 50 blocked of 52 +- collector-pxuarm9b04.perimeterx.net — 48 blocked of 48 +- analytics.mobile.walmart.com — 47 blocked of 47 +- sdk.iad-08.braze.com — 44 blocked of 44 +- firebaselogging-pa.googleapis.com — 37 blocked of 37 +- gateway.facebook.com — 18 blocked of 21 +- sdk.iad-06.braze.com — 18 blocked of 18 +- web.facebook.com — 16 blocked of 16 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 3,120; blocked: 2,766; block rate: 88.65%; unique domains: 16. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 131 +- nrdp.push.prod.netflix.com — 129 +- api.roku.com — 29 +- themes-service.sr.roku.com — 24 +- nrdp51-appboot.netflix.com — 19 +- mediaservices.cdn-apple.com — 14 +- sw-update.cs.roku.com — 1 +- longview.sb.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- api2.sr.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,106 blocked of 2,108 +- nrdp.logs.netflix.com — 297 blocked of 297 +- liberty.logs.roku.com — 198 blocked of 200 +- logs.netflix.com — 139 blocked of 139 +- cloudservices.roku.com — 24 blocked of 24 +- display.ravm.tv — 2 blocked of 2 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,407; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,171 +- chatgpt.com — 869 +- herdr.dev — 221 +- cloud.reynafamily.com — 96 +- api.snapcraft.io — 16 +- 126.68.168.192.in-addr.arpa — 10 +- 116.68.168.192.in-addr.arpa — 9 +- ports.ubuntu.com — 4 +- packages.microsoft.com — 4 +- _https._tcp.packages.microsoft.com — 3 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,337; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,174 +- chatgpt.com — 826 +- herdr.dev — 192 +- cloud.reynafamily.com — 96 +- api.snapcraft.io — 15 +- 126.68.168.192.in-addr.arpa — 10 +- 116.68.168.192.in-addr.arpa — 9 +- ports.ubuntu.com — 4 +- packages.microsoft.com — 4 +- _https._tcp.packages.microsoft.com — 3 +Top blocked: +- none + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 1,945; blocked: 0; block rate: 0.00%; unique domains: 29. + +Top visited (not blocked): +- api.telegram.org — 1,123 +- chatgpt.com — 651 +- version.goauthentik.io — 50 +- version.immich.cloud — 25 +- herdr.dev — 23 +- api.snapcraft.io — 8 +- ec2-89-192-235-234.compute-1.amazonaws.com — 7 +- cdn.fwupd.org — 6 +- security.ubuntu.com — 4 +- motd.ubuntu.com — 4 +Top blocked: +- none + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 1,824; blocked: 1,760; block rate: 96.49%; unique domains: 14. + +Top visited (not blocked): +- api.roku.com — 26 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 2 +- configsvc.cs.roku.com — 2 +- sw-update.cs.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- austin.sb.roku.com — 1 +- api2.sr.roku.com — 1 +- api-g2.rokutime.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,560 blocked of 1,562 +- liberty.logs.roku.com — 196 blocked of 198 +- identity.ads.roku.com — 2 blocked of 2 +- display.ravm.tv — 2 blocked of 2 + +### c00000F53FBA (192.168.68.127) +Location: Office; MAC: 5C-62-5A-F5-3F-BA; mapping: multiple_identities_seen. +Queries: 1,645; blocked: 255; block rate: 15.50%; unique domains: 77. + +Top visited (not blocked): +- google.com — 732 +- opcode — 160 +- www.google.com — 127 +- 216.58.202.4.in-addr.arpa — 105 +- www.goooooooooooooooooooooooooooooooooooooooooooooooooooooooooogle.com — 53 +- *google.com — 53 +- google.com.onion — 52 +- graph.facebook.com — 6 +- play.googleapis.com — 5 +- outlook.office365.com — 5 +Top blocked: +- mobile.pipe.aria.microsoft.com — 231 blocked of 231 +- mobile.events.data.microsoft.com — 10 blocked of 10 +- app-measurement.com — 6 blocked of 6 +- in.appcenter.ms — 5 blocked of 5 +- collect.ureca-lab.com — 2 blocked of 2 +- dls-udc.dqa.samsung.com — 1 blocked of 1 + +### iPad (192.168.68.129) +Location: Study; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,614; blocked: 41; block rate: 2.54%; unique domains: 250. + +Top visited (not blocked): +- mask.apple-dns.net — 232 +- sps-media.v.aaplimg.com — 58 +- _dns.resolver.arpa — 46 +- cma2.itunes.apple.com — 44 +- iphone-ld.apple.com — 42 +- mask.icloud.com — 40 +- ocsp2.apple.com — 36 +- uts-api-cdn.itunes-apple.com.akadns.net — 34 +- iphone-ld.g.aaplimg.com — 34 +- ocsp2.g.aaplimg.com — 30 +Top blocked: +- fbs.smoot.apple.com — 12 blocked of 12 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- app-analytics-services.com — 5 blocked of 5 +- trk.pinterest.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- crashlogs.whatsapp.net — 2 blocked of 2 +- collector-pxhyx10rg3.perimeterx.net — 2 blocked of 2 +- app-measurement.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,050; blocked: 111; block rate: 10.57%; unique domains: 165. + +Top visited (not blocked): +- mask.apple-dns.net — 206 +- _dns.resolver.arpa — 55 +- mask.icloud.com — 42 +- ocsp2.apple.com — 38 +- ocsp2.g.aaplimg.com — 22 +- bag.itunes.apple.com — 20 +- bag-cdn.itunes-apple.com.akadns.net — 20 +- gsp-ssl.ls.apple.com — 18 +- pancake.apple.com — 16 +- gdmf.apple.com — 14 +Top blocked: +- sdk.iad-01.braze.com — 72 blocked of 72 +- app-measurement.com — 15 blocked of 15 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- firebaselogging-pa.googleapis.com — 4 blocked of 4 +- experiments.apple.com — 2 blocked of 2 +- banner.youversionapi.com — 2 blocked of 2 + +### ubuntu-server (192.168.68.117) +Location: Study; MAC: 24-FD-FA-03-53-0C; mapping: multiple_identities_seen. +Queries: 850; blocked: 229; block rate: 26.94%; unique domains: 219. + +Top visited (not blocked): +- mmx-ds.cdn.whatsapp.net — 38 +- mask.apple-dns.net — 24 +- www.google.com — 21 +- play.googleapis.com — 16 +- flag.lab.amplitude.com — 13 +- chat.cdn.whatsapp.net — 12 +- api.lab.amplitude.com — 12 +- eu.tectonic.remarkable.com — 11 +- m.sni.global.fastly.net — 10 +- cdn.branch.io — 10 +Top blocked: +- dit.whatsapp.net — 84 blocked of 84 +- app-analytics-services.com — 44 blocked of 44 +- sdk.iad-01.braze.com — 35 blocked of 35 +- app-measurement.com — 30 blocked of 30 +- browser-intake-datadoghq.com — 7 blocked of 7 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- receive-lp1.dg.srv.nintendo.net — 5 blocked of 5 +- firebaselogging-pa.googleapis.com — 4 blocked of 4 +- in.appcenter.ms — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 724; blocked: 0; block rate: 0.00%; unique domains: 38. + +Top visited (not blocked): +- 4.4.8.8.in-addr.arpa — 26 +- 150.68.168.192.in-addr.arpa — 26 +- 134.68.168.192.in-addr.arpa — 26 +- 128.68.168.192.in-addr.arpa — 26 +- 126.68.168.192.in-addr.arpa — 26 +- 125.68.168.192.in-addr.arpa — 26 +- 116.68.168.192.in-addr.arpa — 26 +- 114.68.168.192.in-addr.arpa — 26 +- 113.68.168.192.in-addr.arpa — 26 +- 112.68.168.192.in-addr.arpa — 26 +Top blocked: +- none + +### iPhone (192.168.68.132) +Location: Hallway; MAC: CA-75-80-F1-99-94; mapping: historical_snapshot. +Queries: 709; blocked: 28; block rate: 3.95%; unique domains: 151. + +Top visited (not blocked): +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 75 +- lb._dns-sd._udp.2.0.0.192.in-addr.arpa — 72 +- lb._dns-sd._udp.131.150.49.28.in-addr.arpa — 72 +- mask.apple-dns.net — 27 +- weatherkit.apple.com — 14 +- ocsp2.apple.com — 12 +- flag.lab.amplitude.com — 12 +- _dns.resolver.arpa — 11 +- weatherkit.apple.com.akadns.net — 10 +- fp-us-tmobile.rcs.telephony.goog — 10 +Top blocked: +- app-analytics-services.com — 11 blocked of 11 +- sdk.iad-01.braze.com — 10 blocked of 10 +- app-measurement.com — 7 blocked of 7 + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 473; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 473 +Top blocked: +- none + +### espressif (192.168.68.131) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: multiple_identities_seen. +Queries: 433; blocked: 22; block rate: 5.08%; unique domains: 125. + +Top visited (not blocked): +- time.cloudflare.com — 62 +- www.google.com — 18 +- mmx-ds.cdn.whatsapp.net — 15 +- people-pa.googleapis.com — 10 +- oauthaccountmanager.googleapis.com — 10 +- mask.apple-dns.net — 10 +- lh3.googleusercontent.com — 10 +- iphone-ld.g.aaplimg.com — 9 +- us.telemetry.zoom.us — 8 +- gs-loc.ls-apple.com.akadns.net — 8 +Top blocked: +- dit.whatsapp.net — 14 blocked of 14 +- teams.events.data.microsoft.com — 2 blocked of 2 +- log-gateway.zoom.us — 2 blocked of 2 +- ic3.events.data.microsoft.com — 2 blocked of 2 +- adserver.pandora.com — 2 blocked of 2 + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 193; blocked: 33; block rate: 17.10%; unique domains: 19. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 75 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 48 +- www.amazon.com — 8 +- device-messaging-na.amazon.com — 7 +- todo-ta-g7g.amazon.com — 6 +- pins.amazon.com — 2 +- m.media-amazon.com — 2 +- 7a6e3418b2b39c5852077c212b8b75b4.00672507000024.kindle-perf.com — 2 +- shm.amazon.com — 1 +- s3.amazonaws.com — 1 +Top blocked: +- unagi-na.amazon.com — 33 blocked of 33 + +### espressif (192.168.68.104) +Location: Study; MAC: 14-C1-9F-D1-56-90; mapping: multiple_identities_seen. +Queries: 191; blocked: 2; block rate: 1.05%; unique domains: 12. + +Top visited (not blocked): +- time.cloudflare.com — 150 +- todo-ta-g7g.amazon.com — 11 +- ms-cam-u011.immedia-semi.com — 8 +- device-messaging-na.amazon.com — 8 +- dogvgb9ujhybx.cloudfront.net — 3 +- pins.amazon.com — 2 +- is-cam-u011.immedia-semi.com — 2 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 2 +- ntp-g7g.amazon.com — 1 +- cdn.tactilityproject.org — 1 +Top blocked: +- unagi-na.amazon.com — 2 blocked of 2 + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 162; blocked: 8; block rate: 4.94%; unique domains: 41. + +Top visited (not blocked): +- time-ios.apple.com — 35 +- gateway.icloud.com — 16 +- gateway.fe2.apple-dns.net — 15 +- ocsp.apple.com — 9 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +- p189-keyvalueservice.icloud.com — 6 +- iphonesubmissions.apple.com — 4 +- xp.apple.com — 3 +- www.icloud.com — 3 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.135) +Location: WashMachine; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 67; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 61 +- ms-cam-u011.immedia-semi.com — 6 +Top blocked: +- none + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 50; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod.wdckeystone.com — 10 +- prod-proxy.wdckeystone.com — 8 +- config.mycloud.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-31cdfc8017b5028.wdckeystone.com — 4 +- prod-15ce3e0b80af991.wdckeystone.com — 4 +- google.com — 4 +- prod-gateway.wdckeystone.com — 2 +- downloads.mycloud.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 49; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +- pmsus1.ezvizlife.com — 1 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 49; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +- pmsus1.ezvizlife.com — 1 +Top blocked: +- none + +### iot_device (192.168.68.136) +Location: Casita; MAC: 24-FD-FA-03-53-0C; mapping: historical_snapshot. +Queries: 22; blocked: 0; block rate: 0.00%; unique domains: 5. + +Top visited (not blocked): +- eu.tectonic.remarkable.com — 9 +- webapp-prod.cloud.remarkable.engineering — 5 +- ping.remarkable.com — 4 +- device.cloud.remarkable.com — 2 +- dev.tectonic.remarkable.com — 2 +Top blocked: +- none + +### cloud.reynafamily.com (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 7; blocked: 0; block rate: 0.00%; unique domains: 5. + +Top visited (not blocked): +- youtube.com — 2 +- example.com — 2 +- colanode.reynafamily.com — 2 +- instagram.com — 1 +- facebook.com — 1 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 2 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- colanode.reynafamily.com — 2 +Top blocked: +- none + +### Unknown device (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- youtube.com — 2 +- example.com — 2 +- colanode.reynafamily.com — 2 +- instagram.com — 1 +- facebook.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-06.json b/projects/network_usage/reports/2026-09-06.json new file mode 100644 index 0000000..bf1f5c0 --- /dev/null +++ b/projects/network_usage/reports/2026-09-06.json @@ -0,0 +1,3175 @@ +{ + "schema_version": 2, + "day": "2026-09-06", + "timezone": "America/New_York", + "generated_at": "2026-09-07T00:15:59.843248-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-06T00:00:00-04:00", + "end_local": "2026-09-07T00:00:00-04:00", + "start_epoch": 1788667200, + "end_epoch": 1788753600 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 10988 + }, + { + "status": 2, + "queries": 8622 + }, + { + "status": 3, + "queries": 26786 + }, + { + "status": 4, + "queries": 1616 + }, + { + "status": 5, + "queries": 8 + }, + { + "status": 9, + "queries": 1213 + }, + { + "status": 10, + "queries": 702 + }, + { + "status": 12, + "queries": 11 + }, + { + "status": 14, + "queries": 1647 + }, + { + "status": 16, + "queries": 329 + }, + { + "status": 17, + "queries": 23777 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 33, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 9350, + "blocked_queries": 1921, + "block_rate_percent": 20.55, + "unique_domains": 301, + "last_query_epoch": 1788753416.581608, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 438, + "blocked": 0, + "allowed": 438 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 186, + "blocked": 0, + "allowed": 186 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.fe2.apple-dns.net", + "queries": 167, + "blocked": 0, + "allowed": 167 + }, + { + "ip": "192.168.68.112", + "domain": "mtalk.google.com", + "queries": 159, + "blocked": 0, + "allowed": 159 + }, + { + "ip": "192.168.68.112", + "domain": "mask.apple-dns.net", + "queries": 157, + "blocked": 0, + "allowed": 157 + }, + { + "ip": "192.168.68.112", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 156, + "blocked": 0, + "allowed": 156 + }, + { + "ip": "192.168.68.112", + "domain": "lrs.thefacebook.com", + "queries": 145, + "blocked": 0, + "allowed": 145 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 138, + "blocked": 0, + "allowed": 138 + }, + { + "ip": "192.168.68.112", + "domain": "edge-c2p.c10r.facebook.com", + "queries": 133, + "blocked": 0, + "allowed": 133 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 132, + "blocked": 0, + "allowed": 132 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 1456, + "blocked": 681, + "allowed": 775 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 797, + "blocked": 453, + "allowed": 344 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 445, + "blocked": 280, + "allowed": 165 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 240, + "blocked": 142, + "allowed": 98 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 204, + "blocked": 126, + "allowed": 78 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 149, + "blocked": 78, + "allowed": 71 + }, + { + "ip": "192.168.68.112", + "domain": "xn--oi8h.likefleet.com", + "queries": 41, + "blocked": 21, + "allowed": 20 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "thrift.edge.x2p.facebook.net", + "queries": 40, + "blocked": 16, + "allowed": 24 + }, + { + "ip": "192.168.68.112", + "domain": "time1.facebook.com", + "queries": 65, + "blocked": 15, + "allowed": 50 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 8101, + "blocked_queries": 1044, + "block_rate_percent": 12.89, + "unique_domains": 387, + "last_query_epoch": 1788753131.0005443, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 359, + "blocked": 0, + "allowed": 359 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 308, + "blocked": 0, + "allowed": 308 + }, + { + "ip": "192.168.68.108", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 264, + "blocked": 0, + "allowed": 264 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 252, + "blocked": 0, + "allowed": 252 + }, + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 247, + "blocked": 0, + "allowed": 247 + }, + { + "ip": "192.168.68.108", + "domain": "apple.com", + "queries": 216, + "blocked": 0, + "allowed": 216 + }, + { + "ip": "192.168.68.108", + "domain": "us-sandbox-courier-4.push-apple.com.akadns.net", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.108", + "domain": "colanode.reynafamily.com", + "queries": 197, + "blocked": 0, + "allowed": 197 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 191, + "blocked": 0, + "allowed": 191 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 791, + "blocked": 791, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 54, + "blocked": 54, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 70, + "blocked": 32, + "allowed": 38 + }, + { + "ip": "192.168.68.108", + "domain": "unagi.amazon.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi-na.amazon.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 7669, + "blocked_queries": 1774, + "block_rate_percent": 23.13, + "unique_domains": 995, + "last_query_epoch": 1788753585.7825298, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "btlr.sharethrough.com", + "queries": 158, + "blocked": 0, + "allowed": 158 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 140, + "blocked": 0, + "allowed": 140 + }, + { + "ip": "192.168.68.104", + "domain": "time.cloudflare.com", + "queries": 103, + "blocked": 0, + "allowed": 103 + }, + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 83, + "blocked": 0, + "allowed": 83 + }, + { + "ip": "192.168.68.104", + "domain": "ib.anycast.adnxs.com", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.104", + "domain": "grid-bidder.criteo.com", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 57, + "blocked": 0, + "allowed": 57 + }, + { + "ip": "192.168.68.104", + "domain": "chat.cdn.whatsapp.net", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.104", + "domain": "cnam4c.inapps.appsflyersdk.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 351, + "blocked": 351, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 147, + "blocked": 147, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "analytics.google.com", + "queries": 142, + "blocked": 142, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "iad-usadmm.dotomi.com", + "queries": 106, + "blocked": 106, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "sjc-usadmm.dotomi.com", + "queries": 98, + "blocked": 98, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "vast.doubleverify.com", + "queries": 49, + "blocked": 49, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.doubleverify.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 42, + "blocked": 42, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "unagi.amazon.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 6656, + "blocked_queries": 638, + "block_rate_percent": 9.59, + "unique_domains": 326, + "last_query_epoch": 1788753500.092018, + "deco": { + "ip": "192.168.68.111", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 276, + "blocked": 0, + "allowed": 276 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 243, + "blocked": 0, + "allowed": 243 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 218, + "blocked": 0, + "allowed": 218 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 197, + "blocked": 0, + "allowed": 197 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 170, + "blocked": 0, + "allowed": 170 + }, + { + "ip": "192.168.68.111", + "domain": "www.apple.com", + "queries": 169, + "blocked": 0, + "allowed": 169 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 160, + "blocked": 0, + "allowed": 160 + }, + { + "ip": "192.168.68.111", + "domain": "ai.zoom.us", + "queries": 138, + "blocked": 0, + "allowed": 138 + }, + { + "ip": "192.168.68.111", + "domain": "111.68.168.192.in-addr.arpa", + "queries": 129, + "blocked": 0, + "allowed": 129 + }, + { + "ip": "192.168.68.111", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 126, + "blocked": 0, + "allowed": 126 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 374, + "blocked": 374, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 140, + "blocked": 140, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 34, + "blocked": 20, + "allowed": 14 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "sentry.bga.li", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "browser-update.org", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 6051, + "blocked_queries": 224, + "block_rate_percent": 3.7, + "unique_domains": 44, + "last_query_epoch": 1788753425.6497009, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 2160, + "blocked": 0, + "allowed": 2160 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2112, + "blocked": 0, + "allowed": 2112 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 568, + "blocked": 0, + "allowed": 568 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 304, + "blocked": 0, + "allowed": 304 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 198, + "blocked": 0, + "allowed": 198 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "cdn.fwupd.org", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 5650, + "blocked_queries": 1303, + "block_rate_percent": 23.06, + "unique_domains": 1115, + "last_query_epoch": 1788753446.0153134, + "deco": { + "ip": "192.168.68.117", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "btlr.sharethrough.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.117", + "domain": "time.cloudflare.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.117", + "domain": "fastlane.rubiconproject.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.117", + "domain": "server.cpmstar.com", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.117", + "domain": "ib.anycast.adnxs.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.117", + "domain": "contextual.media.net", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.117", + "domain": "prebid-server-new.rubiconproject.net.akadns.net", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.117", + "domain": "lg3.media.net", + "queries": 21, + "blocked": 0, + "allowed": 21 + }, + { + "ip": "192.168.68.117", + "domain": "vin.pbs.ovhnextmillmedia.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.117", + "domain": "targeting.unrulymedia.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "analytics.google.com", + "queries": 70, + "blocked": 70, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "vast.doubleverify.com", + "queries": 64, + "blocked": 64, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "id5-sync.com", + "queries": 63, + "blocked": 63, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "hb-analytics.nextmillmedia.com", + "queries": 52, + "blocked": 52, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "g2.gumgum.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "qsearch-a.akamaihd.net", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "ads.pubmatic.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "static.adsafeprotected.com", + "queries": 43, + "blocked": 43, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "cdn.doubleverify.com", + "queries": 43, + "blocked": 43, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "ts.amazon-adsystem.com", + "queries": 31, + "blocked": 31, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5305, + "blocked_queries": 1083, + "block_rate_percent": 20.41, + "unique_domains": 41, + "last_query_epoch": 1788753532.2532797, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1993, + "blocked": 0, + "allowed": 1993 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 579, + "blocked": 0, + "allowed": 579 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 500, + "blocked": 0, + "allowed": 500 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 162, + "blocked": 0, + "allowed": 162 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 144, + "blocked": 0, + "allowed": 144 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 124, + "blocked": 0, + "allowed": 124 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 121, + "blocked": 0, + "allowed": 121 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.124", + "domain": "1a1inqjh.p.qrcdn.net", + "queries": 98, + "blocked": 0, + "allowed": 98 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 831, + "blocked": 831, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 252, + "blocked": 252, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 3876, + "blocked_queries": 450, + "block_rate_percent": 11.61, + "unique_domains": 764, + "last_query_epoch": 1788753286.0987158, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 157, + "blocked": 0, + "allowed": 157 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 124, + "blocked": 0, + "allowed": 124 + }, + { + "ip": "192.168.68.105", + "domain": "btlr.sharethrough.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.105", + "domain": "imap.gmail.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.105", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.105", + "domain": "gdmf.apple.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.105", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.105", + "domain": "www.subalert.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "g2.gumgum.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "analytics.google.com", + "queries": 49, + "blocked": 49, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "vast.doubleverify.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "cdn.doubleverify.com", + "queries": 29, + "blocked": 29, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "entitlements.jwplayer.com", + "queries": 27, + "blocked": 27, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "tpt.dotomi.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "ad-events.flashtalking.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "static.adsafeprotected.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 3832, + "blocked_queries": 731, + "block_rate_percent": 19.08, + "unique_domains": 529, + "last_query_epoch": 1788753465.4515705, + "deco": { + "ip": "192.168.68.106", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 161, + "blocked": 0, + "allowed": 161 + }, + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 128, + "blocked": 0, + "allowed": 128 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 119, + "blocked": 0, + "allowed": 119 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 98, + "blocked": 0, + "allowed": 98 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 87, + "blocked": 0, + "allowed": 87 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.cloudsink.net", + "queries": 70, + "blocked": 0, + "allowed": 70 + }, + { + "ip": "192.168.68.106", + "domain": "whatsapp.com", + "queries": 66, + "blocked": 0, + "allowed": 66 + }, + { + "ip": "192.168.68.106", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.106", + "domain": "mdm-na2.mobileiron.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 186, + "blocked": 186, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 70, + "blocked": 70, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "www.youtube.com", + "queries": 61, + "blocked": 40, + "allowed": 21 + }, + { + "ip": "192.168.68.106", + "domain": "youtubei.googleapis.com", + "queries": 60, + "blocked": 38, + "allowed": 22 + }, + { + "ip": "192.168.68.106", + "domain": "cdp.customer.io", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "s.youtube.com", + "queries": 17, + "blocked": 10, + "allowed": 7 + }, + { + "ip": "192.168.68.106", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "redirector.googlevideo.com", + "queries": 26, + "blocked": 8, + "allowed": 18 + }, + { + "ip": "192.168.68.106", + "domain": "rr6---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com", + "queries": 15, + "blocked": 8, + "allowed": 7 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 3623, + "blocked_queries": 3295, + "block_rate_percent": 90.95, + "unique_domains": 18, + "last_query_epoch": 1788753575.4856892, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 143, + "blocked": 0, + "allowed": 143 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "longview.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2718, + "blocked": 2718, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 308, + "blocked": 308, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 192, + "blocked": 192, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 2588, + "blocked_queries": 215, + "block_rate_percent": 8.31, + "unique_domains": 416, + "last_query_epoch": 1788752166.3786926, + "deco": { + "ip": "192.168.68.121", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T13:01:30.305523+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 160, + "blocked": 0, + "allowed": 160 + }, + { + "ip": "192.168.68.121", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.121", + "domain": "ts01-b.cloudsink.net", + "queries": 86, + "blocked": 0, + "allowed": 86 + }, + { + "ip": "192.168.68.121", + "domain": "outlook.office365.com", + "queries": 74, + "blocked": 0, + "allowed": 74 + }, + { + "ip": "192.168.68.121", + "domain": "whatsapp.com", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.121", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.121", + "domain": "mdm-na2.mobileiron.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.121", + "domain": "chat.cdn.whatsapp.net", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.121", + "domain": "api.whatsapp.net", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.121", + "domain": "photos.reynafamily.com", + "queries": 39, + "blocked": 0, + "allowed": 39 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "dit.whatsapp.net", + "queries": 114, + "blocked": 114, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "app-analytics-services.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "app-measurement.com", + "queries": 13, + "blocked": 13, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cdp.customer.io", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "graph.instagram.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "growth-pa.googleapis.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "collector-pxuarm9b04.perimeterx.net", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "analytics.mobile.walmart.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "sdk.iad-08.braze.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2358, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 22, + "last_query_epoch": 1788753534.0176635, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1149, + "blocked": 0, + "allowed": 1149 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 815, + "blocked": 0, + "allowed": 815 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.119", + "domain": "auth.reynafamily.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 2284, + "blocked_queries": 151, + "block_rate_percent": 6.61, + "unique_domains": 325, + "last_query_epoch": 1788753233.7811584, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 397, + "blocked": 0, + "allowed": 397 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 64, + "blocked": 0, + "allowed": 64 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 63, + "blocked": 0, + "allowed": 63 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.apple.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 37, + "blocked": 0, + "allowed": 37 + }, + { + "ip": "192.168.68.129", + "domain": "gdmf.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.129", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 13, + "blocked": 13, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "youtubei.googleapis.com", + "queries": 14, + "blocked": 9, + "allowed": 5 + }, + { + "ip": "192.168.68.129", + "domain": "unagi.amazon.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "unagi-na.amazon.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "graph.facebook.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "fls-na.amazon.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2133, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788753538.3617237, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1106, + "blocked": 0, + "allowed": 1106 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 642, + "blocked": 0, + "allowed": 642 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 71, + "blocked": 0, + "allowed": 71 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2129, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788753538.3586235, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-07T01:41:30.177655+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1105, + "blocked": 0, + "allowed": 1105 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 634, + "blocked": 0, + "allowed": 634 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 185, + "blocked": 0, + "allowed": 185 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 1680, + "blocked_queries": 1621, + "block_rate_percent": 96.49, + "unique_domains": 12, + "last_query_epoch": 1788753592.9915857, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 1428, + "blocked": 1428, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 190, + "blocked": 190, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 729, + "blocked_queries": 20, + "block_rate_percent": 2.74, + "unique_domains": 122, + "last_query_epoch": 1788753114.3356602, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 125, + "blocked": 0, + "allowed": 125 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "kt-prod.ess.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.107", + "domain": "xp.apple.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 625, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 36, + "last_query_epoch": 1788750000.3920405, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "119.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "114.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 298, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788716339.8117259, + "deco": { + "ip": "192.168.68.131", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-06T18:11:18.943242+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "time.cloudflare.com", + "queries": 298, + "blocked": 0, + "allowed": 298 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 262, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788753363.6505792, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 262, + "blocked": 0, + "allowed": 262 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 175, + "blocked_queries": 38, + "block_rate_percent": 21.71, + "unique_domains": 16, + "last_query_epoch": 1788752664.901122, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 77, + "blocked": 0, + "allowed": 77 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.134", + "domain": "shm.amazon.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "pins.amazon.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "kwis-opf-preprod.amazon.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 147, + "blocked_queries": 8, + "block_rate_percent": 5.44, + "unique_domains": 34, + "last_query_epoch": 1788752415.313299, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "iphonesubmissions.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "gsp10-ssl.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "bag.itunes.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 52, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788733586.2003467, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-cdd1bbf7f41b200.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788750751.4272428, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788752269.0123396, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "172.22.0.1", + "pihole_name": "cloud.reynafamily.com", + "queries": 23, + "blocked_queries": 11, + "block_rate_percent": 47.83, + "unique_domains": 8, + "last_query_epoch": 1788736671.8674974, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "example.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + } + ], + "top_blocked": [ + { + "ip": "172.22.0.1", + "domain": "9gag.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "172.22.0.1", + "domain": "youtube.com", + "queries": 5, + "blocked": 2, + "allowed": 3 + }, + { + "ip": "172.22.0.1", + "domain": "instagram.com", + "queries": 3, + "blocked": 1, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "facebook.com", + "queries": 3, + "blocked": 1, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "www.youtube.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "172.22.0.1", + "domain": "www.instagram.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "172.22.0.1", + "domain": "www.facebook.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 3, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788753175.5061705, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788703033.044248, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "gateway.icloud.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.127", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788674416.2193246, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T03:51:48.527191+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-06.md b/projects/network_usage/reports/2026-09-06.md new file mode 100644 index 0000000..4b94405 --- /dev/null +++ b/projects/network_usage/reports/2026-09-06.md @@ -0,0 +1,596 @@ +# Pi-hole DNS usage — 2026-09-06 + +Window: 2026-09-06T00:00:00-04:00 to 2026-09-07T00:00:00-04:00 (America/New_York) +Generated: 2026-09-07T00:15:59.843248-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Office | 9,350 | 1,921 | 20.55% | `internalfb.com` | `www.internalfb.com` | +| Mac | 192.168.68.108 | Hallway | 8,101 | 1,044 | 12.89% | `www.google.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Hallway | 7,669 | 1,774 | 23.13% | `btlr.sharethrough.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.111 | Hallway | 6,656 | 638 | 9.59% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 6,051 | 224 | 3.70% | `chatgpt.com` | `telemetry.n8n.io` | +| espressif | 192.168.68.117 | Office | 5,650 | 1,303 | 23.06% | `btlr.sharethrough.com` | `analytics.google.com` | +| adolforeyna-iMac11-3 | 192.168.68.124 | WashMachine | 5,305 | 1,083 | 20.41% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| espressif | 192.168.68.105 | Hallway | 3,876 | 450 | 11.61% | `time.cloudflare.com` | `g2.gumgum.com` | +| iPhone | 192.168.68.106 | Hallway | 3,832 | 731 | 19.08% | `ts01-b.csa.cloudsink.net` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 3,623 | 3,295 | 90.95% | `nrdp.prod.ftl.netflix.com` | `scribe.logs.roku.com` | +| iPhone | 192.168.68.121 | Study | 2,588 | 215 | 8.31% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| emiserver | 192.168.68.119 | Office | 2,358 | 0 | 0.00% | `api.telegram.org` | `—` | +| iPad | 192.168.68.129 | Hallway | 2,284 | 151 | 6.61% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| aeropi5 | 192.168.68.126 | Office | 2,133 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,129 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| 50LivingRoom | 192.168.68.100 | Office | 1,680 | 1,621 | 96.49% | `api.roku.com` | `scribe.logs.roku.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 729 | 20 | 2.74% | `mask.apple-dns.net` | `partiality.itunes.apple.com` | +| localhost | 127.0.0.1 | not mapped | 625 | 0 | 0.00% | `150.68.168.192.in-addr.arpa` | `—` | +| espressif | 192.168.68.131 | Study | 298 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.113 | Study | 262 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 175 | 38 | 21.71% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Adolfos-iPhone | 192.168.68.150 | Office | 147 | 8 | 5.44% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 52 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| cloud.reynafamily.com | 172.22.0.1 | not mapped | 23 | 11 | 47.83% | `example.com` | `9gag.com` | +| FN-LINK | 192.168.68.139 | Barn | 3 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| macm1.reynafamily.com | 192.168.68.127 | not mapped | 2 | 0 | 0.00% | `gateway.icloud.com` | `—` | +| Mac | 192.168.68.102 | Office | 2 | 0 | 0.00% | `local` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 9,350; blocked: 1,921; block rate: 20.55%; unique domains: 301. + +Top visited (not blocked): +- internalfb.com — 438 +- ssl.gstatic.com — 186 +- gateway.fe2.apple-dns.net — 167 +- mtalk.google.com — 159 +- mask.apple-dns.net — 157 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 156 +- lrs.thefacebook.com — 145 +- api.manus.im — 138 +- edge-c2p.c10r.facebook.com — 133 +- chat.google.com — 132 +Top blocked: +- www.internalfb.com — 681 blocked of 1,456 +- graph.facebook.com — 453 blocked of 797 +- graph.prod.facebook.com — 280 blocked of 445 +- interngraph.internmc.facebook.com — 142 blocked of 240 +- www.facebook.com — 126 blocked of 204 +- tokenservice.edge.x2p.facebook.net — 78 blocked of 149 +- xn--oi8h.likefleet.com — 21 blocked of 41 +- csp.withgoogle.com — 18 blocked of 18 +- thrift.edge.x2p.facebook.net — 16 blocked of 40 +- time1.facebook.com — 15 blocked of 65 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 8,101; blocked: 1,044; block rate: 12.89%; unique domains: 387. + +Top visited (not blocked): +- www.google.com — 359 +- www.apple.com — 308 +- api.apple-cloudkit.fe2.apple-dns.net — 264 +- 1.courier-sandbox-push-apple.com.akadns.net — 252 +- whatsapp.com — 247 +- apple.com — 216 +- us-sandbox-courier-4.push-apple.com.akadns.net — 204 +- chat.openai.com — 204 +- colanode.reynafamily.com — 197 +- chatgpt.com — 191 +Top blocked: +- dit.whatsapp.net — 791 blocked of 791 +- sentry.bga.li — 54 blocked of 54 +- slackb.com — 36 blocked of 36 +- www.youtube.com — 32 blocked of 70 +- unagi.amazon.com — 26 blocked of 26 +- cf.iadsdk.apple.com — 22 blocked of 22 +- unagi-na.amazon.com — 16 blocked of 16 +- partiality.itunes.apple.com — 14 blocked of 14 +- ogads-pa.clients6.google.com — 12 blocked of 12 +- analytics.google.com — 10 blocked of 10 + +### iPhone (192.168.68.104) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: multiple_identities_seen. +Queries: 7,669; blocked: 1,774; block rate: 23.13%; unique domains: 995. + +Top visited (not blocked): +- btlr.sharethrough.com — 158 +- mmx-ds.cdn.whatsapp.net — 140 +- time.cloudflare.com — 103 +- outlook.office365.com — 96 +- mask.apple-dns.net — 83 +- ib.anycast.adnxs.com — 72 +- grid-bidder.criteo.com — 58 +- www.google.com — 57 +- chat.cdn.whatsapp.net — 50 +- cnam4c.inapps.appsflyersdk.com — 42 +Top blocked: +- dit.whatsapp.net — 351 blocked of 351 +- g2.gumgum.com — 147 blocked of 147 +- analytics.google.com — 142 blocked of 142 +- iad-usadmm.dotomi.com — 106 blocked of 106 +- sjc-usadmm.dotomi.com — 98 blocked of 98 +- vast.doubleverify.com — 49 blocked of 49 +- cdn.doubleverify.com — 48 blocked of 48 +- choices.truste.com — 42 blocked of 42 +- unagi.amazon.com — 38 blocked of 38 +- unagi-na.amazon.com — 38 blocked of 38 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 6,656; blocked: 638; block rate: 9.59%; unique domains: 326. + +Top visited (not blocked): +- ssl.gstatic.com — 276 +- www.google.com — 243 +- outlook.cloud.microsoft — 218 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 197 +- chat.google.com — 170 +- www.apple.com — 169 +- optimizationguide-pa.googleapis.com — 160 +- ai.zoom.us — 138 +- 111.68.168.192.in-addr.arpa — 129 +- api.apple-cloudkit.fe2.apple-dns.net — 126 +Top blocked: +- dit.whatsapp.net — 374 blocked of 374 +- word-telemetry.officeapps.live.com — 140 blocked of 140 +- track.capitaloneshopping.com — 32 blocked of 32 +- bam.nr-data.net — 20 blocked of 34 +- analytics.google.com — 20 blocked of 20 +- sentry.bga.li — 16 blocked of 16 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- browser-update.org — 6 blocked of 6 +- iadsdk.apple.com — 4 blocked of 4 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 6,051; blocked: 224; block rate: 3.70%; unique domains: 44. + +Top visited (not blocked): +- chatgpt.com — 2,160 +- herdr.dev — 2,112 +- media.reynafamily.com — 568 +- adolforeynaserver — 304 +- acme-v02.api.letsencrypt.org — 198 +- ph.n8n.io — 114 +- cdn.fwupd.org — 96 +- api.github.com — 52 +- version.goauthentik.io — 48 +- acme-staging-v02.api.letsencrypt.org — 28 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### espressif (192.168.68.117) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: multiple_identities_seen. +Queries: 5,650; blocked: 1,303; block rate: 23.06%; unique domains: 1,115. + +Top visited (not blocked): +- btlr.sharethrough.com — 96 +- time.cloudflare.com — 90 +- fastlane.rubiconproject.com — 46 +- server.cpmstar.com — 43 +- ib.anycast.adnxs.com — 38 +- contextual.media.net — 25 +- prebid-server-new.rubiconproject.net.akadns.net — 24 +- lg3.media.net — 21 +- vin.pbs.ovhnextmillmedia.com — 20 +- targeting.unrulymedia.com — 20 +Top blocked: +- analytics.google.com — 70 blocked of 70 +- vast.doubleverify.com — 64 blocked of 64 +- id5-sync.com — 63 blocked of 63 +- hb-analytics.nextmillmedia.com — 52 blocked of 52 +- g2.gumgum.com — 50 blocked of 50 +- qsearch-a.akamaihd.net — 48 blocked of 48 +- ads.pubmatic.com — 44 blocked of 44 +- static.adsafeprotected.com — 43 blocked of 43 +- cdn.doubleverify.com — 43 blocked of 43 +- ts.amazon-adsystem.com — 31 blocked of 31 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: WashMachine; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,305; blocked: 1,083; block rate: 20.41%; unique domains: 41. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,993 +- connectivity-check.ubuntu.com — 579 +- chatgpt.com — 500 +- firefox.settings.services.mozilla.com — 162 +- push.services.mozilla.com — 144 +- filters.adtidy.org — 124 +- www.recaptcha.net — 121 +- www.gstatic.com — 114 +- 1a1inqjh.p.qrcdn.net — 98 +- fonts.gstatic.com — 97 +Top blocked: +- cdp.cloud.unity3d.com — 831 blocked of 831 +- incoming.telemetry.mozilla.org — 252 blocked of 252 + +### espressif (192.168.68.105) +Location: Hallway; MAC: 14-C1-9F-D1-56-90; mapping: multiple_identities_seen. +Queries: 3,876; blocked: 450; block rate: 11.61%; unique domains: 764. + +Top visited (not blocked): +- time.cloudflare.com — 188 +- mask.apple-dns.net — 157 +- outlook.office365.com — 124 +- btlr.sharethrough.com — 50 +- www.google.com — 48 +- imap.gmail.com — 48 +- bag-cdn.itunes-apple.com.akadns.net — 34 +- gdmf.apple.com — 30 +- atm.outlook.mira.tm.svc.cloud.microsoft — 30 +- www.subalert.com — 28 +Top blocked: +- g2.gumgum.com — 50 blocked of 50 +- analytics.google.com — 49 blocked of 49 +- vast.doubleverify.com — 38 blocked of 38 +- cdn.doubleverify.com — 29 blocked of 29 +- entitlements.jwplayer.com — 27 blocked of 27 +- fbs.smoot.apple.com — 22 blocked of 22 +- tpt.dotomi.com — 14 blocked of 14 +- ad-events.flashtalking.com — 10 blocked of 10 +- static.adsafeprotected.com — 9 blocked of 9 +- dit.whatsapp.net — 8 blocked of 8 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 3,832; blocked: 731; block rate: 19.08%; unique domains: 529. + +Top visited (not blocked): +- ts01-b.csa.cloudsink.net — 161 +- mask.apple-dns.net — 128 +- mmx-ds.cdn.whatsapp.net — 119 +- outlook.office365.com — 112 +- www.google.com — 98 +- chat.cdn.whatsapp.net — 87 +- ts01-b.cloudsink.net — 70 +- whatsapp.com — 66 +- oauthaccountmanager.googleapis.com — 53 +- mdm-na2.mobileiron.com — 42 +Top blocked: +- dit.whatsapp.net — 186 blocked of 186 +- app-analytics-services.com — 70 blocked of 70 +- app-measurement.com — 44 blocked of 44 +- www.youtube.com — 40 blocked of 61 +- youtubei.googleapis.com — 38 blocked of 60 +- cdp.customer.io — 14 blocked of 14 +- s.youtube.com — 10 blocked of 17 +- firebaselogging-pa.googleapis.com — 10 blocked of 10 +- redirector.googlevideo.com — 8 blocked of 26 +- rr6---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com — 8 blocked of 15 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 3,623; blocked: 3,295; block rate: 90.95%; unique domains: 18. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 143 +- nrdp.push.prod.netflix.com — 97 +- api.roku.com — 28 +- themes-service.sr.roku.com — 24 +- nrdp51-appboot.netflix.com — 17 +- mediaservices.cdn-apple.com — 14 +- sw-update.cs.roku.com — 1 +- longview.sb.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,718 blocked of 2,718 +- nrdp.logs.netflix.com — 308 blocked of 308 +- liberty.logs.roku.com — 192 blocked of 192 +- logs.netflix.com — 50 blocked of 50 +- cloudservices.roku.com — 24 blocked of 24 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### iPhone (192.168.68.121) +Location: Study; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 2,588; blocked: 215; block rate: 8.31%; unique domains: 416. + +Top visited (not blocked): +- mask.apple-dns.net — 160 +- ts01-b.csa.cloudsink.net — 112 +- ts01-b.cloudsink.net — 86 +- outlook.office365.com — 74 +- whatsapp.com — 51 +- mmx-ds.cdn.whatsapp.net — 51 +- mdm-na2.mobileiron.com — 50 +- chat.cdn.whatsapp.net — 47 +- api.whatsapp.net — 42 +- photos.reynafamily.com — 39 +Top blocked: +- dit.whatsapp.net — 114 blocked of 114 +- app-analytics-services.com — 28 blocked of 28 +- fbs.smoot.apple.com — 18 blocked of 18 +- app-measurement.com — 13 blocked of 13 +- cdp.customer.io — 12 blocked of 12 +- graph.instagram.com — 5 blocked of 5 +- growth-pa.googleapis.com — 4 blocked of 4 +- collector-pxuarm9b04.perimeterx.net — 3 blocked of 3 +- analytics.mobile.walmart.com — 3 blocked of 3 +- sdk.iad-08.braze.com — 2 blocked of 2 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,358; blocked: 0; block rate: 0.00%; unique domains: 22. + +Top visited (not blocked): +- api.telegram.org — 1,149 +- chatgpt.com — 815 +- herdr.dev — 192 +- cdn.fwupd.org — 90 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- api.snapcraft.io — 11 +- auth.reynafamily.com — 4 +- security.ubuntu.com — 2 +- motd.ubuntu.com — 2 +Top blocked: +- none + +### iPad (192.168.68.129) +Location: Hallway; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 2,284; blocked: 151; block rate: 6.61%; unique domains: 325. + +Top visited (not blocked): +- mask.apple-dns.net — 397 +- ocsp2.apple.com — 64 +- _dns.resolver.arpa — 63 +- iphone-ld.apple.com — 52 +- configuration.ls.apple.com — 48 +- mask.icloud.com — 46 +- ocsp2.g.aaplimg.com — 37 +- gdmf.apple.com — 36 +- bag-cdn.itunes-apple.com.akadns.net — 30 +- iphone-ld.g.aaplimg.com — 29 +Top blocked: +- fbs.smoot.apple.com — 50 blocked of 50 +- app-analytics-services.com — 13 blocked of 13 +- youtubei.googleapis.com — 9 blocked of 14 +- unagi.amazon.com — 6 blocked of 6 +- unagi-na.amazon.com — 6 blocked of 6 +- trk.pinterest.com — 6 blocked of 6 +- partiality.itunes.apple.com — 6 blocked of 6 +- graph.facebook.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- fls-na.amazon.com — 5 blocked of 5 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,133; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,106 +- chatgpt.com — 642 +- herdr.dev — 194 +- cloud.reynafamily.com — 94 +- cdn.fwupd.org — 71 +- api.snapcraft.io — 15 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- canonical-bos01.cdn.snapcraftcontent.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: multiple_identities_seen. +Queries: 2,129; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,105 +- chatgpt.com — 634 +- herdr.dev — 185 +- cloud.reynafamily.com — 94 +- cdn.fwupd.org — 89 +- api.snapcraft.io — 11 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- canonical-bos01.cdn.snapcraftcontent.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 1,680; blocked: 1,621; block rate: 96.49%; unique domains: 12. + +Top visited (not blocked): +- api.roku.com — 26 +- themes-service.sr.roku.com — 24 +- sw-update.cs.roku.com — 2 +- mediaservices.cdn-apple.com — 2 +- austin.sb.roku.com — 2 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- api2.sr.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,428 blocked of 1,428 +- liberty.logs.roku.com — 190 blocked of 190 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 729; blocked: 20; block rate: 2.74%; unique domains: 122. + +Top visited (not blocked): +- mask.apple-dns.net — 125 +- _dns.resolver.arpa — 51 +- mask.icloud.com — 42 +- bag.itunes.apple.com — 28 +- ocsp2.apple.com — 26 +- gdmf.apple.com — 18 +- kt-prod.ess.apple.com — 14 +- gsp-ssl.ls.apple.com — 14 +- ocsp2.g.aaplimg.com — 13 +- xp.apple.com — 10 +Top blocked: +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 625; blocked: 0; block rate: 0.00%; unique domains: 36. + +Top visited (not blocked): +- 150.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +- 119.68.168.192.in-addr.arpa — 24 +- 116.68.168.192.in-addr.arpa — 24 +- 114.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.131) +Location: Study; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 298; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 298 +Top blocked: +- none + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 262; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 262 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 175; blocked: 38; block rate: 21.71%; unique domains: 16. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 77 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 32 +- www.amazon.com — 7 +- todo-ta-g7g.amazon.com — 6 +- device-messaging-na.amazon.com — 5 +- shm.amazon.com — 1 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- pins.amazon.com — 1 +- kwis-opf-preprod.amazon.com — 1 +Top blocked: +- unagi-na.amazon.com — 38 blocked of 38 + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 147; blocked: 8; block rate: 5.44%; unique domains: 34. + +Top visited (not blocked): +- time-ios.apple.com — 35 +- gateway.icloud.com — 15 +- gateway.fe2.apple-dns.net — 13 +- ocsp.apple.com — 12 +- gsp64-ssl.ls.apple.com — 7 +- gsp-ssl.ls.apple.com — 7 +- p189-keyvalueservice.icloud.com — 4 +- iphonesubmissions.apple.com — 4 +- gsp10-ssl.apple.com — 4 +- bag.itunes.apple.com — 4 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 52; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- prod.wdckeystone.com — 8 +- prod-proxy.wdckeystone.com — 8 +- time.mycloud.com — 6 +- google.com — 6 +- time.windows.com — 4 +- prod-gateway.wdckeystone.com — 4 +- config.mycloud.com — 4 +- prod-fc14d21a5887149.wdckeystone.com — 2 +- prod-cdd1bbf7f41b200.wdckeystone.com — 2 +- prod-31cdfc8017b5028.wdckeystone.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### cloud.reynafamily.com (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 23; blocked: 11; block rate: 47.83%; unique domains: 8. + +Top visited (not blocked): +- example.com — 5 +Top blocked: +- 9gag.com — 4 blocked of 4 +- youtube.com — 2 blocked of 5 +- instagram.com — 1 blocked of 3 +- facebook.com — 1 blocked of 3 +- www.youtube.com — 1 blocked of 1 +- www.instagram.com — 1 blocked of 1 +- www.facebook.com — 1 blocked of 1 + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 3; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 3 +Top blocked: +- none + +### macm1.reynafamily.com (192.168.68.127) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- gateway.icloud.com — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- local — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-07.json b/projects/network_usage/reports/2026-09-07.json new file mode 100644 index 0000000..316f4e9 --- /dev/null +++ b/projects/network_usage/reports/2026-09-07.json @@ -0,0 +1,3044 @@ +{ + "schema_version": 2, + "day": "2026-09-07", + "timezone": "America/New_York", + "generated_at": "2026-09-08T00:15:48.752637-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-07T00:00:00-04:00", + "end_local": "2026-09-08T00:00:00-04:00", + "start_epoch": 1788753600, + "end_epoch": 1788840000 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 14301 + }, + { + "status": 2, + "queries": 8588 + }, + { + "status": 3, + "queries": 34078 + }, + { + "status": 4, + "queries": 3538 + }, + { + "status": 5, + "queries": 6 + }, + { + "status": 9, + "queries": 2238 + }, + { + "status": 10, + "queries": 1453 + }, + { + "status": 12, + "queries": 10 + }, + { + "status": 14, + "queries": 1822 + }, + { + "status": 16, + "queries": 392 + }, + { + "status": 17, + "queries": 29543 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 33, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 16351, + "blocked_queries": 3711, + "block_rate_percent": 22.7, + "unique_domains": 277, + "last_query_epoch": 1788839851.7727592, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 984, + "blocked": 0, + "allowed": 984 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 366, + "blocked": 0, + "allowed": 366 + }, + { + "ip": "192.168.68.112", + "domain": "mtalk.google.com", + "queries": 311, + "blocked": 0, + "allowed": 311 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 288, + "blocked": 0, + "allowed": 288 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 279, + "blocked": 0, + "allowed": 279 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 264, + "blocked": 0, + "allowed": 264 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 252, + "blocked": 0, + "allowed": 252 + }, + { + "ip": "192.168.68.112", + "domain": "chat.openai.com", + "queries": 218, + "blocked": 0, + "allowed": 218 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 213, + "blocked": 0, + "allowed": 213 + }, + { + "ip": "192.168.68.112", + "domain": "prod-dynamite-prod-05-us-signaler-pa.clients6.google.com", + "queries": 198, + "blocked": 0, + "allowed": 198 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 3178, + "blocked": 1353, + "allowed": 1825 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 1836, + "blocked": 835, + "allowed": 1001 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 707, + "blocked": 492, + "allowed": 215 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 374, + "blocked": 276, + "allowed": 98 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 433, + "blocked": 264, + "allowed": 169 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 185, + "blocked": 142, + "allowed": 43 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.internalfb.com", + "queries": 97, + "blocked": 64, + "allowed": 33 + }, + { + "ip": "192.168.68.112", + "domain": "fbs.smoot.apple.com", + "queries": 52, + "blocked": 52, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "time1.facebook.com", + "queries": 69, + "blocked": 32, + "allowed": 37 + }, + { + "ip": "192.168.68.112", + "domain": "thrift.edge.x2p.facebook.net", + "queries": 56, + "blocked": 32, + "allowed": 24 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 11707, + "blocked_queries": 3688, + "block_rate_percent": 31.5, + "unique_domains": 1281, + "last_query_epoch": 1788839873.019383, + "deco": { + "ip": "192.168.68.117", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "logs.ads.vungle.com", + "queries": 225, + "blocked": 0, + "allowed": 225 + }, + { + "ip": "192.168.68.117", + "domain": "impression-east.liftoff.io", + "queries": 164, + "blocked": 0, + "allowed": 164 + }, + { + "ip": "192.168.68.117", + "domain": "a1838.dscw154.akamai.net", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.117", + "domain": "outlook.office365.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.117", + "domain": "xp.g.aaplimg.com", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.117", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 81, + "blocked": 0, + "allowed": 81 + }, + { + "ip": "192.168.68.117", + "domain": "mask.apple-dns.net", + "queries": 78, + "blocked": 0, + "allowed": 78 + }, + { + "ip": "192.168.68.117", + "domain": "aes.us-east.3px.axp.amazon-adsystem.com", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.117", + "domain": "cdn.liftoff-creatives.io", + "queries": 71, + "blocked": 0, + "allowed": 71 + }, + { + "ip": "192.168.68.117", + "domain": "fpinit-us-e.edge-itunes-apple.com.akadns.net", + "queries": 70, + "blocked": 0, + "allowed": 70 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "ep2.facebook.com", + "queries": 461, + "blocked": 461, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "et-eus.w.inmobi.com", + "queries": 354, + "blocked": 354, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 329, + "blocked": 329, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "eus-r.w.inmobi.com", + "queries": 263, + "blocked": 263, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "app-analytics-services.com", + "queries": 252, + "blocked": 252, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "dit.whatsapp.net", + "queries": 158, + "blocked": 158, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "unagi-na.amazon.com", + "queries": 111, + "blocked": 111, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "star.c10r.facebook.com", + "queries": 129, + "blocked": 108, + "allowed": 21 + }, + { + "ip": "192.168.68.117", + "domain": "star.fallback.c10r.facebook.com", + "queries": 128, + "blocked": 108, + "allowed": 20 + }, + { + "ip": "192.168.68.117", + "domain": "ts.amazon-adsystem.com", + "queries": 101, + "blocked": 101, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 11315, + "blocked_queries": 1693, + "block_rate_percent": 14.96, + "unique_domains": 442, + "last_query_epoch": 1788839659.3637667, + "deco": { + "ip": "192.168.68.111", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 688, + "blocked": 0, + "allowed": 688 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 537, + "blocked": 0, + "allowed": 537 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 436, + "blocked": 0, + "allowed": 436 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 418, + "blocked": 0, + "allowed": 418 + }, + { + "ip": "192.168.68.111", + "domain": "signaler-pa.clients6.google.com", + "queries": 416, + "blocked": 0, + "allowed": 416 + }, + { + "ip": "192.168.68.111", + "domain": "play.google.com", + "queries": 302, + "blocked": 0, + "allowed": 302 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 292, + "blocked": 0, + "allowed": 292 + }, + { + "ip": "192.168.68.111", + "domain": "c.pub.network", + "queries": 216, + "blocked": 0, + "allowed": 216 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 211, + "blocked": 0, + "allowed": 211 + }, + { + "ip": "192.168.68.111", + "domain": "www.apple.com", + "queries": 194, + "blocked": 0, + "allowed": 194 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 834, + "blocked": 834, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 318, + "blocked": 318, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 256, + "blocked": 247, + "allowed": 9 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "unagi.amazon.com", + "queries": 40, + "blocked": 40, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "sentry.bga.li", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "www.youtube.com", + "queries": 66, + "blocked": 22, + "allowed": 44 + }, + { + "ip": "192.168.68.111", + "domain": "unagi-na.amazon.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "rr3---sn-hp57knkl.googlevideo.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 10391, + "blocked_queries": 1771, + "block_rate_percent": 17.04, + "unique_domains": 296, + "last_query_epoch": 1788839765.5991373, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 496, + "blocked": 0, + "allowed": 496 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 388, + "blocked": 0, + "allowed": 388 + }, + { + "ip": "192.168.68.108", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 375, + "blocked": 0, + "allowed": 375 + }, + { + "ip": "192.168.68.108", + "domain": "apple.com", + "queries": 368, + "blocked": 0, + "allowed": 368 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 355, + "blocked": 0, + "allowed": 355 + }, + { + "ip": "192.168.68.108", + "domain": "us-sandbox-courier-4.push-apple.com.akadns.net", + "queries": 328, + "blocked": 0, + "allowed": 328 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 322, + "blocked": 0, + "allowed": 322 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 314, + "blocked": 0, + "allowed": 314 + }, + { + "ip": "192.168.68.108", + "domain": "cloud.reynafamily.com", + "queries": 255, + "blocked": 0, + "allowed": 255 + }, + { + "ip": "192.168.68.108", + "domain": "e6858.dsce9.akamaiedge.net", + "queries": 245, + "blocked": 0, + "allowed": 245 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 1511, + "blocked": 1511, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 124, + "blocked": 109, + "allowed": 15 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 56, + "blocked": 56, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "fbs.smoot.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "accounts.youtube.com", + "queries": 22, + "blocked": 6, + "allowed": 16 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 8123, + "blocked_queries": 1299, + "block_rate_percent": 15.99, + "unique_domains": 1286, + "last_query_epoch": 1788820370.8627665, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-07T15:31:42.638864+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 183, + "blocked": 0, + "allowed": 183 + }, + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 158, + "blocked": 0, + "allowed": 158 + }, + { + "ip": "192.168.68.104", + "domain": "btlr.sharethrough.com", + "queries": 108, + "blocked": 0, + "allowed": 108 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 74, + "blocked": 0, + "allowed": 74 + }, + { + "ip": "192.168.68.104", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.104", + "domain": "imap.gmail.com", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.104", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 41, + "blocked": 0, + "allowed": 41 + }, + { + "ip": "192.168.68.104", + "domain": "us-east-tlx.3lift.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 77, + "blocked": 77, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.doubleverify.com", + "queries": 75, + "blocked": 75, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 69, + "blocked": 69, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "vast.doubleverify.com", + "queries": 60, + "blocked": 60, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 47, + "blocked": 47, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "id5-sync.com", + "queries": 45, + "blocked": 45, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "static.adsafeprotected.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "onetag-sys.com", + "queries": 33, + "blocked": 33, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "hb-analytics.nextmillmedia.com", + "queries": 31, + "blocked": 31, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "tpt.dotomi.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 7340, + "blocked_queries": 224, + "block_rate_percent": 3.05, + "unique_domains": 44, + "last_query_epoch": 1788839827.6134708, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 3504, + "blocked": 0, + "allowed": 3504 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2080, + "blocked": 0, + "allowed": 2080 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 300, + "blocked": 0, + "allowed": 300 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 184, + "blocked": 0, + "allowed": 184 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "cluster0-shard-00-01.yyalx.mongodb.net", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.110", + "domain": "cluster0-shard-00-02.yyalx.mongodb.net", + "queries": 40, + "blocked": 0, + "allowed": 40 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 6698, + "blocked_queries": 1392, + "block_rate_percent": 20.78, + "unique_domains": 629, + "last_query_epoch": 1788839820.9189312, + "deco": { + "ip": "192.168.68.106", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 278, + "blocked": 0, + "allowed": 278 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 260, + "blocked": 0, + "allowed": 260 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.cloudsink.net", + "queries": 158, + "blocked": 0, + "allowed": 158 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 158, + "blocked": 0, + "allowed": 158 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 150, + "blocked": 0, + "allowed": 150 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 128, + "blocked": 0, + "allowed": 128 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 99, + "blocked": 0, + "allowed": 99 + }, + { + "ip": "192.168.68.106", + "domain": "mdm-na2.mobileiron.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.106", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 93, + "blocked": 0, + "allowed": 93 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.apple.com", + "queries": 66, + "blocked": 0, + "allowed": 66 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 267, + "blocked": 267, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 93, + "blocked": 93, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 43, + "blocked": 43, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "youtubei.googleapis.com", + "queries": 73, + "blocked": 37, + "allowed": 36 + }, + { + "ip": "192.168.68.106", + "domain": "cdp.customer.io", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "www.youtube.com", + "queries": 114, + "blocked": 20, + "allowed": 94 + }, + { + "ip": "192.168.68.106", + "domain": "fbs.smoot.apple.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "rr7---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com", + "queries": 25, + "blocked": 15, + "allowed": 10 + }, + { + "ip": "192.168.68.106", + "domain": "rr10---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com", + "queries": 25, + "blocked": 15, + "allowed": 10 + }, + { + "ip": "192.168.68.106", + "domain": "rr9---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com", + "queries": 23, + "blocked": 15, + "allowed": 8 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5191, + "blocked_queries": 1080, + "block_rate_percent": 20.81, + "unique_domains": 41, + "last_query_epoch": 1788839940.2557, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1968, + "blocked": 0, + "allowed": 1968 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 581, + "blocked": 0, + "allowed": 581 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 516, + "blocked": 0, + "allowed": 516 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 144, + "blocked": 0, + "allowed": 144 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 131, + "blocked": 0, + "allowed": 131 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 119, + "blocked": 0, + "allowed": 119 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 117, + "blocked": 0, + "allowed": 117 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 99, + "blocked": 0, + "allowed": 99 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 828, + "blocked": 828, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 252, + "blocked": 252, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 3706, + "blocked_queries": 3369, + "block_rate_percent": 90.91, + "unique_domains": 18, + "last_query_epoch": 1788839938.056376, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 150, + "blocked": 0, + "allowed": 150 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 100, + "blocked": 0, + "allowed": 100 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "longview.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2700, + "blocked": 2700, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 328, + "blocked": 328, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 192, + "blocked": 192, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 122, + "blocked": 122, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 3035, + "blocked_queries": 2975, + "block_rate_percent": 98.02, + "unique_domains": 15, + "last_query_epoch": 1788839959.9717164, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "tis.cti.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 2782, + "blocked": 2782, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 190, + "blocked": 190, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2515, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 28, + "last_query_epoch": 1788839934.6363788, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1066, + "blocked": 0, + "allowed": 1066 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 878, + "blocked": 0, + "allowed": 878 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-234.compute-1.amazonaws.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-01.yyalx.mongodb.net", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-227.compute-1.amazonaws.com", + "queries": 39, + "blocked": 0, + "allowed": 39 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-218.compute-1.amazonaws.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-02.yyalx.mongodb.net", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-00.yyalx.mongodb.net", + "queries": 26, + "blocked": 0, + "allowed": 26 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2107, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 14, + "last_query_epoch": 1788839951.5455515, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1150, + "blocked": 0, + "allowed": 1150 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 599, + "blocked": 0, + "allowed": 599 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "git.reynafamily.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2063, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788839951.548208, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-07T17:20:53.566065+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1147, + "blocked": 0, + "allowed": 1147 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 584, + "blocked": 0, + "allowed": 584 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 191, + "blocked": 0, + "allowed": 191 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.116", + "domain": "git.reynafamily.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1338, + "blocked_queries": 50, + "block_rate_percent": 3.74, + "unique_domains": 226, + "last_query_epoch": 1788839774.1049783, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 262, + "blocked": 0, + "allowed": 262 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 57, + "blocked": 0, + "allowed": 57 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.129", + "domain": "bag.itunes.apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.129", + "domain": "kt-prod.ess.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.129", + "domain": "gsp-ssl.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "youtubei.googleapis.com", + "queries": 14, + "blocked": 8, + "allowed": 6 + }, + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "redirector.googlevideo.com", + "queries": 8, + "blocked": 4, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 5, + "blocked": 3, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "collector-pxhyx10rg3.perimeterx.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 1065, + "blocked_queries": 27, + "block_rate_percent": 2.54, + "unique_domains": 255, + "last_query_epoch": 1788839229.663508, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 70, + "blocked": 0, + "allowed": 70 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.121", + "domain": "bag.itunes.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.121", + "domain": "h3.apis.apple.map.fastly.net", + "queries": 16, + "blocked": 0, + "allowed": 16 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 967, + "blocked_queries": 205, + "block_rate_percent": 21.2, + "unique_domains": 156, + "last_query_epoch": 1788838708.3916924, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 107, + "blocked": 0, + "allowed": 107 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.107", + "domain": "m.sni.global.fastly.net", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.107", + "domain": "init-p01md.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.107", + "domain": "pancake.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 157, + "blocked": 157, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "graph.facebook.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 627, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 33, + "last_query_epoch": 1788836401.1145413, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "119.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 446, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788839922.1941953, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 446, + "blocked": 0, + "allowed": 446 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 319, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788839990.9255652, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 319, + "blocked": 0, + "allowed": 319 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 201, + "blocked_queries": 44, + "block_rate_percent": 21.89, + "unique_domains": 8, + "last_query_epoch": 1788839114.2311301, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 163, + "blocked_queries": 8, + "block_rate_percent": 4.91, + "unique_domains": 39, + "last_query_epoch": 1788839604.9145427, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:41:34.073391+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.150", + "domain": "bag.itunes.apple.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "metrics.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 129, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788839852.2892563, + "deco": { + "ip": "192.168.68.127", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 129, + "blocked": 0, + "allowed": 129 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 50, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1788830649.7617939, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-7c74fffc718ed01.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-701f05f7a9a5fda.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788837251.9753242, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788838700.1667843, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 22, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1788830275.1697154, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.131", + "domain": "init.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "init.itunes.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "gspe1-ssl.ls.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "5-courier2.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.131", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.131", + "domain": "init.push-apple.com.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.131", + "domain": "gateway.icloud.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788782518.9711142, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788833248.7813456, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:41:34.073391+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.122", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788789226.6581748, + "deco": { + "ip": "192.168.68.122", + "mac": "48-D6-D5-7B-91-C5", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T03:51:36.972703+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.122", + "domain": "clients3.google.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-07.md b/projects/network_usage/reports/2026-09-07.md new file mode 100644 index 0000000..cca5505 --- /dev/null +++ b/projects/network_usage/reports/2026-09-07.md @@ -0,0 +1,579 @@ +# Pi-hole DNS usage — 2026-09-07 + +Window: 2026-09-07T00:00:00-04:00 to 2026-09-08T00:00:00-04:00 (America/New_York) +Generated: 2026-09-08T00:15:48.752637-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Office | 16,351 | 3,711 | 22.70% | `internalfb.com` | `www.internalfb.com` | +| iPhone | 192.168.68.117 | Hallway | 11,707 | 3,688 | 31.50% | `logs.ads.vungle.com` | `ep2.facebook.com` | +| Mac | 192.168.68.111 | Hallway | 11,315 | 1,693 | 14.96% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.108 | Hallway | 10,391 | 1,771 | 17.04% | `www.apple.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Study | 8,123 | 1,299 | 15.99% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 7,340 | 224 | 3.05% | `chatgpt.com` | `telemetry.n8n.io` | +| iPhone | 192.168.68.106 | Hallway | 6,698 | 1,392 | 20.78% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeyna-iMac11-3 | 192.168.68.124 | WashMachine | 5,191 | 1,080 | 20.81% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| 50CasitaTv | 192.168.68.114 | Casita | 3,706 | 3,369 | 90.91% | `nrdp.prod.ftl.netflix.com` | `scribe.logs.roku.com` | +| 50LivingRoom | 192.168.68.100 | Office | 3,035 | 2,975 | 98.02% | `api.roku.com` | `scribe.logs.roku.com` | +| emiserver | 192.168.68.119 | Office | 2,515 | 0 | 0.00% | `api.telegram.org` | `—` | +| aeropi5 | 192.168.68.126 | Office | 2,107 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,063 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPad | 192.168.68.129 | Hallway | 1,338 | 50 | 3.74% | `mask.apple-dns.net` | `youtubei.googleapis.com` | +| iPhone | 192.168.68.121 | Study | 1,065 | 27 | 2.54% | `mask.apple-dns.net` | `experiments.apple.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 967 | 205 | 21.20% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| localhost | 127.0.0.1 | not mapped | 627 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.105 | Study | 446 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.113 | Study | 319 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 201 | 44 | 21.89% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Adolfos-iPhone | 192.168.68.150 | Office | 163 | 8 | 4.91% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| espressif | 192.168.68.127 | Office | 129 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 50 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| Unknown device | 192.168.68.131 | not mapped | 22 | 0 | 0.00% | `podcast.emmint.com` | `—` | +| Mac | 192.168.68.102 | Office | 2 | 0 | 0.00% | `local` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 1 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Google-Home-Mini | 192.168.68.122 | Office | 1 | 0 | 0.00% | `clients3.google.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 16,351; blocked: 3,711; block rate: 22.70%; unique domains: 277. + +Top visited (not blocked): +- internalfb.com — 984 +- ssl.gstatic.com — 366 +- mtalk.google.com — 311 +- api.manus.im — 288 +- play.google.com — 279 +- chat.google.com — 264 +- beacons.gcp.gvt2.com — 252 +- chat.openai.com — 218 +- signaler-pa.clients6.google.com — 213 +- prod-dynamite-prod-05-us-signaler-pa.clients6.google.com — 198 +Top blocked: +- www.internalfb.com — 1,353 blocked of 3,178 +- graph.facebook.com — 835 blocked of 1,836 +- graph.prod.facebook.com — 492 blocked of 707 +- interngraph.internmc.facebook.com — 276 blocked of 374 +- www.facebook.com — 264 blocked of 433 +- tokenservice.edge.x2p.facebook.net — 142 blocked of 185 +- gateway.internalfb.com — 64 blocked of 97 +- fbs.smoot.apple.com — 52 blocked of 52 +- time1.facebook.com — 32 blocked of 69 +- thrift.edge.x2p.facebook.net — 32 blocked of 56 + +### iPhone (192.168.68.117) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: multiple_identities_seen. +Queries: 11,707; blocked: 3,688; block rate: 31.50%; unique domains: 1,281. + +Top visited (not blocked): +- logs.ads.vungle.com — 225 +- impression-east.liftoff.io — 164 +- a1838.dscw154.akamai.net — 112 +- outlook.office365.com — 90 +- xp.g.aaplimg.com — 89 +- mmx-ds.cdn.whatsapp.net — 81 +- mask.apple-dns.net — 78 +- aes.us-east.3px.axp.amazon-adsystem.com — 72 +- cdn.liftoff-creatives.io — 71 +- fpinit-us-e.edge-itunes-apple.com.akadns.net — 70 +Top blocked: +- ep2.facebook.com — 461 blocked of 461 +- et-eus.w.inmobi.com — 354 blocked of 354 +- firebaselogging-pa.googleapis.com — 329 blocked of 329 +- eus-r.w.inmobi.com — 263 blocked of 263 +- app-analytics-services.com — 252 blocked of 252 +- dit.whatsapp.net — 158 blocked of 158 +- unagi-na.amazon.com — 111 blocked of 111 +- star.c10r.facebook.com — 108 blocked of 129 +- star.fallback.c10r.facebook.com — 108 blocked of 128 +- ts.amazon-adsystem.com — 101 blocked of 101 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 11,315; blocked: 1,693; block rate: 14.96%; unique domains: 442. + +Top visited (not blocked): +- ssl.gstatic.com — 688 +- outlook.cloud.microsoft — 537 +- optimizationguide-pa.googleapis.com — 436 +- chat.google.com — 418 +- signaler-pa.clients6.google.com — 416 +- play.google.com — 302 +- www.google.com — 292 +- c.pub.network — 216 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 211 +- www.apple.com — 194 +Top blocked: +- dit.whatsapp.net — 834 blocked of 834 +- word-telemetry.officeapps.live.com — 318 blocked of 318 +- bam.nr-data.net — 247 blocked of 256 +- track.capitaloneshopping.com — 46 blocked of 46 +- unagi.amazon.com — 40 blocked of 40 +- sentry.bga.li — 36 blocked of 36 +- analytics.google.com — 34 blocked of 34 +- www.youtube.com — 22 blocked of 66 +- unagi-na.amazon.com — 10 blocked of 10 +- rr3---sn-hp57knkl.googlevideo.com — 8 blocked of 8 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 10,391; blocked: 1,771; block rate: 17.04%; unique domains: 296. + +Top visited (not blocked): +- www.apple.com — 496 +- 1.courier-sandbox-push-apple.com.akadns.net — 388 +- api.apple-cloudkit.fe2.apple-dns.net — 375 +- apple.com — 368 +- mmx-ds.cdn.whatsapp.net — 355 +- us-sandbox-courier-4.push-apple.com.akadns.net — 328 +- chat.openai.com — 322 +- chatgpt.com — 314 +- cloud.reynafamily.com — 255 +- e6858.dsce9.akamaiedge.net — 245 +Top blocked: +- dit.whatsapp.net — 1,511 blocked of 1,511 +- www.youtube.com — 109 blocked of 124 +- slackb.com — 56 blocked of 56 +- sentry.bga.li — 16 blocked of 16 +- analytics.google.com — 14 blocked of 14 +- fbs.smoot.apple.com — 12 blocked of 12 +- partiality.itunes.apple.com — 11 blocked of 11 +- cf.iadsdk.apple.com — 11 blocked of 11 +- ogads-pa.clients6.google.com — 8 blocked of 8 +- accounts.youtube.com — 6 blocked of 22 + +### iPhone (192.168.68.104) +Location: Study; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 8,123; blocked: 1,299; block rate: 15.99%; unique domains: 1,286. + +Top visited (not blocked): +- mask.apple-dns.net — 183 +- outlook.office365.com — 158 +- btlr.sharethrough.com — 108 +- www.google.com — 74 +- bag-cdn.itunes-apple.com.akadns.net — 54 +- imap.gmail.com — 53 +- ocsp2.apple.com — 46 +- mmx-ds.cdn.whatsapp.net — 43 +- atm.outlook.mira.tm.svc.cloud.microsoft — 41 +- us-east-tlx.3lift.com — 36 +Top blocked: +- dit.whatsapp.net — 77 blocked of 77 +- cdn.doubleverify.com — 75 blocked of 75 +- g2.gumgum.com — 69 blocked of 69 +- vast.doubleverify.com — 60 blocked of 60 +- choices.truste.com — 47 blocked of 47 +- id5-sync.com — 45 blocked of 45 +- static.adsafeprotected.com — 34 blocked of 34 +- onetag-sys.com — 33 blocked of 33 +- hb-analytics.nextmillmedia.com — 31 blocked of 31 +- tpt.dotomi.com — 30 blocked of 30 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 7,340; blocked: 224; block rate: 3.05%; unique domains: 44. + +Top visited (not blocked): +- chatgpt.com — 3,504 +- herdr.dev — 2,080 +- media.reynafamily.com — 570 +- adolforeynaserver — 300 +- acme-v02.api.letsencrypt.org — 184 +- ph.n8n.io — 114 +- version.goauthentik.io — 48 +- api.github.com — 48 +- cluster0-shard-00-01.yyalx.mongodb.net — 44 +- cluster0-shard-00-02.yyalx.mongodb.net — 40 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 6,698; blocked: 1,392; block rate: 20.78%; unique domains: 629. + +Top visited (not blocked): +- mask.apple-dns.net — 278 +- ts01-b.csa.cloudsink.net — 260 +- ts01-b.cloudsink.net — 158 +- outlook.office365.com — 158 +- mmx-ds.cdn.whatsapp.net — 150 +- chat.cdn.whatsapp.net — 128 +- www.google.com — 99 +- mdm-na2.mobileiron.com — 96 +- oauthaccountmanager.googleapis.com — 93 +- ocsp2.apple.com — 66 +Top blocked: +- dit.whatsapp.net — 267 blocked of 267 +- app-analytics-services.com — 93 blocked of 93 +- app-measurement.com — 43 blocked of 43 +- youtubei.googleapis.com — 37 blocked of 73 +- cdp.customer.io — 24 blocked of 24 +- www.youtube.com — 20 blocked of 114 +- fbs.smoot.apple.com — 20 blocked of 20 +- rr7---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com — 15 blocked of 25 +- rr10---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com — 15 blocked of 25 +- rr9---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com — 15 blocked of 23 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: WashMachine; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,191; blocked: 1,080; block rate: 20.81%; unique domains: 41. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,968 +- connectivity-check.ubuntu.com — 581 +- chatgpt.com — 516 +- push.services.mozilla.com — 144 +- firefox.settings.services.mozilla.com — 131 +- filters.adtidy.org — 120 +- www.recaptcha.net — 119 +- www.gstatic.com — 117 +- fonts.gstatic.com — 99 +- merino.services.mozilla.com — 97 +Top blocked: +- cdp.cloud.unity3d.com — 828 blocked of 828 +- incoming.telemetry.mozilla.org — 252 blocked of 252 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 3,706; blocked: 3,369; block rate: 90.91%; unique domains: 18. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 150 +- nrdp.push.prod.netflix.com — 100 +- api.roku.com — 27 +- themes-service.sr.roku.com — 24 +- nrdp51-appboot.netflix.com — 17 +- mediaservices.cdn-apple.com — 14 +- sw-update.cs.roku.com — 1 +- longview.sb.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,700 blocked of 2,700 +- nrdp.logs.netflix.com — 328 blocked of 328 +- liberty.logs.roku.com — 192 blocked of 192 +- logs.netflix.com — 122 blocked of 122 +- cloudservices.roku.com — 24 blocked of 24 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 3,035; blocked: 2,975; block rate: 98.02%; unique domains: 15. + +Top visited (not blocked): +- api.roku.com — 25 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 2 +- configsvc.cs.roku.com — 2 +- tis.cti.roku.com — 1 +- sw-update.cs.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- austin.sb.roku.com — 1 +- api2.sr.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,782 blocked of 2,782 +- liberty.logs.roku.com — 190 blocked of 190 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,515; blocked: 0; block rate: 0.00%; unique domains: 28. + +Top visited (not blocked): +- api.telegram.org — 1,066 +- chatgpt.com — 878 +- herdr.dev — 192 +- ec2-89-192-235-234.compute-1.amazonaws.com — 56 +- version.goauthentik.io — 48 +- cluster0-shard-00-01.yyalx.mongodb.net — 42 +- ec2-89-192-235-227.compute-1.amazonaws.com — 39 +- ec2-89-192-235-218.compute-1.amazonaws.com — 38 +- cluster0-shard-00-02.yyalx.mongodb.net — 30 +- cluster0-shard-00-00.yyalx.mongodb.net — 26 +Top blocked: +- none + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,107; blocked: 0; block rate: 0.00%; unique domains: 14. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,150 +- chatgpt.com — 599 +- herdr.dev — 204 +- cloud.reynafamily.com — 94 +- cdn.fwupd.org — 34 +- api.snapcraft.io — 12 +- git.reynafamily.com — 4 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: multiple_identities_seen. +Queries: 2,063; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,147 +- chatgpt.com — 584 +- herdr.dev — 191 +- cloud.reynafamily.com — 94 +- cdn.fwupd.org — 22 +- api.snapcraft.io — 12 +- git.reynafamily.com — 4 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### iPad (192.168.68.129) +Location: Hallway; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,338; blocked: 50; block rate: 3.74%; unique domains: 226. + +Top visited (not blocked): +- mask.apple-dns.net — 262 +- _dns.resolver.arpa — 57 +- iphone-ld.apple.com — 54 +- ocsp2.apple.com — 44 +- mask.icloud.com — 44 +- iphone-ld.g.aaplimg.com — 42 +- ocsp2.g.aaplimg.com — 27 +- bag.itunes.apple.com — 20 +- kt-prod.ess.apple.com — 18 +- gsp-ssl.ls.apple.com — 18 +Top blocked: +- youtubei.googleapis.com — 8 blocked of 14 +- fbs.smoot.apple.com — 8 blocked of 8 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- redirector.googlevideo.com — 4 blocked of 8 +- app-analytics-services.com — 4 blocked of 4 +- rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 3 blocked of 5 +- trk.pinterest.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- collector-pxhyx10rg3.perimeterx.net — 2 blocked of 2 + +### iPhone (192.168.68.121) +Location: Study; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 1,065; blocked: 27; block rate: 2.54%; unique domains: 255. + +Top visited (not blocked): +- mask.apple-dns.net — 70 +- _dns.resolver.arpa — 34 +- www.subalert.com — 32 +- iphone-ld.apple.com — 30 +- mask.icloud.com — 28 +- ocsp2.apple.com — 24 +- subalert.com — 22 +- ocsp2.g.aaplimg.com — 20 +- bag.itunes.apple.com — 18 +- h3.apis.apple.map.fastly.net — 16 +Top blocked: +- experiments.apple.com — 11 blocked of 11 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- iadsdk.apple.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 967; blocked: 205; block rate: 21.20%; unique domains: 156. + +Top visited (not blocked): +- mask.apple-dns.net — 107 +- _dns.resolver.arpa — 53 +- mask.icloud.com — 40 +- ocsp2.apple.com — 28 +- bag.itunes.apple.com — 24 +- m.sni.global.fastly.net — 19 +- gsp-ssl.ls.apple.com — 18 +- ocsp2.g.aaplimg.com — 16 +- init-p01md.apple.com — 14 +- pancake.apple.com — 12 +Top blocked: +- sdk.iad-01.braze.com — 157 blocked of 157 +- app-measurement.com — 24 blocked of 24 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- graph.facebook.com — 2 blocked of 2 +- firebaselogging-pa.googleapis.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- banner.youversionapi.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 627; blocked: 0; block rate: 0.00%; unique domains: 33. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +- 119.68.168.192.in-addr.arpa — 24 +- 116.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.105) +Location: Study; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 446; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 446 +Top blocked: +- none + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 319; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 319 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 201; blocked: 44; block rate: 21.89%; unique domains: 8. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 89 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 52 +- www.amazon.com — 7 +- m.media-amazon.com — 4 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 44 blocked of 44 + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 163; blocked: 8; block rate: 4.91%; unique domains: 39. + +Top visited (not blocked): +- time-ios.apple.com — 36 +- gateway.icloud.com — 18 +- gateway.fe2.apple-dns.net — 14 +- ocsp.apple.com — 11 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +- p189-keyvalueservice.icloud.com — 5 +- bag.itunes.apple.com — 5 +- xp.apple.com — 4 +- metrics.icloud.com — 4 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.127) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 129; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 129 +Top blocked: +- none + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 50; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- prod.wdckeystone.com — 10 +- prod-proxy.wdckeystone.com — 8 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-gateway.wdckeystone.com — 4 +- prod-7c74fffc718ed01.wdckeystone.com — 4 +- google.com — 4 +- config.mycloud.com — 4 +- prod-701f05f7a9a5fda.wdckeystone.com — 2 +- prod-31cdfc8017b5028.wdckeystone.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### Unknown device (192.168.68.131) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 22; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- podcast.emmint.com — 4 +- _dns.resolver.arpa — 3 +- init.push.apple.com — 2 +- init.itunes.apple.com — 2 +- gspe1-ssl.ls.apple.com — 2 +- 5-courier2.push.apple.com — 2 +- us-se-courier-vs.push-apple.com.akadns.net — 1 +- s3.amazonaws.com — 1 +- init.push-apple.com.akadns.net — 1 +- gateway.icloud.com — 1 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- local — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 1 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.122) +Location: Office; MAC: 48-D6-D5-7B-91-C5; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- clients3.google.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-08.json b/projects/network_usage/reports/2026-09-08.json new file mode 100644 index 0000000..81d1c88 --- /dev/null +++ b/projects/network_usage/reports/2026-09-08.json @@ -0,0 +1,3306 @@ +{ + "schema_version": 2, + "day": "2026-09-08", + "timezone": "America/New_York", + "generated_at": "2026-09-09T00:15:32.158174-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-08T00:00:00-04:00", + "end_local": "2026-09-09T00:00:00-04:00", + "start_epoch": 1788840000, + "end_epoch": 1788926400 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 13151 + }, + { + "status": 2, + "queries": 13937 + }, + { + "status": 3, + "queries": 58218 + }, + { + "status": 4, + "queries": 2174 + }, + { + "status": 5, + "queries": 44 + }, + { + "status": 9, + "queries": 1511 + }, + { + "status": 10, + "queries": 1466 + }, + { + "status": 12, + "queries": 20 + }, + { + "status": 14, + "queries": 2195 + }, + { + "status": 16, + "queries": 438 + }, + { + "status": 17, + "queries": 39660 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 36, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 43302, + "blocked_queries": 3843, + "block_rate_percent": 8.87, + "unique_domains": 553, + "last_query_epoch": 1788925981.0021613, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 3378, + "blocked": 0, + "allowed": 3378 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 1329, + "blocked": 0, + "allowed": 1329 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 1030, + "blocked": 0, + "allowed": 1030 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 967, + "blocked": 0, + "allowed": 967 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 831, + "blocked": 0, + "allowed": 831 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 723, + "blocked": 0, + "allowed": 723 + }, + { + "ip": "192.168.68.112", + "domain": "chromereporting-pa.googleapis.com", + "queries": 600, + "blocked": 0, + "allowed": 600 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 537, + "blocked": 0, + "allowed": 537 + }, + { + "ip": "192.168.68.112", + "domain": "peoplestack-pa.clients6.google.com", + "queries": 513, + "blocked": 0, + "allowed": 513 + }, + { + "ip": "192.168.68.112", + "domain": "waa-pa.clients6.google.com", + "queries": 504, + "blocked": 0, + "allowed": 504 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 9608, + "blocked": 1159, + "allowed": 8449 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 4833, + "blocked": 682, + "allowed": 4151 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 782, + "blocked": 418, + "allowed": 364 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 496, + "blocked": 210, + "allowed": 286 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 392, + "blocked": 147, + "allowed": 245 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 146, + "blocked": 142, + "allowed": 4 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 182, + "blocked": 140, + "allowed": 42 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.internalfb.com", + "queries": 360, + "blocked": 128, + "allowed": 232 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 99, + "blocked": 99, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 90, + "blocked": 86, + "allowed": 4 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 20048, + "blocked_queries": 2230, + "block_rate_percent": 11.12, + "unique_domains": 592, + "last_query_epoch": 1788926398.284875, + "deco": { + "ip": "192.168.68.111", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 1118, + "blocked": 0, + "allowed": 1118 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 982, + "blocked": 0, + "allowed": 982 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 824, + "blocked": 0, + "allowed": 824 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 733, + "blocked": 0, + "allowed": 733 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 677, + "blocked": 0, + "allowed": 677 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 650, + "blocked": 0, + "allowed": 650 + }, + { + "ip": "192.168.68.111", + "domain": "e6858.dsce9.akamaiedge.net", + "queries": 597, + "blocked": 0, + "allowed": 597 + }, + { + "ip": "192.168.68.111", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 534, + "blocked": 0, + "allowed": 534 + }, + { + "ip": "192.168.68.111", + "domain": "play.google.com", + "queries": 460, + "blocked": 0, + "allowed": 460 + }, + { + "ip": "192.168.68.111", + "domain": "www.apple.com", + "queries": 407, + "blocked": 0, + "allowed": 407 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 1051, + "blocked": 1047, + "allowed": 4 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 646, + "blocked": 644, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 193, + "blocked": 169, + "allowed": 24 + }, + { + "ip": "192.168.68.111", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 82, + "blocked": 82, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 56, + "blocked": 56, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "sentry.bga.li", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ogads-pa.clients6.google.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ups.analytics.yahoo.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "id5-sync.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 13967, + "blocked_queries": 3187, + "block_rate_percent": 22.82, + "unique_domains": 1757, + "last_query_epoch": 1788926364.3783436, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 216, + "blocked": 0, + "allowed": 216 + }, + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 207, + "blocked": 0, + "allowed": 207 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 177, + "blocked": 0, + "allowed": 177 + }, + { + "ip": "192.168.68.104", + "domain": "btlr.sharethrough.com", + "queries": 116, + "blocked": 0, + "allowed": 116 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 93, + "blocked": 0, + "allowed": 93 + }, + { + "ip": "192.168.68.104", + "domain": "get-bx.g.aaplimg.com", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.104", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.104", + "domain": "sync.srv.stackadapt.com", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.104", + "domain": "match.sharethrough.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 426, + "blocked": 426, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 119, + "blocked": 119, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.doubleverify.com", + "queries": 118, + "blocked": 118, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 86, + "blocked": 86, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "qvdt3feo.com", + "queries": 82, + "blocked": 82, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "static.adsafeprotected.com", + "queries": 79, + "blocked": 79, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 78, + "blocked": 78, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "id5-sync.com", + "queries": 72, + "blocked": 72, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "c1.adform.net", + "queries": 68, + "blocked": 68, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ups.analytics.yahoo.com", + "queries": 59, + "blocked": 59, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 12461, + "blocked_queries": 1480, + "block_rate_percent": 11.88, + "unique_domains": 551, + "last_query_epoch": 1788925699.593743, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 1048, + "blocked": 0, + "allowed": 1048 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 546, + "blocked": 0, + "allowed": 546 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 516, + "blocked": 0, + "allowed": 516 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 401, + "blocked": 0, + "allowed": 401 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 363, + "blocked": 0, + "allowed": 363 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 348, + "blocked": 0, + "allowed": 348 + }, + { + "ip": "192.168.68.108", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 342, + "blocked": 0, + "allowed": 342 + }, + { + "ip": "192.168.68.108", + "domain": "ab.chatgpt.com", + "queries": 320, + "blocked": 0, + "allowed": 320 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 314, + "blocked": 0, + "allowed": 314 + }, + { + "ip": "192.168.68.108", + "domain": "apple.com", + "queries": 299, + "blocked": 0, + "allowed": 299 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 1184, + "blocked": 1180, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 113, + "blocked": 109, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 46, + "blocked": 37, + "allowed": 9 + }, + { + "ip": "192.168.68.108", + "domain": "event.bblmw.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 44, + "blocked": 10, + "allowed": 34 + }, + { + "ip": "192.168.68.108", + "domain": "partiality.itunes.apple.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "cf.iadsdk.apple.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "accounts.youtube.com", + "queries": 56, + "blocked": 8, + "allowed": 48 + }, + { + "ip": "192.168.68.108", + "domain": "w3-reporting-nel.reddit.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 11005, + "blocked_queries": 2025, + "block_rate_percent": 18.4, + "unique_domains": 718, + "last_query_epoch": 1788926341.6789365, + "deco": { + "ip": "192.168.68.106", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 467, + "blocked": 0, + "allowed": 467 + }, + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 435, + "blocked": 0, + "allowed": 435 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 381, + "blocked": 0, + "allowed": 381 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 292, + "blocked": 0, + "allowed": 292 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 287, + "blocked": 0, + "allowed": 287 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.cloudsink.net", + "queries": 234, + "blocked": 0, + "allowed": 234 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 215, + "blocked": 0, + "allowed": 215 + }, + { + "ip": "192.168.68.106", + "domain": "whatsapp.com", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.106", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 162, + "blocked": 0, + "allowed": 162 + }, + { + "ip": "192.168.68.106", + "domain": "mdm-na2.mobileiron.com", + "queries": 142, + "blocked": 0, + "allowed": 142 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 648, + "blocked": 644, + "allowed": 4 + }, + { + "ip": "192.168.68.106", + "domain": "news-app-events.apple.com", + "queries": 276, + "blocked": 276, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "stocks-analytics-events.apple.com", + "queries": 259, + "blocked": 257, + "allowed": 2 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 112, + "blocked": 111, + "allowed": 1 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 47, + "blocked": 46, + "allowed": 1 + }, + { + "ip": "192.168.68.106", + "domain": "unagi-na.amazon.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "unagi.amazon.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "fls-na.amazon.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "sdk.iad-05.braze.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "cdp.customer.io", + "queries": 26, + "blocked": 26, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 6656, + "blocked_queries": 208, + "block_rate_percent": 3.12, + "unique_domains": 25, + "last_query_epoch": 1788926229.6034276, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 3040, + "blocked": 0, + "allowed": 3040 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 304, + "blocked": 0, + "allowed": 304 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 168, + "blocked": 0, + "allowed": 168 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "auth.openai.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 212, + "blocked": 208, + "allowed": 4 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5181, + "blocked_queries": 941, + "block_rate_percent": 18.16, + "unique_domains": 52, + "last_query_epoch": 1788926342.2550073, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1939, + "blocked": 0, + "allowed": 1939 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 647, + "blocked": 0, + "allowed": 647 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 578, + "blocked": 0, + "allowed": 578 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 129, + "blocked": 0, + "allowed": 129 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 116, + "blocked": 0, + "allowed": 116 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 99, + "blocked": 0, + "allowed": 99 + }, + { + "ip": "192.168.68.124", + "domain": "1a1inqjh.p.qrcdn.net", + "queries": 96, + "blocked": 0, + "allowed": 96 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 822, + "blocked": 813, + "allowed": 9 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 128, + "blocked": 128, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 4124, + "blocked_queries": 531, + "block_rate_percent": 12.88, + "unique_domains": 824, + "last_query_epoch": 1788926304.4000854, + "deco": { + "ip": "192.168.68.117", + "mac": "24-FD-FA-03-53-0C", + "hostname": "Alicia-2022-2", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "mask.apple-dns.net", + "queries": 162, + "blocked": 0, + "allowed": 162 + }, + { + "ip": "192.168.68.117", + "domain": "outlook.office365.com", + "queries": 104, + "blocked": 0, + "allowed": 104 + }, + { + "ip": "192.168.68.117", + "domain": "imap.gmail.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.117", + "domain": "www.google.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.117", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.117", + "domain": "btlr.sharethrough.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.117", + "domain": "get-bx.g.aaplimg.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.117", + "domain": "ocsp2.apple.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.117", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.117", + "domain": "ocsp2.g.aaplimg.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "dit.whatsapp.net", + "queries": 79, + "blocked": 79, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "unagi-na.amazon.com", + "queries": 40, + "blocked": 40, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "unagi.amazon.com", + "queries": 31, + "blocked": 31, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "g2.gumgum.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "fls-na.amazon.com", + "queries": 27, + "blocked": 27, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "ep2.facebook.com", + "queries": 25, + "blocked": 25, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "events.devcycle.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "cdn.doubleverify.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "choices.truste.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 2393, + "blocked_queries": 2177, + "block_rate_percent": 90.97, + "unique_domains": 27, + "last_query_epoch": 1788926367.0541222, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.ftl.netflix.com", + "queries": 68, + "blocked": 0, + "allowed": 68 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "occ-0-1413-1412.1.nflxso.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.114", + "domain": "api2.sr.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "tis.cti.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 1740, + "blocked": 1736, + "allowed": 4 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 210, + "blocked": 208, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 161, + "blocked": 161, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 25, + "blocked": 25, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2094, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 24, + "last_query_epoch": 1788926335.2379596, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1097, + "blocked": 0, + "allowed": 1097 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 692, + "blocked": 0, + "allowed": 692 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 175, + "blocked": 0, + "allowed": 175 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.119", + "domain": "us.i.posthog.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "sdmntprcentralus.oaiusercontent.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2051, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1788926368.3561592, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1136, + "blocked": 0, + "allowed": 1136 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 603, + "blocked": 0, + "allowed": 603 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.126", + "domain": "sdmntprcentralus.oaiusercontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2020, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1788926368.357274, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-09T02:31:10.210880+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1128, + "blocked": 0, + "allowed": 1128 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 579, + "blocked": 0, + "allowed": 579 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.116", + "domain": "sdmntprcentralus.oaiusercontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1742, + "blocked_queries": 62, + "block_rate_percent": 3.56, + "unique_domains": 194, + "last_query_epoch": 1788926306.2376447, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:41:19.849669+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 391, + "blocked": 0, + "allowed": 391 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.129", + "domain": "get-bx.g.aaplimg.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.129", + "domain": "gsp-ssl.ls.apple.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 28, + "blocked": 26, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "youtubei.googleapis.com", + "queries": 11, + "blocked": 6, + "allowed": 5 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "s.youtube.com", + "queries": 6, + "blocked": 2, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "dit.whatsapp.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 1647, + "blocked_queries": 1576, + "block_rate_percent": 95.69, + "unique_domains": 14, + "last_query_epoch": 1788926098.9043553, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api-g2.rokutime.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 1374, + "blocked": 1370, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 208, + "blocked": 202, + "allowed": 6 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 1058, + "blocked_queries": 38, + "block_rate_percent": 3.59, + "unique_domains": 154, + "last_query_epoch": 1788925247.3209493, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 101, + "blocked": 0, + "allowed": 101 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.121", + "domain": "bag.itunes.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 5, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 5, + "allowed": 2 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 778, + "blocked_queries": 4, + "block_rate_percent": 0.51, + "unique_domains": 132, + "last_query_epoch": 1788925833.819062, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 147, + "blocked": 0, + "allowed": 147 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "init-p01md.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 694, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 40, + "last_query_epoch": 1788922800.6284666, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "127.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 419, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788926077.3010051, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 418, + "blocked": 0, + "allowed": 418 + }, + { + "ip": "192.168.68.113", + "domain": "cdn.tactilityproject.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 298, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788926390.3088727, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 297, + "blocked": 0, + "allowed": 297 + }, + { + "ip": "192.168.68.105", + "domain": "cdn.tactilityproject.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 295, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788926151.1890812, + "deco": { + "ip": "192.168.68.127", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 295, + "blocked": 0, + "allowed": 295 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 167, + "blocked_queries": 8, + "block_rate_percent": 4.79, + "unique_domains": 42, + "last_query_epoch": 1788925870.6574528, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:21:16.218870+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "init.itunes.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "iphonesubmissions.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 157, + "blocked_queries": 36, + "block_rate_percent": 22.93, + "unique_domains": 10, + "last_query_epoch": 1788925502.825019, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 75, + "blocked": 0, + "allowed": 75 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "sync.datamate.kindle.amazon.dev", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 50, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1788911398.7734053, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-cdd1bbf7f41b200.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-7c74fffc718ed01.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 50, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 6, + "last_query_epoch": 1788926308.0367517, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.135", + "domain": "or-cloud-upload-prod.s3.us-west-2.amazonaws.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.135", + "domain": "e.bambulab.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.135", + "domain": "www.microsoft.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.135", + "domain": "us.mqtt.bambulab.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788923760.9983194, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788925119.2182038, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 14, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 6, + "last_query_epoch": 1788910189.7402904, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "7-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "10-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "0-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "outlook-ww-acdc-fs.trafficmanager.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.130", + "domain": "gateway.icloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.130", + "domain": "mask.apple-dns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 13, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1788924930.832911, + "deco": { + "ip": "192.168.68.131", + "mac": "84-28-59-E8-42-80", + "hostname": "Blink-Device", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T23:21:38.892199+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "podcast.emmint.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 11, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 7, + "last_query_epoch": 1788910189.704591, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "login.mso.msidentity.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.102", + "domain": "outlook-ww-acdc-fs.trafficmanager.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "130.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "www.tm.a.prd.aadg.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "e6858.dsce9.akamaiedge.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 10, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1788893134.0997093, + "deco": { + "ip": "192.168.68.132", + "mac": "24-FD-FA-03-53-0C", + "hostname": "Adolfo-i16", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T18:50:57.494611+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "eu.tectonic.remarkable.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.132", + "domain": "webapp-prod.cloud.remarkable.engineering", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.132", + "domain": "ping.remarkable.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.132", + "domain": "dev.tectonic.remarkable.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 4, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1788899265.241215, + "deco": { + "ip": "192.168.68.136", + "mac": "56-68-92-84-12-EE", + "hostname": "phone", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-08T20:31:11.169956+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "3-courier2.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.136", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.120", + "pihole_name": "", + "queries": 4, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1788883386.117971, + "deco": { + "ip": "192.168.68.120", + "mac": "E4-F0-42-2E-E0-4E", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.120", + "domain": "clients4.google.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.120", + "domain": "clients3.google.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 3, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788895757.853515, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788918993.7988076, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.122", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788895946.2377172, + "deco": { + "ip": "192.168.68.122", + "mac": "48-D6-D5-7B-91-C5", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T03:51:22.868915+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.122", + "domain": "clients3.google.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-08.md b/projects/network_usage/reports/2026-09-08.md new file mode 100644 index 0000000..f03c53f --- /dev/null +++ b/projects/network_usage/reports/2026-09-08.md @@ -0,0 +1,649 @@ +# Pi-hole DNS usage — 2026-09-08 + +Window: 2026-09-08T00:00:00-04:00 to 2026-09-09T00:00:00-04:00 (America/New_York) +Generated: 2026-09-09T00:15:32.158174-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Office | 43,302 | 3,843 | 8.87% | `internalfb.com` | `www.internalfb.com` | +| Mac | 192.168.68.111 | Hallway | 20,048 | 2,230 | 11.12% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Hallway | 13,967 | 3,187 | 22.82% | `outlook.office365.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.108 | Hallway | 12,461 | 1,480 | 11.88% | `whatsapp.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.106 | Hallway | 11,005 | 2,025 | 18.40% | `ts01-b.csa.cloudsink.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 6,656 | 208 | 3.12% | `chatgpt.com` | `telemetry.n8n.io` | +| adolforeyna-iMac11-3 | 192.168.68.124 | Study | 5,181 | 941 | 18.16% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| Alicia-2022-2 | 192.168.68.117 | Hallway | 4,124 | 531 | 12.88% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 2,393 | 2,177 | 90.97% | `nrdp.prod.ftl.netflix.com` | `scribe.logs.roku.com` | +| emiserver | 192.168.68.119 | Office | 2,094 | 0 | 0.00% | `api.telegram.org` | `—` | +| aeropi5 | 192.168.68.126 | Office | 2,051 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,020 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPad | 192.168.68.129 | Study | 1,742 | 62 | 3.56% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| 50LivingRoom | 192.168.68.100 | Office | 1,647 | 1,576 | 95.69% | `api.roku.com` | `scribe.logs.roku.com` | +| iPhone | 192.168.68.121 | Study | 1,058 | 38 | 3.59% | `mask.apple-dns.net` | `experiments.apple.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 778 | 4 | 0.51% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| localhost | 127.0.0.1 | not mapped | 694 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.113 | Study | 419 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.105 | Study | 298 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.127 | Office | 295 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 167 | 8 | 4.79% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| Amazon | 192.168.68.134 | Office | 157 | 36 | 22.93% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 50 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| iot_device | 192.168.68.135 | Office | 50 | 0 | 0.00% | `api.bambulab.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 14 | 0 | 0.00% | `7-courier.push.apple.com` | `—` | +| Blink-Device | 192.168.68.131 | WashMachine | 13 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Mac | 192.168.68.102 | Office | 11 | 0 | 0.00% | `login.mso.msidentity.com` | `—` | +| Adolfo-i16 | 192.168.68.132 | Hallway | 10 | 0 | 0.00% | `eu.tectonic.remarkable.com` | `—` | +| phone | 192.168.68.136 | Office | 4 | 0 | 0.00% | `3-courier2.push.apple.com` | `—` | +| Google-Home-Mini | 192.168.68.120 | Hallway | 4 | 0 | 0.00% | `clients4.google.com` | `—` | +| Unknown device | 192.168.68.133 | not mapped | 3 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 1 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Google-Home-Mini | 192.168.68.122 | Office | 1 | 0 | 0.00% | `clients3.google.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 43,302; blocked: 3,843; block rate: 8.87%; unique domains: 553. + +Top visited (not blocked): +- internalfb.com — 3,378 +- ssl.gstatic.com — 1,329 +- play.google.com — 1,030 +- api.manus.im — 967 +- beacons.gcp.gvt2.com — 831 +- chat.google.com — 723 +- chromereporting-pa.googleapis.com — 600 +- signaler-pa.clients6.google.com — 537 +- peoplestack-pa.clients6.google.com — 513 +- waa-pa.clients6.google.com — 504 +Top blocked: +- www.internalfb.com — 1,159 blocked of 9,608 +- graph.facebook.com — 682 blocked of 4,833 +- graph.prod.facebook.com — 418 blocked of 782 +- interngraph.internmc.facebook.com — 210 blocked of 496 +- www.facebook.com — 147 blocked of 392 +- us-v20.events.data.microsoft.com — 142 blocked of 146 +- tokenservice.edge.x2p.facebook.net — 140 blocked of 182 +- gateway.internalfb.com — 128 blocked of 360 +- csp.withgoogle.com — 99 blocked of 99 +- mobile.pipe.aria.microsoft.com — 86 blocked of 90 + +### Mac (192.168.68.111) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 20,048; blocked: 2,230; block rate: 11.12%; unique domains: 592. + +Top visited (not blocked): +- ssl.gstatic.com — 1,118 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 982 +- outlook.cloud.microsoft — 824 +- optimizationguide-pa.googleapis.com — 733 +- www.google.com — 677 +- chat.google.com — 650 +- e6858.dsce9.akamaiedge.net — 597 +- usc-word-edit.officeapps.live.com — 534 +- play.google.com — 460 +- www.apple.com — 407 +Top blocked: +- dit.whatsapp.net — 1,047 blocked of 1,051 +- word-telemetry.officeapps.live.com — 644 blocked of 646 +- bam.nr-data.net — 169 blocked of 193 +- excel-telemetry.officeapps.live.com — 82 blocked of 82 +- track.capitaloneshopping.com — 56 blocked of 56 +- sentry.bga.li — 48 blocked of 48 +- ogads-pa.clients6.google.com — 34 blocked of 34 +- analytics.google.com — 28 blocked of 28 +- ups.analytics.yahoo.com — 12 blocked of 12 +- id5-sync.com — 10 blocked of 10 + +### iPhone (192.168.68.104) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 13,967; blocked: 3,187; block rate: 22.82%; unique domains: 1,757. + +Top visited (not blocked): +- outlook.office365.com — 216 +- mask.apple-dns.net — 207 +- mmx-ds.cdn.whatsapp.net — 177 +- btlr.sharethrough.com — 116 +- www.google.com — 93 +- get-bx.g.aaplimg.com — 67 +- atm.outlook.mira.tm.svc.cloud.microsoft — 62 +- sync.srv.stackadapt.com — 59 +- ocsp2.apple.com — 56 +- match.sharethrough.com — 54 +Top blocked: +- dit.whatsapp.net — 426 blocked of 426 +- choices.truste.com — 119 blocked of 119 +- cdn.doubleverify.com — 118 blocked of 118 +- g2.gumgum.com — 86 blocked of 86 +- qvdt3feo.com — 82 blocked of 82 +- static.adsafeprotected.com — 79 blocked of 79 +- unagi-na.amazon.com — 78 blocked of 78 +- id5-sync.com — 72 blocked of 72 +- c1.adform.net — 68 blocked of 68 +- ups.analytics.yahoo.com — 59 blocked of 59 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 12,461; blocked: 1,480; block rate: 11.88%; unique domains: 551. + +Top visited (not blocked): +- whatsapp.com — 1,048 +- mmx-ds.cdn.whatsapp.net — 546 +- chat.openai.com — 516 +- www.apple.com — 401 +- chatgpt.com — 363 +- 1.courier-sandbox-push-apple.com.akadns.net — 348 +- api.apple-cloudkit.fe2.apple-dns.net — 342 +- ab.chatgpt.com — 320 +- mask.apple-dns.net — 314 +- apple.com — 299 +Top blocked: +- dit.whatsapp.net — 1,180 blocked of 1,184 +- slackb.com — 109 blocked of 113 +- x.com — 37 blocked of 46 +- event.bblmw.com — 15 blocked of 15 +- ogads-pa.clients6.google.com — 14 blocked of 14 +- www.youtube.com — 10 blocked of 44 +- partiality.itunes.apple.com — 10 blocked of 10 +- cf.iadsdk.apple.com — 10 blocked of 10 +- accounts.youtube.com — 8 blocked of 56 +- w3-reporting-nel.reddit.com — 8 blocked of 8 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 11,005; blocked: 2,025; block rate: 18.40%; unique domains: 718. + +Top visited (not blocked): +- ts01-b.csa.cloudsink.net — 467 +- mask.apple-dns.net — 435 +- mmx-ds.cdn.whatsapp.net — 381 +- outlook.office365.com — 292 +- chat.cdn.whatsapp.net — 287 +- ts01-b.cloudsink.net — 234 +- www.google.com — 215 +- whatsapp.com — 188 +- oauthaccountmanager.googleapis.com — 162 +- mdm-na2.mobileiron.com — 142 +Top blocked: +- dit.whatsapp.net — 644 blocked of 648 +- news-app-events.apple.com — 276 blocked of 276 +- stocks-analytics-events.apple.com — 257 blocked of 259 +- app-analytics-services.com — 111 blocked of 112 +- app-measurement.com — 46 blocked of 47 +- unagi-na.amazon.com — 46 blocked of 46 +- unagi.amazon.com — 44 blocked of 44 +- fls-na.amazon.com — 36 blocked of 36 +- sdk.iad-05.braze.com — 32 blocked of 32 +- cdp.customer.io — 26 blocked of 26 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 6,656; blocked: 208; block rate: 3.12%; unique domains: 25. + +Top visited (not blocked): +- chatgpt.com — 3,040 +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- adolforeynaserver — 304 +- acme-v02.api.letsencrypt.org — 168 +- ph.n8n.io — 114 +- version.goauthentik.io — 48 +- api.github.com — 48 +- auth.openai.com — 32 +- version.immich.cloud — 24 +Top blocked: +- telemetry.n8n.io — 208 blocked of 212 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: Study; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,181; blocked: 941; block rate: 18.16%; unique domains: 52. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,939 +- chatgpt.com — 647 +- connectivity-check.ubuntu.com — 578 +- push.services.mozilla.com — 146 +- firefox.settings.services.mozilla.com — 129 +- filters.adtidy.org — 120 +- www.recaptcha.net — 116 +- www.gstatic.com — 114 +- merino.services.mozilla.com — 99 +- 1a1inqjh.p.qrcdn.net — 96 +Top blocked: +- cdp.cloud.unity3d.com — 813 blocked of 822 +- incoming.telemetry.mozilla.org — 128 blocked of 128 + +### Alicia-2022-2 (192.168.68.117) +Location: Hallway; MAC: 24-FD-FA-03-53-0C; mapping: multiple_identities_seen. +Queries: 4,124; blocked: 531; block rate: 12.88%; unique domains: 824. + +Top visited (not blocked): +- mask.apple-dns.net — 162 +- outlook.office365.com — 104 +- imap.gmail.com — 48 +- www.google.com — 46 +- mmx-ds.cdn.whatsapp.net — 43 +- btlr.sharethrough.com — 34 +- get-bx.g.aaplimg.com — 33 +- ocsp2.apple.com — 32 +- bag-cdn.itunes-apple.com.akadns.net — 32 +- ocsp2.g.aaplimg.com — 31 +Top blocked: +- dit.whatsapp.net — 79 blocked of 79 +- unagi-na.amazon.com — 40 blocked of 40 +- unagi.amazon.com — 31 blocked of 31 +- g2.gumgum.com — 30 blocked of 30 +- fls-na.amazon.com — 27 blocked of 27 +- ep2.facebook.com — 25 blocked of 25 +- events.devcycle.com — 24 blocked of 24 +- fbs.smoot.apple.com — 22 blocked of 22 +- cdn.doubleverify.com — 22 blocked of 22 +- choices.truste.com — 21 blocked of 21 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 2,393; blocked: 2,177; block rate: 90.97%; unique domains: 27. + +Top visited (not blocked): +- nrdp.prod.ftl.netflix.com — 68 +- nrdp.push.prod.netflix.com — 55 +- api.roku.com — 29 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 14 +- occ-0-1413-1412.1.nflxso.net — 3 +- nrdp51-appboot.netflix.com — 3 +- api2.sr.roku.com — 2 +- tis.cti.roku.com — 1 +- sw-update.cs.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,736 blocked of 1,740 +- liberty.logs.roku.com — 208 blocked of 210 +- nrdp.logs.netflix.com — 161 blocked of 161 +- logs.netflix.com — 44 blocked of 44 +- cloudservices.roku.com — 25 blocked of 25 +- identity.ads.roku.com — 2 blocked of 2 +- display.ravm.tv — 1 blocked of 1 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,094; blocked: 0; block rate: 0.00%; unique domains: 24. + +Top visited (not blocked): +- api.telegram.org — 1,097 +- chatgpt.com — 692 +- herdr.dev — 175 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- us.i.posthog.com — 6 +- cdn.fwupd.org — 6 +- sdmntprcentralus.oaiusercontent.com — 4 +- motd.ubuntu.com — 4 +Top blocked: +- none + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,051; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,136 +- chatgpt.com — 603 +- herdr.dev — 190 +- cloud.reynafamily.com — 90 +- api.snapcraft.io — 11 +- cdn.fwupd.org — 5 +- sdmntprcentralus.oaiusercontent.com — 2 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: multiple_identities_seen. +Queries: 2,020; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,128 +- chatgpt.com — 579 +- herdr.dev — 190 +- cloud.reynafamily.com — 90 +- api.snapcraft.io — 11 +- cdn.fwupd.org — 6 +- sdmntprcentralus.oaiusercontent.com — 2 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +Top blocked: +- none + +### iPad (192.168.68.129) +Location: Study; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,742; blocked: 62; block rate: 3.56%; unique domains: 194. + +Top visited (not blocked): +- mask.apple-dns.net — 391 +- _dns.resolver.arpa — 62 +- ocsp2.apple.com — 56 +- iphone-ld.apple.com — 56 +- configuration.ls.apple.com — 56 +- get-bx.g.aaplimg.com — 52 +- mask.icloud.com — 50 +- gsp-ssl.ls.apple.com — 50 +- iphone-ld.g.aaplimg.com — 47 +- ocsp2.g.aaplimg.com — 38 +Top blocked: +- fbs.smoot.apple.com — 26 blocked of 28 +- youtubei.googleapis.com — 6 blocked of 11 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- app-analytics-services.com — 4 blocked of 4 +- app-measurement.com — 3 blocked of 3 +- s.youtube.com — 2 blocked of 6 +- trk.pinterest.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- dit.whatsapp.net — 2 blocked of 2 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 1,647; blocked: 1,576; block rate: 95.69%; unique domains: 14. + +Top visited (not blocked): +- api.roku.com — 26 +- themes-service.sr.roku.com — 24 +- sw-update.cs.roku.com — 2 +- mediaservices.cdn-apple.com — 2 +- austin.sb.roku.com — 2 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- configsvc.cs.roku.com — 1 +- api2.sr.roku.com — 1 +- api-g2.rokutime.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,370 blocked of 1,374 +- liberty.logs.roku.com — 202 blocked of 208 +- identity.ads.roku.com — 2 blocked of 2 +- display.ravm.tv — 2 blocked of 2 + +### iPhone (192.168.68.121) +Location: Study; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 1,058; blocked: 38; block rate: 3.59%; unique domains: 154. + +Top visited (not blocked): +- mask.apple-dns.net — 101 +- iphone-ld.apple.com — 56 +- _dns.resolver.arpa — 53 +- www.subalert.com — 50 +- ocsp2.apple.com — 44 +- mask.icloud.com — 44 +- iphone-ld.g.aaplimg.com — 42 +- subalert.com — 40 +- ocsp2.g.aaplimg.com — 26 +- bag.itunes.apple.com — 22 +Top blocked: +- experiments.apple.com — 26 blocked of 26 +- partiality.itunes.apple.com — 5 blocked of 7 +- cf.iadsdk.apple.com — 5 blocked of 7 +- fbs.smoot.apple.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 778; blocked: 4; block rate: 0.51%; unique domains: 132. + +Top visited (not blocked): +- mask.apple-dns.net — 147 +- _dns.resolver.arpa — 55 +- mask.icloud.com — 46 +- ocsp2.apple.com — 34 +- ocsp2.g.aaplimg.com — 22 +- bag.itunes.apple.com — 20 +- gsp-ssl.ls.apple.com — 18 +- bag-cdn.itunes-apple.com.akadns.net — 18 +- init-p01md.apple.com — 16 +- gdmf.apple.com — 16 +Top blocked: +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 694; blocked: 0; block rate: 0.00%; unique domains: 40. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 127.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 419; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 418 +- cdn.tactilityproject.org — 1 +Top blocked: +- none + +### espressif (192.168.68.105) +Location: Study; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 298; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 297 +- cdn.tactilityproject.org — 1 +Top blocked: +- none + +### espressif (192.168.68.127) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 295; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 295 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 167; blocked: 8; block rate: 4.79%; unique domains: 42. + +Top visited (not blocked): +- time-ios.apple.com — 35 +- gateway.icloud.com — 18 +- gateway.fe2.apple-dns.net — 13 +- ocsp.apple.com — 12 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +- init.itunes.apple.com — 6 +- p189-keyvalueservice.icloud.com — 5 +- xp.apple.com — 4 +- iphonesubmissions.apple.com — 4 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 157; blocked: 36; block rate: 22.93%; unique domains: 10. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 75 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 32 +- www.amazon.com — 6 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- sync.datamate.kindle.amazon.dev — 1 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 36 blocked of 36 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 50; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- prod.wdckeystone.com — 8 +- prod-proxy.wdckeystone.com — 8 +- prod-gateway.wdckeystone.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-31cdfc8017b5028.wdckeystone.com — 4 +- google.com — 4 +- config.mycloud.com — 4 +- prod-cdd1bbf7f41b200.wdckeystone.com — 2 +- prod-7c74fffc718ed01.wdckeystone.com — 2 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 50; blocked: 0; block rate: 0.00%; unique domains: 6. + +Top visited (not blocked): +- api.bambulab.com — 32 +- time.cloudflare.com — 9 +- or-cloud-upload-prod.s3.us-west-2.amazonaws.com — 5 +- e.bambulab.com — 2 +- www.microsoft.com — 1 +- us.mqtt.bambulab.com — 1 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 14; blocked: 0; block rate: 0.00%; unique domains: 6. + +Top visited (not blocked): +- 7-courier.push.apple.com — 3 +- 10-courier.push.apple.com — 3 +- 0-courier.push.apple.com — 3 +- outlook-ww-acdc-fs.trafficmanager.net — 2 +- gateway.icloud.com — 2 +- mask.apple-dns.net — 1 +Top blocked: +- none + +### Blink-Device (192.168.68.131) +Location: WashMachine; MAC: 84-28-59-E8-42-80; mapping: historical_snapshot. +Queries: 13; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 10 +- podcast.emmint.com — 2 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 11; blocked: 0; block rate: 0.00%; unique domains: 7. + +Top visited (not blocked): +- login.mso.msidentity.com — 3 +- outlook-ww-acdc-fs.trafficmanager.net — 2 +- 130.68.168.192.in-addr.arpa — 2 +- www.tm.a.prd.aadg.akadns.net — 1 +- local — 1 +- e6858.dsce9.akamaiedge.net — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Adolfo-i16 (192.168.68.132) +Location: Hallway; MAC: 24-FD-FA-03-53-0C; mapping: historical_snapshot. +Queries: 10; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- eu.tectonic.remarkable.com — 4 +- webapp-prod.cloud.remarkable.engineering — 2 +- ping.remarkable.com — 2 +- dev.tectonic.remarkable.com — 2 +Top blocked: +- none + +### phone (192.168.68.136) +Location: Office; MAC: 56-68-92-84-12-EE; mapping: historical_snapshot. +Queries: 4; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- 3-courier2.push.apple.com — 2 +- us-se-courier-vs.push-apple.com.akadns.net — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.120) +Location: Hallway; MAC: E4-F0-42-2E-E0-4E; mapping: historical_snapshot. +Queries: 4; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- clients4.google.com — 2 +- clients3.google.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.133) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 3 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 1 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.122) +Location: Office; MAC: 48-D6-D5-7B-91-C5; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- clients3.google.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-09.json b/projects/network_usage/reports/2026-09-09.json new file mode 100644 index 0000000..d9747d5 --- /dev/null +++ b/projects/network_usage/reports/2026-09-09.json @@ -0,0 +1,3899 @@ +{ + "schema_version": 2, + "day": "2026-09-09", + "timezone": "America/New_York", + "generated_at": "2026-09-10T00:15:18.784752-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-09T00:00:00-04:00", + "end_local": "2026-09-10T00:00:00-04:00", + "start_epoch": 1788926400, + "end_epoch": 1789012800 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 13914 + }, + { + "status": 2, + "queries": 10270 + }, + { + "status": 3, + "queries": 59386 + }, + { + "status": 4, + "queries": 2169 + }, + { + "status": 5, + "queries": 31 + }, + { + "status": 9, + "queries": 2084 + }, + { + "status": 10, + "queries": 1278 + }, + { + "status": 12, + "queries": 9 + }, + { + "status": 14, + "queries": 1929 + }, + { + "status": 16, + "queries": 423 + }, + { + "status": 17, + "queries": 36903 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 38, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 46702, + "blocked_queries": 3143, + "block_rate_percent": 6.73, + "unique_domains": 483, + "last_query_epoch": 1789012123.4552674, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 3816, + "blocked": 0, + "allowed": 3816 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 1381, + "blocked": 0, + "allowed": 1381 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 1042, + "blocked": 0, + "allowed": 1042 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 1006, + "blocked": 0, + "allowed": 1006 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 826, + "blocked": 0, + "allowed": 826 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 818, + "blocked": 0, + "allowed": 818 + }, + { + "ip": "192.168.68.112", + "domain": "chromereporting-pa.googleapis.com", + "queries": 639, + "blocked": 0, + "allowed": 639 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 506, + "blocked": 0, + "allowed": 506 + }, + { + "ip": "192.168.68.112", + "domain": "waa-pa.clients6.google.com", + "queries": 451, + "blocked": 0, + "allowed": 451 + }, + { + "ip": "192.168.68.112", + "domain": "google.com", + "queries": 449, + "blocked": 0, + "allowed": 449 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 10565, + "blocked": 838, + "allowed": 9727 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 5287, + "blocked": 514, + "allowed": 4773 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 674, + "blocked": 292, + "allowed": 382 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 214, + "blocked": 183, + "allowed": 31 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 167, + "blocked": 167, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 418, + "blocked": 138, + "allowed": 280 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.internalfb.com", + "queries": 416, + "blocked": 103, + "allowed": 313 + }, + { + "ip": "192.168.68.112", + "domain": "fb.workplace.com", + "queries": 856, + "blocked": 96, + "allowed": 760 + }, + { + "ip": "192.168.68.112", + "domain": "edge-chat.workplace.com", + "queries": 225, + "blocked": 81, + "allowed": 144 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.workplace.com", + "queries": 208, + "blocked": 72, + "allowed": 136 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 12891, + "blocked_queries": 1096, + "block_rate_percent": 8.5, + "unique_domains": 612, + "last_query_epoch": 1789012163.0724435, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:41:05.739199+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 627, + "blocked": 0, + "allowed": 627 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 568, + "blocked": 0, + "allowed": 568 + }, + { + "ip": "192.168.68.108", + "domain": "muse.ai", + "queries": 554, + "blocked": 0, + "allowed": 554 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 337, + "blocked": 0, + "allowed": 337 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 324, + "blocked": 0, + "allowed": 324 + }, + { + "ip": "192.168.68.108", + "domain": "ab.chatgpt.com", + "queries": 324, + "blocked": 0, + "allowed": 324 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 292, + "blocked": 0, + "allowed": 292 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 282, + "blocked": 0, + "allowed": 282 + }, + { + "ip": "192.168.68.108", + "domain": "ssl.gstatic.com", + "queries": 280, + "blocked": 0, + "allowed": 280 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 272, + "blocked": 0, + "allowed": 272 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 560, + "blocked": 558, + "allowed": 2 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 116, + "blocked": 116, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "event.bblmw.com", + "queries": 84, + "blocked": 84, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "edge-metaclaw-http.c10r.facebook.com", + "queries": 86, + "blocked": 48, + "allowed": 38 + }, + { + "ip": "192.168.68.108", + "domain": "perf.bblmw.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "fbs.smoot.apple.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 25, + "blocked": 21, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 72, + "blocked": 18, + "allowed": 54 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 11816, + "blocked_queries": 2269, + "block_rate_percent": 19.2, + "unique_domains": 1140, + "last_query_epoch": 1789012655.3665822, + "deco": { + "ip": "192.168.68.106", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 357, + "blocked": 0, + "allowed": 357 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 351, + "blocked": 0, + "allowed": 351 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 309, + "blocked": 0, + "allowed": 309 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 267, + "blocked": 0, + "allowed": 267 + }, + { + "ip": "192.168.68.106", + "domain": "ts01-b.cloudsink.net", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 157, + "blocked": 0, + "allowed": 157 + }, + { + "ip": "192.168.68.106", + "domain": "mdm-na2.mobileiron.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.106", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 78, + "blocked": 0, + "allowed": 78 + }, + { + "ip": "192.168.68.106", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 77, + "blocked": 0, + "allowed": 77 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 413, + "blocked": 411, + "allowed": 2 + }, + { + "ip": "192.168.68.106", + "domain": "stocks-analytics-events.apple.com", + "queries": 299, + "blocked": 299, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 169, + "blocked": 167, + "allowed": 2 + }, + { + "ip": "192.168.68.106", + "domain": "ep2.facebook.com", + "queries": 150, + "blocked": 150, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 119, + "blocked": 117, + "allowed": 2 + }, + { + "ip": "192.168.68.106", + "domain": "news-app-events.apple.com", + "queries": 111, + "blocked": 111, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ep7.facebook.com", + "queries": 110, + "blocked": 110, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "et-eus.w.inmobi.com", + "queries": 92, + "blocked": 92, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "eus-r.w.inmobi.com", + "queries": 68, + "blocked": 68, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "iad-usadmm.dotomi.com", + "queries": 58, + "blocked": 58, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 11375, + "blocked_queries": 1575, + "block_rate_percent": 13.85, + "unique_domains": 766, + "last_query_epoch": 1789012759.6011257, + "deco": { + "ip": "192.168.68.111", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ssl.gstatic.com", + "queries": 382, + "blocked": 0, + "allowed": 382 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 329, + "blocked": 0, + "allowed": 329 + }, + { + "ip": "192.168.68.111", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 284, + "blocked": 0, + "allowed": 284 + }, + { + "ip": "192.168.68.111", + "domain": "chat.google.com", + "queries": 222, + "blocked": 0, + "allowed": 222 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 210, + "blocked": 0, + "allowed": 210 + }, + { + "ip": "192.168.68.111", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 172, + "blocked": 0, + "allowed": 172 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.cloud.microsoft", + "queries": 170, + "blocked": 0, + "allowed": 170 + }, + { + "ip": "192.168.68.111", + "domain": "play.google.com", + "queries": 156, + "blocked": 0, + "allowed": 156 + }, + { + "ip": "192.168.68.111", + "domain": "signaler-pa.clients6.google.com", + "queries": 142, + "blocked": 0, + "allowed": 142 + }, + { + "ip": "192.168.68.111", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 141, + "blocked": 0, + "allowed": 141 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 635, + "blocked": 635, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 188, + "blocked": 188, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "analytics.google.com", + "queries": 96, + "blocked": 96, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "bam.nr-data.net", + "queries": 92, + "blocked": 77, + "allowed": 15 + }, + { + "ip": "192.168.68.111", + "domain": "word-telemetry.officeapps.live.com", + "queries": 68, + "blocked": 68, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "track.capitaloneshopping.com", + "queries": 68, + "blocked": 68, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "www.clarity.ms", + "queries": 42, + "blocked": 42, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "static-tracking.klaviyo.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "monorail-edge.shopifysvc.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "a.klaviyo.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 6102, + "blocked_queries": 1434, + "block_rate_percent": 23.5, + "unique_domains": 110, + "last_query_epoch": 1789012746.2511158, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1953, + "blocked": 0, + "allowed": 1953 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 673, + "blocked": 0, + "allowed": 673 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 580, + "blocked": 0, + "allowed": 580 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 128, + "blocked": 0, + "allowed": 128 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 119, + "blocked": 0, + "allowed": 119 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 117, + "blocked": 0, + "allowed": 117 + }, + { + "ip": "192.168.68.124", + "domain": "firefox.settings.services.mozilla.com", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 103, + "blocked": 0, + "allowed": 103 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 102, + "blocked": 0, + "allowed": 102 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 824, + "blocked": 824, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "sdk.iad-01.braze.com", + "queries": 275, + "blocked": 275, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 212, + "blocked": 212, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "metrics.ubuntu.com", + "queries": 116, + "blocked": 116, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "csp-reporting.cloudflare.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "ogads-pa.clients6.google.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "ads.mozilla.org", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 5998, + "blocked_queries": 224, + "block_rate_percent": 3.73, + "unique_domains": 37, + "last_query_epoch": 1789012635.0382476, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 2276, + "blocked": 0, + "allowed": 2276 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 300, + "blocked": 0, + "allowed": 300 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 202, + "blocked": 0, + "allowed": 202 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 68, + "blocked": 0, + "allowed": 68 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "auth.openai.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 4214, + "blocked_queries": 2277, + "block_rate_percent": 54.03, + "unique_domains": 349, + "last_query_epoch": 1789004092.9775379, + "deco": { + "ip": "192.168.68.117", + "mac": "C6-C3-37-60-5C-88", + "hostname": "Dzidula-s-S22", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-10T01:32:11.131568+00:00", + "mapping_identity_count": 4 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "google.com", + "queries": 465, + "blocked": 0, + "allowed": 465 + }, + { + "ip": "192.168.68.117", + "domain": "www.google.com", + "queries": 260, + "blocked": 0, + "allowed": 260 + }, + { + "ip": "192.168.68.117", + "domain": "opcode", + "queries": 99, + "blocked": 0, + "allowed": 99 + }, + { + "ip": "192.168.68.117", + "domain": "216.58.202.4.in-addr.arpa", + "queries": 66, + "blocked": 0, + "allowed": 66 + }, + { + "ip": "192.168.68.117", + "domain": "play.googleapis.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.117", + "domain": "connectivitycheck.gstatic.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.117", + "domain": "www.goooooooooooooooooooooooooooooooooooooooooooooooooooooooooogle.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.117", + "domain": "google.com.onion", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.117", + "domain": "*google.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.117", + "domain": "g.whatsapp.net", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 607, + "blocked": 607, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "mobile.events.data.microsoft.com", + "queries": 541, + "blocked": 541, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "graph.instagram.com", + "queries": 502, + "blocked": 502, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "graph-fallback.instagram.com", + "queries": 100, + "blocked": 100, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "i.instagram.com", + "queries": 119, + "blocked": 93, + "allowed": 26 + }, + { + "ip": "192.168.68.117", + "domain": "test-gateway.instagram.com", + "queries": 91, + "blocked": 82, + "allowed": 9 + }, + { + "ip": "192.168.68.117", + "domain": "scontent-mia3-3.cdninstagram.com", + "queries": 56, + "blocked": 50, + "allowed": 6 + }, + { + "ip": "192.168.68.117", + "domain": "scontent-mia5-1.cdninstagram.com", + "queries": 53, + "blocked": 48, + "allowed": 5 + }, + { + "ip": "192.168.68.117", + "domain": "z-m-gateway.facebook.com", + "queries": 41, + "blocked": 35, + "allowed": 6 + }, + { + "ip": "192.168.68.117", + "domain": "graph.facebook.com", + "queries": 81, + "blocked": 25, + "allowed": 56 + } + ] + }, + { + "ip": "192.168.68.140", + "pihole_name": "", + "queries": 3718, + "blocked_queries": 521, + "block_rate_percent": 14.01, + "unique_domains": 349, + "last_query_epoch": 1789012024.5284927, + "deco": { + "ip": "192.168.68.140", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.140", + "domain": "ssl.gstatic.com", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.140", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.140", + "domain": "www.google.com", + "queries": 103, + "blocked": 0, + "allowed": 103 + }, + { + "ip": "192.168.68.140", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 74, + "blocked": 0, + "allowed": 74 + }, + { + "ip": "192.168.68.140", + "domain": "play.google.com", + "queries": 70, + "blocked": 0, + "allowed": 70 + }, + { + "ip": "192.168.68.140", + "domain": "waa-pa.clients6.google.com", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.140", + "domain": "signaler-pa.clients6.google.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.140", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.140", + "domain": "www.apple.com", + "queries": 45, + "blocked": 0, + "allowed": 45 + }, + { + "ip": "192.168.68.140", + "domain": "zpns.zoom.us", + "queries": 44, + "blocked": 0, + "allowed": 44 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.140", + "domain": "dit.whatsapp.net", + "queries": 212, + "blocked": 212, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 82, + "blocked": 82, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "word-telemetry.officeapps.live.com", + "queries": 70, + "blocked": 70, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "track.capitaloneshopping.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "monorail-edge.shopifysvc.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "analytics.google.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "www.clarity.ms", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "static-tracking.klaviyo.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "a.klaviyo.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "bam.nr-data.net", + "queries": 26, + "blocked": 11, + "allowed": 15 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 3359, + "blocked_queries": 364, + "block_rate_percent": 10.84, + "unique_domains": 431, + "last_query_epoch": 1789007935.0840447, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T17:41:32.750493+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 191, + "blocked": 0, + "allowed": 191 + }, + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 95, + "blocked": 0, + "allowed": 95 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 64, + "blocked": 0, + "allowed": 64 + }, + { + "ip": "192.168.68.104", + "domain": "chat.cdn.whatsapp.net", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.104", + "domain": "imap.gmail.com", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.104", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.104", + "domain": "get-bx.g.aaplimg.com", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.104", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 170, + "blocked": 170, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdp.cloud.unity3d.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "partiality.itunes.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cf.iadsdk.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "app-analytics-services.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "mobile.launchdarkly.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "collector-pxhyx10rg3.perimeterx.net", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 3195, + "blocked_queries": 3099, + "block_rate_percent": 97.0, + "unique_domains": 26, + "last_query_epoch": 1789012730.2822392, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.100", + "domain": "images.sr.roku.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.100", + "domain": "navigation.sr.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "image.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 2120, + "blocked": 2118, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 960, + "blocked": 958, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 3051, + "blocked_queries": 2623, + "block_rate_percent": 85.97, + "unique_domains": 69, + "last_query_epoch": 1789012796.1492352, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "nrdp.push.prod.netflix.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.114", + "domain": "cdn-0.nflximg.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.prod.cloud.netflix.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp51-appboot.netflix.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.114", + "domain": "uiboot.netflix.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "api-global.netflix.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.114", + "domain": "www.youtube.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2104, + "blocked": 2102, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 202, + "blocked": 200, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "nrdp.logs.netflix.com", + "queries": 199, + "blocked": 199, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "ichnaea.netflix.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "customerevents.netflix.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "logs.netflix.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "experiments.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 2644, + "blocked_queries": 539, + "block_rate_percent": 20.39, + "unique_domains": 793, + "last_query_epoch": 1788997937.0499334, + "deco": { + "ip": "192.168.68.132", + "mac": "E2-60-2B-5D-46-36", + "hostname": "Alicia-2022-2", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-09T23:51:30.788563+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "settings-win.data.microsoft.com", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.132", + "domain": "web.whatsapp.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.132", + "domain": "outlook.office365.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.132", + "domain": "mask.apple-dns.net", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.132", + "domain": "filedownload.csw.lenovo.com", + "queries": 23, + "blocked": 0, + "allowed": 23 + }, + { + "ip": "192.168.68.132", + "domain": "clients4.google.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.132", + "domain": "mtalk.google.com", + "queries": 21, + "blocked": 0, + "allowed": 21 + }, + { + "ip": "192.168.68.132", + "domain": "www.msftconnecttest.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.132", + "domain": "self.events.data.microsoft.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.132", + "domain": "www.google.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.132", + "domain": "mobile.events.data.microsoft.com", + "queries": 280, + "blocked": 280, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "ipm.avcdn.net", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "shepherd.avcdn.net", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "analytics.avcdn.net", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "analytics.google.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "dc.services.visualstudio.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "g2.gumgum.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "ts.amazon-adsystem.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "dit.whatsapp.net", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.132", + "domain": "default.exp-tas.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2224, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 14, + "last_query_epoch": 1789012770.3689277, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1138, + "blocked": 0, + "allowed": 1138 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 772, + "blocked": 0, + "allowed": 772 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2198, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1789012770.3603442, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T02:51:00.400886+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1138, + "blocked": 0, + "allowed": 1138 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 751, + "blocked": 0, + "allowed": 751 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "canonical-bos01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 1828, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 23, + "last_query_epoch": 1789012675.8613925, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1039, + "blocked": 0, + "allowed": 1039 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 492, + "blocked": 0, + "allowed": 492 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 178, + "blocked": 0, + "allowed": 178 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "us.i.posthog.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 1749, + "blocked_queries": 65, + "block_rate_percent": 3.72, + "unique_domains": 190, + "last_query_epoch": 1789010584.6257682, + "deco": { + "ip": "192.168.68.129", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:21:05.262023+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 349, + "blocked": 0, + "allowed": 349 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.apple.com", + "queries": 64, + "blocked": 0, + "allowed": 64 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.129", + "domain": "configuration.ls.apple.com", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.129", + "domain": "apple.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.129", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.129", + "domain": "ocsp2.g.aaplimg.com", + "queries": 41, + "blocked": 0, + "allowed": 41 + }, + { + "ip": "192.168.68.129", + "domain": "gdmf.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "fbs.smoot.apple.com", + "queries": 35, + "blocked": 35, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "youtubei.googleapis.com", + "queries": 10, + "blocked": 6, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "trk.pinterest.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 1455, + "blocked_queries": 54, + "block_rate_percent": 3.71, + "unique_domains": 233, + "last_query_epoch": 1789012786.3953626, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 107, + "blocked": 0, + "allowed": 107 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 64, + "blocked": 0, + "allowed": 64 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.121", + "domain": "gdmf.apple.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1066, + "blocked_queries": 108, + "block_rate_percent": 10.13, + "unique_domains": 232, + "last_query_epoch": 1789012476.654859, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 139, + "blocked": 0, + "allowed": 139 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.107", + "domain": "init-p01md.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cdp.cloud.unity3d.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-analytics-services.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "et-eus.w.inmobi.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "config.inmobi.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "mads.amazon-adsystem.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 721, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 41, + "last_query_epoch": 1789009200.8326337, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "129.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 424, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789012527.5275538, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 424, + "blocked": 0, + "allowed": 424 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 352, + "blocked_queries": 28, + "block_rate_percent": 7.95, + "unique_domains": 74, + "last_query_epoch": 1789012748.3829134, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.150", + "domain": "safebrowsing.googleapis.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.150", + "domain": "p33-bookmarks.icloud.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "_bookmarkdavs._tcp.p33-bookmarks.icloud.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.150", + "domain": "mesu.apple.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "mesu-cdn.origin-apple.com.akadns.net", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "fbs.smoot.apple.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 292, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789012674.3910825, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 290, + "blocked": 0, + "allowed": 290 + }, + { + "ip": "192.168.68.113", + "domain": "cdn.tactilityproject.org", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 263, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788998263.718684, + "deco": { + "ip": "192.168.68.127", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-09T23:51:30.788563+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 263, + "blocked": 0, + "allowed": 263 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 181, + "blocked_queries": 32, + "block_rate_percent": 17.68, + "unique_domains": 12, + "last_query_epoch": 1789011875.7117398, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 73, + "blocked": 0, + "allowed": 73 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "7a6e3418b2b39c5852077c212b8b75b4.00995507000024.kindle-cpu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "7a6e3418b2b39c5852077c212b8b75b4.00498807000024.kindle-boot.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "7a6e3418b2b39c5852077c212b8b75b4.00019607000024.kindle-mem.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.118", + "pihole_name": "", + "queries": 150, + "blocked_queries": 22, + "block_rate_percent": 14.67, + "unique_domains": 42, + "last_query_epoch": 1788993574.2474928, + "deco": { + "ip": "192.168.68.118", + "mac": "F8-B9-5A-E0-78-52", + "hostname": "Adolfo-i16", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T00:31:56.024721+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.118", + "domain": "us.lgtvsdp.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.118", + "domain": "discovery.meethue.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.118", + "domain": "aic-ngfts.lge.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.118", + "domain": "aic.cdpsvc.lgtvcommon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.118", + "domain": "www.ueiwsp.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.118", + "domain": "lgwebostv", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.118", + "domain": "prov-lg.alphonso.tv", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.118", + "domain": "gfts.lge.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.118", + "domain": "yt3.ggpht.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.118", + "domain": "www.gstatic.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.118", + "domain": "us.info.lgsmartad.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "us.rdx2.lgtvsdp.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 127, + "blocked_queries": 3, + "block_rate_percent": 2.36, + "unique_domains": 64, + "last_query_epoch": 1788993920.6326363, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.133", + "domain": "youtubei.googleapis.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.133", + "domain": "xp.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "s.mzstatic.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "rr9---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "rr4---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "redirector.googlevideo.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "mesu.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.133", + "domain": "mask.icloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.133", + "domain": "app-analytics-services.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "app-measurement.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 66, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1789003383.5573833, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-cdd1bbf7f41b200.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-15ce3e0b80af991.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 56, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789012631.7674823, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.128", + "domain": "litedev.us.ezvizlife.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789011541.8239572, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 44, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1789012709.0380614, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.135", + "domain": "or-cloud-upload-prod.s3.us-west-2.amazonaws.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.135", + "domain": "us-d-master-71spctnsfa8p5xvgkssa.iotcplatform.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 42, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 9, + "last_query_epoch": 1789004808.721078, + "deco": { + "ip": "192.168.68.131", + "mac": "84-28-59-E8-42-80", + "hostname": "Blink-Device", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-09T23:01:22.216398+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.131", + "domain": "eu.tectonic.remarkable.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "ping.remarkable.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.131", + "domain": "webapp-prod.cloud.remarkable.engineering", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "podcast.emmint.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "dev.tectonic.remarkable.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.131", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.131", + "domain": "gateway.icloud.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 20, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 7, + "last_query_epoch": 1789002764.690201, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "p140-contacts.icloud.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "49-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "44-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "36-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "26-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "10-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "gateway.fe2.apple-dns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 17, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 8, + "last_query_epoch": 1789002763.861345, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.102", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.102", + "domain": "p146-contacts.icloud.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.102", + "domain": "cl2.g.aaplimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "ocsp2.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "130.68.168.192.in-addr.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 4, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1788993858.905879, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "captive.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "captive.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.136", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789006811.6857429, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.120", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1788932537.0005422, + "deco": { + "ip": "192.168.68.120", + "mac": "E4-F0-42-2E-E0-4E", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T03:51:07.818596+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.120", + "domain": "play.googleapis.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-09.md b/projects/network_usage/reports/2026-09-09.md new file mode 100644 index 0000000..89980fc --- /dev/null +++ b/projects/network_usage/reports/2026-09-09.md @@ -0,0 +1,735 @@ +# Pi-hole DNS usage — 2026-09-09 + +Window: 2026-09-09T00:00:00-04:00 to 2026-09-10T00:00:00-04:00 (America/New_York) +Generated: 2026-09-10T00:15:18.784752-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Hallway | 46,702 | 3,143 | 6.73% | `internalfb.com` | `www.internalfb.com` | +| Mac | 192.168.68.108 | Hallway | 12,891 | 1,096 | 8.50% | `whatsapp.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.106 | Hallway | 11,816 | 2,269 | 19.20% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| iPhone | 192.168.68.111 | Hallway | 11,375 | 1,575 | 13.85% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| adolforeyna-iMac11-3 | 192.168.68.124 | Study | 6,102 | 1,434 | 23.50% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| adolforeynaserver | 192.168.68.110 | Office | 5,998 | 224 | 3.73% | `chatgpt.com` | `telemetry.n8n.io` | +| Dzidula-s-S22 | 192.168.68.117 | Office | 4,214 | 2,277 | 54.03% | `google.com` | `mobile.pipe.aria.microsoft.com` | +| Mac | 192.168.68.140 | Hallway | 3,718 | 521 | 14.01% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Hallway | 3,359 | 364 | 10.84% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| 50LivingRoom | 192.168.68.100 | Office | 3,195 | 3,099 | 97.00% | `api.roku.com` | `liberty.logs.roku.com` | +| 50CasitaTv | 192.168.68.114 | Casita | 3,051 | 2,623 | 85.97% | `nrdp.push.prod.netflix.com` | `scribe.logs.roku.com` | +| Alicia-2022-2 | 192.168.68.132 | Hallway | 2,644 | 539 | 20.39% | `settings-win.data.microsoft.com` | `mobile.events.data.microsoft.com` | +| aeropi5 | 192.168.68.126 | Office | 2,224 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,198 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| emiserver | 192.168.68.119 | Office | 1,828 | 0 | 0.00% | `api.telegram.org` | `—` | +| iPad | 192.168.68.129 | Study | 1,749 | 65 | 3.72% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| iPhone | 192.168.68.121 | Hallway | 1,455 | 54 | 3.71% | `mask.apple-dns.net` | `experiments.apple.com` | +| iPad-4 | 192.168.68.107 | Hallway | 1,066 | 108 | 10.13% | `mask.apple-dns.net` | `firebaselogging-pa.googleapis.com` | +| localhost | 127.0.0.1 | not mapped | 721 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.105 | Study | 424 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 352 | 28 | 7.95% | `gateway.fe2.apple-dns.net` | `fbs.smoot.apple.com` | +| espressif | 192.168.68.113 | Office | 292 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.127 | Hallway | 263 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 181 | 32 | 17.68% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Adolfo-i16 | 192.168.68.118 | Study | 150 | 22 | 14.67% | `us.lgtvsdp.com` | `us.info.lgsmartad.com` | +| Unknown device | 192.168.68.133 | not mapped | 127 | 3 | 2.36% | `ms-cam-u011.immedia-semi.com` | `app-analytics-services.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 66 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 56 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| iot_device | 192.168.68.135 | Office | 44 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Blink-Device | 192.168.68.131 | WashMachine | 42 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 20 | 0 | 0.00% | `p140-contacts.icloud.com` | `—` | +| Mac | 192.168.68.102 | Office | 17 | 0 | 0.00% | `atm.outlook.mira.tm.svc.cloud.microsoft` | `—` | +| Unknown device | 192.168.68.136 | not mapped | 4 | 0 | 0.00% | `captive.apple.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 2 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Google-Home-Mini | 192.168.68.120 | Hallway | 2 | 0 | 0.00% | `play.googleapis.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Hallway; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 46,702; blocked: 3,143; block rate: 6.73%; unique domains: 483. + +Top visited (not blocked): +- internalfb.com — 3,816 +- ssl.gstatic.com — 1,381 +- play.google.com — 1,042 +- api.manus.im — 1,006 +- chat.google.com — 826 +- beacons.gcp.gvt2.com — 818 +- chromereporting-pa.googleapis.com — 639 +- signaler-pa.clients6.google.com — 506 +- waa-pa.clients6.google.com — 451 +- google.com — 449 +Top blocked: +- www.internalfb.com — 838 blocked of 10,565 +- graph.facebook.com — 514 blocked of 5,287 +- graph.prod.facebook.com — 292 blocked of 674 +- tokenservice.edge.x2p.facebook.net — 183 blocked of 214 +- us-v20.events.data.microsoft.com — 167 blocked of 167 +- interngraph.internmc.facebook.com — 138 blocked of 418 +- gateway.internalfb.com — 103 blocked of 416 +- fb.workplace.com — 96 blocked of 856 +- edge-chat.workplace.com — 81 blocked of 225 +- gateway.workplace.com — 72 blocked of 208 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 12,891; blocked: 1,096; block rate: 8.50%; unique domains: 612. + +Top visited (not blocked): +- whatsapp.com — 627 +- chat.openai.com — 568 +- muse.ai — 554 +- chatgpt.com — 337 +- www.apple.com — 324 +- ab.chatgpt.com — 324 +- mmx-ds.cdn.whatsapp.net — 292 +- 1.courier-sandbox-push-apple.com.akadns.net — 282 +- ssl.gstatic.com — 280 +- mask.apple-dns.net — 272 +Top blocked: +- dit.whatsapp.net — 558 blocked of 560 +- slackb.com — 116 blocked of 116 +- event.bblmw.com — 84 blocked of 84 +- edge-metaclaw-http.c10r.facebook.com — 48 blocked of 86 +- perf.bblmw.com — 46 blocked of 46 +- ogads-pa.clients6.google.com — 36 blocked of 36 +- fbs.smoot.apple.com — 36 blocked of 36 +- x.com — 21 blocked of 25 +- www.youtube.com — 18 blocked of 72 +- analytics.google.com — 18 blocked of 18 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: multiple_identities_seen. +Queries: 11,816; blocked: 2,269; block rate: 19.20%; unique domains: 1,140. + +Top visited (not blocked): +- mask.apple-dns.net — 357 +- ts01-b.csa.cloudsink.net — 351 +- outlook.office365.com — 309 +- mmx-ds.cdn.whatsapp.net — 267 +- ts01-b.cloudsink.net — 194 +- chat.cdn.whatsapp.net — 188 +- www.google.com — 157 +- mdm-na2.mobileiron.com — 114 +- bag-cdn.itunes-apple.com.akadns.net — 78 +- atm.outlook.mira.tm.svc.cloud.microsoft — 77 +Top blocked: +- dit.whatsapp.net — 411 blocked of 413 +- stocks-analytics-events.apple.com — 299 blocked of 299 +- app-analytics-services.com — 167 blocked of 169 +- ep2.facebook.com — 150 blocked of 150 +- firebaselogging-pa.googleapis.com — 117 blocked of 119 +- news-app-events.apple.com — 111 blocked of 111 +- ep7.facebook.com — 110 blocked of 110 +- et-eus.w.inmobi.com — 92 blocked of 92 +- eus-r.w.inmobi.com — 68 blocked of 68 +- iad-usadmm.dotomi.com — 58 blocked of 58 + +### iPhone (192.168.68.111) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: multiple_identities_seen. +Queries: 11,375; blocked: 1,575; block rate: 13.85%; unique domains: 766. + +Top visited (not blocked): +- ssl.gstatic.com — 382 +- www.google.com — 329 +- optimizationguide-pa.googleapis.com — 284 +- chat.google.com — 222 +- mask.apple-dns.net — 210 +- mmx-ds.cdn.whatsapp.net — 172 +- outlook.cloud.microsoft — 170 +- play.google.com — 156 +- signaler-pa.clients6.google.com — 142 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 141 +Top blocked: +- dit.whatsapp.net — 635 blocked of 635 +- excel-telemetry.officeapps.live.com — 188 blocked of 188 +- analytics.google.com — 96 blocked of 96 +- bam.nr-data.net — 77 blocked of 92 +- word-telemetry.officeapps.live.com — 68 blocked of 68 +- track.capitaloneshopping.com — 68 blocked of 68 +- www.clarity.ms — 42 blocked of 42 +- static-tracking.klaviyo.com — 30 blocked of 30 +- monorail-edge.shopifysvc.com — 30 blocked of 30 +- a.klaviyo.com — 30 blocked of 30 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: Study; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 6,102; blocked: 1,434; block rate: 23.50%; unique domains: 110. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,953 +- chatgpt.com — 673 +- connectivity-check.ubuntu.com — 580 +- push.services.mozilla.com — 146 +- filters.adtidy.org — 128 +- www.recaptcha.net — 119 +- www.gstatic.com — 117 +- firefox.settings.services.mozilla.com — 114 +- fonts.gstatic.com — 103 +- merino.services.mozilla.com — 102 +Top blocked: +- cdp.cloud.unity3d.com — 824 blocked of 824 +- sdk.iad-01.braze.com — 275 blocked of 275 +- incoming.telemetry.mozilla.org — 212 blocked of 212 +- metrics.ubuntu.com — 116 blocked of 116 +- csp-reporting.cloudflare.com — 3 blocked of 3 +- ogads-pa.clients6.google.com — 2 blocked of 2 +- ads.mozilla.org — 2 blocked of 2 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 5,998; blocked: 224; block rate: 3.73%; unique domains: 37. + +Top visited (not blocked): +- chatgpt.com — 2,276 +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- adolforeynaserver — 300 +- acme-v02.api.letsencrypt.org — 202 +- ph.n8n.io — 114 +- acme-staging-v02.api.letsencrypt.org — 68 +- version.goauthentik.io — 48 +- api.github.com — 48 +- auth.openai.com — 28 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### Dzidula-s-S22 (192.168.68.117) +Location: Office; MAC: C6-C3-37-60-5C-88; mapping: multiple_identities_seen. +Queries: 4,214; blocked: 2,277; block rate: 54.03%; unique domains: 349. + +Top visited (not blocked): +- google.com — 465 +- www.google.com — 260 +- opcode — 99 +- 216.58.202.4.in-addr.arpa — 66 +- play.googleapis.com — 40 +- connectivitycheck.gstatic.com — 36 +- www.goooooooooooooooooooooooooooooooooooooooooooooooooooooooooogle.com — 33 +- google.com.onion — 33 +- *google.com — 33 +- g.whatsapp.net — 28 +Top blocked: +- mobile.pipe.aria.microsoft.com — 607 blocked of 607 +- mobile.events.data.microsoft.com — 541 blocked of 541 +- graph.instagram.com — 502 blocked of 502 +- graph-fallback.instagram.com — 100 blocked of 100 +- i.instagram.com — 93 blocked of 119 +- test-gateway.instagram.com — 82 blocked of 91 +- scontent-mia3-3.cdninstagram.com — 50 blocked of 56 +- scontent-mia5-1.cdninstagram.com — 48 blocked of 53 +- z-m-gateway.facebook.com — 35 blocked of 41 +- graph.facebook.com — 25 blocked of 81 + +### Mac (192.168.68.140) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 3,718; blocked: 521; block rate: 14.01%; unique domains: 349. + +Top visited (not blocked): +- ssl.gstatic.com — 182 +- optimizationguide-pa.googleapis.com — 112 +- www.google.com — 103 +- usc-word-edit.officeapps.live.com — 74 +- play.google.com — 70 +- waa-pa.clients6.google.com — 60 +- signaler-pa.clients6.google.com — 56 +- mmx-ds.cdn.whatsapp.net — 55 +- www.apple.com — 45 +- zpns.zoom.us — 44 +Top blocked: +- dit.whatsapp.net — 212 blocked of 212 +- excel-telemetry.officeapps.live.com — 82 blocked of 82 +- word-telemetry.officeapps.live.com — 70 blocked of 70 +- track.capitaloneshopping.com — 24 blocked of 24 +- monorail-edge.shopifysvc.com — 20 blocked of 20 +- analytics.google.com — 20 blocked of 20 +- www.clarity.ms — 14 blocked of 14 +- static-tracking.klaviyo.com — 14 blocked of 14 +- a.klaviyo.com — 14 blocked of 14 +- bam.nr-data.net — 11 blocked of 26 + +### iPhone (192.168.68.104) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 3,359; blocked: 364; block rate: 10.84%; unique domains: 431. + +Top visited (not blocked): +- mask.apple-dns.net — 191 +- outlook.office365.com — 188 +- mmx-ds.cdn.whatsapp.net — 95 +- www.google.com — 64 +- chat.cdn.whatsapp.net — 60 +- imap.gmail.com — 59 +- bag-cdn.itunes-apple.com.akadns.net — 58 +- get-bx.g.aaplimg.com — 55 +- ocsp2.apple.com — 52 +- atm.outlook.mira.tm.svc.cloud.microsoft — 48 +Top blocked: +- dit.whatsapp.net — 170 blocked of 170 +- fbs.smoot.apple.com — 22 blocked of 22 +- cdp.cloud.unity3d.com — 15 blocked of 15 +- partiality.itunes.apple.com — 12 blocked of 12 +- cf.iadsdk.apple.com — 12 blocked of 12 +- app-analytics-services.com — 11 blocked of 11 +- firebaselogging-pa.googleapis.com — 7 blocked of 7 +- mobile.launchdarkly.com — 4 blocked of 4 +- iadsdk.apple.com — 4 blocked of 4 +- collector-pxhyx10rg3.perimeterx.net — 3 blocked of 3 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 3,195; blocked: 3,099; block rate: 97.00%; unique domains: 26. + +Top visited (not blocked): +- api.roku.com — 30 +- themes-service.sr.roku.com — 25 +- mediaservices.cdn-apple.com — 4 +- austin.sb.roku.com — 4 +- api2.sr.roku.com — 4 +- sw-update.cs.roku.com — 3 +- images.sr.roku.com — 3 +- configsvc.cs.roku.com — 3 +- navigation.sr.roku.com — 2 +- image.roku.com — 2 +Top blocked: +- liberty.logs.roku.com — 2,118 blocked of 2,120 +- scribe.logs.roku.com — 958 blocked of 960 +- cloudservices.roku.com — 21 blocked of 21 +- identity.ads.roku.com — 1 blocked of 1 +- display.ravm.tv — 1 blocked of 1 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 3,051; blocked: 2,623; block rate: 85.97%; unique domains: 69. + +Top visited (not blocked): +- nrdp.push.prod.netflix.com — 36 +- api.roku.com — 31 +- cdn-0.nflximg.com — 30 +- nrdp.prod.cloud.netflix.com — 28 +- nrdp51-appboot.netflix.com — 26 +- uiboot.netflix.com — 25 +- themes-service.sr.roku.com — 24 +- api-global.netflix.com — 24 +- mediaservices.cdn-apple.com — 20 +- www.youtube.com — 17 +Top blocked: +- scribe.logs.roku.com — 2,102 blocked of 2,104 +- liberty.logs.roku.com — 200 blocked of 202 +- nrdp.logs.netflix.com — 199 blocked of 199 +- ichnaea.netflix.com — 30 blocked of 30 +- customerevents.netflix.com — 30 blocked of 30 +- cloudservices.roku.com — 30 blocked of 30 +- logs.netflix.com — 17 blocked of 17 +- experiments.apple.com — 6 blocked of 6 +- display.ravm.tv — 6 blocked of 6 +- identity.ads.roku.com — 2 blocked of 2 + +### Alicia-2022-2 (192.168.68.132) +Location: Hallway; MAC: E2-60-2B-5D-46-36; mapping: multiple_identities_seen. +Queries: 2,644; blocked: 539; block rate: 20.39%; unique domains: 793. + +Top visited (not blocked): +- settings-win.data.microsoft.com — 51 +- web.whatsapp.com — 47 +- outlook.office365.com — 38 +- mask.apple-dns.net — 30 +- filedownload.csw.lenovo.com — 23 +- clients4.google.com — 22 +- mtalk.google.com — 21 +- www.msftconnecttest.com — 19 +- self.events.data.microsoft.com — 18 +- www.google.com — 17 +Top blocked: +- mobile.events.data.microsoft.com — 280 blocked of 280 +- ipm.avcdn.net — 28 blocked of 28 +- shepherd.avcdn.net — 24 blocked of 24 +- analytics.avcdn.net — 18 blocked of 18 +- analytics.google.com — 12 blocked of 12 +- dc.services.visualstudio.com — 11 blocked of 11 +- g2.gumgum.com — 10 blocked of 10 +- ts.amazon-adsystem.com — 9 blocked of 9 +- dit.whatsapp.net — 9 blocked of 9 +- default.exp-tas.com — 8 blocked of 8 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,224; blocked: 0; block rate: 0.00%; unique domains: 14. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,138 +- chatgpt.com — 772 +- herdr.dev — 194 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 12 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- cdn.fwupd.org — 2 +- canonical-bos01.cdn.snapcraftcontent.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,198; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,138 +- chatgpt.com — 751 +- herdr.dev — 190 +- cloud.reynafamily.com — 94 +- api.snapcraft.io — 12 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- cdn.fwupd.org — 2 +- canonical-bos01.cdn.snapcraftcontent.com — 2 +- 126.68.168.192.in-addr.arpa — 2 +Top blocked: +- none + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 1,828; blocked: 0; block rate: 0.00%; unique domains: 23. + +Top visited (not blocked): +- api.telegram.org — 1,039 +- chatgpt.com — 492 +- herdr.dev — 178 +- version.goauthentik.io — 48 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- motd.ubuntu.com — 6 +- cdn.fwupd.org — 6 +- us.i.posthog.com — 2 +- security.ubuntu.com — 2 +Top blocked: +- none + +### iPad (192.168.68.129) +Location: Study; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,749; blocked: 65; block rate: 3.72%; unique domains: 190. + +Top visited (not blocked): +- mask.apple-dns.net — 349 +- ocsp2.apple.com — 64 +- _dns.resolver.arpa — 61 +- configuration.ls.apple.com — 58 +- apple.com — 54 +- iphone-ld.apple.com — 52 +- iphone-ld.g.aaplimg.com — 48 +- mask.icloud.com — 46 +- ocsp2.g.aaplimg.com — 41 +- gdmf.apple.com — 34 +Top blocked: +- fbs.smoot.apple.com — 35 blocked of 35 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- youtubei.googleapis.com — 6 blocked of 10 +- app-measurement.com — 3 blocked of 3 +- app-analytics-services.com — 3 blocked of 3 +- trk.pinterest.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 + +### iPhone (192.168.68.121) +Location: Hallway; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 1,455; blocked: 54; block rate: 3.71%; unique domains: 233. + +Top visited (not blocked): +- mask.apple-dns.net — 107 +- iphone-ld.apple.com — 64 +- _dns.resolver.arpa — 56 +- ocsp2.apple.com — 50 +- www.subalert.com — 46 +- iphone-ld.g.aaplimg.com — 40 +- mask.icloud.com — 38 +- ocsp2.g.aaplimg.com — 35 +- subalert.com — 31 +- gdmf.apple.com — 26 +Top blocked: +- experiments.apple.com — 28 blocked of 28 +- fbs.smoot.apple.com — 10 blocked of 10 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- iadsdk.apple.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: Hallway; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,066; blocked: 108; block rate: 10.13%; unique domains: 232. + +Top visited (not blocked): +- mask.apple-dns.net — 139 +- _dns.resolver.arpa — 51 +- mask.icloud.com — 46 +- ocsp2.apple.com — 34 +- bag.itunes.apple.com — 22 +- ocsp2.g.aaplimg.com — 18 +- gsp-ssl.ls.apple.com — 18 +- bag-cdn.itunes-apple.com.akadns.net — 18 +- init-p01md.apple.com — 16 +- gdmf.apple.com — 16 +Top blocked: +- firebaselogging-pa.googleapis.com — 34 blocked of 34 +- sdk.iad-01.braze.com — 14 blocked of 14 +- cdp.cloud.unity3d.com — 9 blocked of 9 +- app-analytics-services.com — 9 blocked of 9 +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- app-measurement.com — 6 blocked of 6 +- et-eus.w.inmobi.com — 3 blocked of 3 +- config.inmobi.com — 3 blocked of 3 +- mads.amazon-adsystem.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 721; blocked: 0; block rate: 0.00%; unique domains: 41. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 129.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.105) +Location: Study; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 424; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 424 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 352; blocked: 28; block rate: 7.95%; unique domains: 74. + +Top visited (not blocked): +- gateway.fe2.apple-dns.net — 47 +- safebrowsing.googleapis.com — 34 +- time-ios.apple.com — 32 +- gateway.icloud.com — 18 +- p33-bookmarks.icloud.com — 16 +- _bookmarkdavs._tcp.p33-bookmarks.icloud.com — 16 +- ocsp.apple.com — 14 +- mesu.apple.com — 9 +- xp.apple.com — 8 +- mesu-cdn.origin-apple.com.akadns.net — 8 +Top blocked: +- fbs.smoot.apple.com — 20 blocked of 20 +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.113) +Location: Office; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 292; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 290 +- cdn.tactilityproject.org — 2 +Top blocked: +- none + +### espressif (192.168.68.127) +Location: Hallway; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 263; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 263 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 181; blocked: 32; block rate: 17.68%; unique domains: 12. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 73 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 50 +- www.amazon.com — 7 +- m.media-amazon.com — 6 +- todo-ta-g7g.amazon.com — 3 +- device-messaging-na.amazon.com — 2 +- 7a6e3418b2b39c5852077c212b8b75b4.00995507000024.kindle-cpu.com — 2 +- 7a6e3418b2b39c5852077c212b8b75b4.00498807000024.kindle-boot.com — 2 +- 7a6e3418b2b39c5852077c212b8b75b4.00019607000024.kindle-mem.com — 2 +- s3.amazonaws.com — 1 +Top blocked: +- unagi-na.amazon.com — 32 blocked of 32 + +### Adolfo-i16 (192.168.68.118) +Location: Study; MAC: F8-B9-5A-E0-78-52; mapping: historical_snapshot. +Queries: 150; blocked: 22; block rate: 14.67%; unique domains: 42. + +Top visited (not blocked): +- us.lgtvsdp.com — 24 +- discovery.meethue.com — 16 +- aic-ngfts.lge.com — 12 +- aic.cdpsvc.lgtvcommon.com — 7 +- www.ueiwsp.com — 6 +- lgwebostv — 4 +- prov-lg.alphonso.tv — 3 +- gfts.lge.com — 3 +- yt3.ggpht.com — 2 +- www.gstatic.com — 2 +Top blocked: +- us.info.lgsmartad.com — 16 blocked of 16 +- us.rdx2.lgtvsdp.com — 6 blocked of 6 + +### Unknown device (192.168.68.133) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 127; blocked: 3; block rate: 2.36%; unique domains: 64. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 27 +- youtubei.googleapis.com — 4 +- xp.apple.com — 2 +- s.mzstatic.com — 2 +- rr9---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com — 2 +- rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 2 +- rr4---sn-bvvbaxivnuxqjvhj5nu-hp56.googlevideo.com — 2 +- redirector.googlevideo.com — 2 +- mesu.apple.com — 2 +- mask.icloud.com — 2 +Top blocked: +- app-analytics-services.com — 2 blocked of 2 +- app-measurement.com — 1 blocked of 1 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 66; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- prod.wdckeystone.com — 10 +- prod-proxy.wdckeystone.com — 10 +- prod-gateway.wdckeystone.com — 10 +- time.mycloud.com — 6 +- google.com — 6 +- config.mycloud.com — 6 +- time.windows.com — 4 +- prod-cdd1bbf7f41b200.wdckeystone.com — 4 +- prod-15ce3e0b80af991.wdckeystone.com — 4 +- prod-fc14d21a5887149.wdckeystone.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 56; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 52 +- litedev.us.ezvizlife.com — 4 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 44; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- time.cloudflare.com — 25 +- api.bambulab.com — 16 +- or-cloud-upload-prod.s3.us-west-2.amazonaws.com — 2 +- us-d-master-71spctnsfa8p5xvgkssa.iotcplatform.com — 1 +Top blocked: +- none + +### Blink-Device (192.168.68.131) +Location: WashMachine; MAC: 84-28-59-E8-42-80; mapping: multiple_identities_seen. +Queries: 42; blocked: 0; block rate: 0.00%; unique domains: 9. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 16 +- eu.tectonic.remarkable.com — 10 +- ping.remarkable.com — 6 +- webapp-prod.cloud.remarkable.engineering — 2 +- podcast.emmint.com — 2 +- dev.tectonic.remarkable.com — 2 +- _dns.resolver.arpa — 2 +- s3.amazonaws.com — 1 +- gateway.icloud.com — 1 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 20; blocked: 0; block rate: 0.00%; unique domains: 7. + +Top visited (not blocked): +- p140-contacts.icloud.com — 3 +- 49-courier.push.apple.com — 3 +- 44-courier.push.apple.com — 3 +- 36-courier.push.apple.com — 3 +- 26-courier.push.apple.com — 3 +- 10-courier.push.apple.com — 3 +- gateway.fe2.apple-dns.net — 2 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 17; blocked: 0; block rate: 0.00%; unique domains: 8. + +Top visited (not blocked): +- atm.outlook.mira.tm.svc.cloud.microsoft — 4 +- 1.courier-push-apple.com.akadns.net — 4 +- p146-contacts.icloud.com — 3 +- cl2.g.aaplimg.com — 2 +- ocsp2.g.aaplimg.com — 1 +- local — 1 +- _dns.resolver.arpa — 1 +- 130.68.168.192.in-addr.arpa — 1 +Top blocked: +- none + +### Unknown device (192.168.68.136) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 4; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- captive.apple.com — 2 +- captive.g.aaplimg.com — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 2 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.120) +Location: Hallway; MAC: E4-F0-42-2E-E0-4E; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- play.googleapis.com — 2 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-10.json b/projects/network_usage/reports/2026-09-10.json new file mode 100644 index 0000000..162c3d0 --- /dev/null +++ b/projects/network_usage/reports/2026-09-10.json @@ -0,0 +1,3322 @@ +{ + "schema_version": 2, + "day": "2026-09-10", + "timezone": "America/New_York", + "generated_at": "2026-09-11T00:15:03.846282-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-10T00:00:00-04:00", + "end_local": "2026-09-11T00:00:00-04:00", + "start_epoch": 1789012800, + "end_epoch": 1789099200 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 13227 + }, + { + "status": 2, + "queries": 12866 + }, + { + "status": 3, + "queries": 49982 + }, + { + "status": 4, + "queries": 886 + }, + { + "status": 5, + "queries": 39 + }, + { + "status": 9, + "queries": 1841 + }, + { + "status": 10, + "queries": 499 + }, + { + "status": 12, + "queries": 14 + }, + { + "status": 14, + "queries": 1691 + }, + { + "status": 16, + "queries": 396 + }, + { + "status": 17, + "queries": 40255 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 35, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 32959, + "blocked_queries": 1984, + "block_rate_percent": 6.02, + "unique_domains": 462, + "last_query_epoch": 1789098968.7659702, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 1623, + "blocked": 0, + "allowed": 1623 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 1467, + "blocked": 0, + "allowed": 1467 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 821, + "blocked": 0, + "allowed": 821 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 811, + "blocked": 0, + "allowed": 811 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 754, + "blocked": 0, + "allowed": 754 + }, + { + "ip": "192.168.68.112", + "domain": "chat.google.com", + "queries": 544, + "blocked": 0, + "allowed": 544 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 470, + "blocked": 0, + "allowed": 470 + }, + { + "ip": "192.168.68.112", + "domain": "waa-pa.clients6.google.com", + "queries": 445, + "blocked": 0, + "allowed": 445 + }, + { + "ip": "192.168.68.112", + "domain": "google.com", + "queries": 418, + "blocked": 0, + "allowed": 418 + }, + { + "ip": "192.168.68.112", + "domain": "peoplestack-pa.clients6.google.com", + "queries": 403, + "blocked": 0, + "allowed": 403 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "dit.whatsapp.net", + "queries": 351, + "blocked": 349, + "allowed": 2 + }, + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 4909, + "blocked": 256, + "allowed": 4653 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 2016, + "blocked": 154, + "allowed": 1862 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 149, + "blocked": 148, + "allowed": 1 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 185, + "blocked": 127, + "allowed": 58 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 446, + "blocked": 102, + "allowed": 344 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 88, + "blocked": 88, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "appsgrowthpromo-pa.clients6.google.com", + "queries": 75, + "blocked": 75, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 252, + "blocked": 60, + "allowed": 192 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 373, + "blocked": 56, + "allowed": 317 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 19654, + "blocked_queries": 2442, + "block_rate_percent": 12.42, + "unique_domains": 748, + "last_query_epoch": 1789099194.2338784, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 1763, + "blocked": 0, + "allowed": 1763 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 748, + "blocked": 0, + "allowed": 748 + }, + { + "ip": "192.168.68.108", + "domain": "cma2.itunes.apple.com", + "queries": 680, + "blocked": 0, + "allowed": 680 + }, + { + "ip": "192.168.68.108", + "domain": "sps-media.v.aaplimg.com", + "queries": 610, + "blocked": 0, + "allowed": 610 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 569, + "blocked": 0, + "allowed": 569 + }, + { + "ip": "192.168.68.108", + "domain": "muse.ai", + "queries": 504, + "blocked": 0, + "allowed": 504 + }, + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 443, + "blocked": 0, + "allowed": 443 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 402, + "blocked": 0, + "allowed": 402 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 383, + "blocked": 0, + "allowed": 383 + }, + { + "ip": "192.168.68.108", + "domain": "ab.chatgpt.com", + "queries": 362, + "blocked": 0, + "allowed": 362 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 1898, + "blocked": 1893, + "allowed": 5 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 156, + "blocked": 152, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 42, + "blocked": 42, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 49, + "blocked": 33, + "allowed": 16 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 225, + "blocked": 24, + "allowed": 201 + }, + { + "ip": "192.168.68.108", + "domain": "collector-pxu6b0qd2s.px-cloud.net", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "rr10---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 24, + "blocked": 14, + "allowed": 10 + }, + { + "ip": "192.168.68.108", + "domain": "accounts.youtube.com", + "queries": 126, + "blocked": 12, + "allowed": 114 + }, + { + "ip": "192.168.68.108", + "domain": "i.ytimg.com", + "queries": 72, + "blocked": 12, + "allowed": 60 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 16234, + "blocked_queries": 3843, + "block_rate_percent": 23.67, + "unique_domains": 1769, + "last_query_epoch": 1789099060.7962124, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 208, + "blocked": 0, + "allowed": 208 + }, + { + "ip": "192.168.68.104", + "domain": "btlr.sharethrough.com", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 184, + "blocked": 0, + "allowed": 184 + }, + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 175, + "blocked": 0, + "allowed": 175 + }, + { + "ip": "192.168.68.104", + "domain": "chat.cdn.whatsapp.net", + "queries": 147, + "blocked": 0, + "allowed": 147 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + }, + { + "ip": "192.168.68.104", + "domain": "ib.anycast.adnxs.com", + "queries": 81, + "blocked": 0, + "allowed": 81 + }, + { + "ip": "192.168.68.104", + "domain": "grid-bidder.criteo.com", + "queries": 76, + "blocked": 0, + "allowed": 76 + }, + { + "ip": "192.168.68.104", + "domain": "xp.g.aaplimg.com", + "queries": 75, + "blocked": 0, + "allowed": 75 + }, + { + "ip": "192.168.68.104", + "domain": "us-east-tlx.3lift.com", + "queries": 71, + "blocked": 0, + "allowed": 71 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 442, + "blocked": 442, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 221, + "blocked": 221, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ep2.facebook.com", + "queries": 220, + "blocked": 220, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 182, + "blocked": 182, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "app-analytics-services.com", + "queries": 126, + "blocked": 126, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 125, + "blocked": 125, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.doubleverify.com", + "queries": 110, + "blocked": 110, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "static.adsafeprotected.com", + "queries": 99, + "blocked": 99, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "collector-pxuarm9b04.perimeterx.net", + "queries": 86, + "blocked": 86, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "sdk.iad-08.braze.com", + "queries": 84, + "blocked": 84, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.140", + "pihole_name": "", + "queries": 12545, + "blocked_queries": 2156, + "block_rate_percent": 17.19, + "unique_domains": 531, + "last_query_epoch": 1789099198.7160838, + "deco": { + "ip": "192.168.68.140", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.140", + "domain": "ssl.gstatic.com", + "queries": 710, + "blocked": 0, + "allowed": 710 + }, + { + "ip": "192.168.68.140", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 498, + "blocked": 0, + "allowed": 498 + }, + { + "ip": "192.168.68.140", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 472, + "blocked": 0, + "allowed": 472 + }, + { + "ip": "192.168.68.140", + "domain": "play.google.com", + "queries": 328, + "blocked": 0, + "allowed": 328 + }, + { + "ip": "192.168.68.140", + "domain": "signaler-pa.clients6.google.com", + "queries": 300, + "blocked": 0, + "allowed": 300 + }, + { + "ip": "192.168.68.140", + "domain": "www.google.com", + "queries": 297, + "blocked": 0, + "allowed": 297 + }, + { + "ip": "192.168.68.140", + "domain": "oauth.officeapps.live.com", + "queries": 240, + "blocked": 0, + "allowed": 240 + }, + { + "ip": "192.168.68.140", + "domain": "waa-pa.clients6.google.com", + "queries": 238, + "blocked": 0, + "allowed": 238 + }, + { + "ip": "192.168.68.140", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 186, + "blocked": 0, + "allowed": 186 + }, + { + "ip": "192.168.68.140", + "domain": "common.online.office.com", + "queries": 173, + "blocked": 0, + "allowed": 173 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.140", + "domain": "dit.whatsapp.net", + "queries": 932, + "blocked": 932, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "word-telemetry.officeapps.live.com", + "queries": 466, + "blocked": 466, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 313, + "blocked": 313, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "bam.nr-data.net", + "queries": 100, + "blocked": 78, + "allowed": 22 + }, + { + "ip": "192.168.68.140", + "domain": "track.capitaloneshopping.com", + "queries": 60, + "blocked": 60, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "www.youtube.com", + "queries": 172, + "blocked": 38, + "allowed": 134 + }, + { + "ip": "192.168.68.140", + "domain": "ogads-pa.clients6.google.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "sentry.bga.li", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "id5-sync.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "ups.analytics.yahoo.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 9806, + "blocked_queries": 1419, + "block_rate_percent": 14.47, + "unique_domains": 714, + "last_query_epoch": 1789099139.968003, + "deco": { + "ip": "192.168.68.111", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 491, + "blocked": 0, + "allowed": 491 + }, + { + "ip": "192.168.68.111", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 481, + "blocked": 0, + "allowed": 481 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 434, + "blocked": 0, + "allowed": 434 + }, + { + "ip": "192.168.68.111", + "domain": "chat.cdn.whatsapp.net", + "queries": 414, + "blocked": 0, + "allowed": 414 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.office365.com", + "queries": 331, + "blocked": 0, + "allowed": 331 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 260, + "blocked": 0, + "allowed": 260 + }, + { + "ip": "192.168.68.111", + "domain": "ts01-b.cloudsink.net", + "queries": 260, + "blocked": 0, + "allowed": 260 + }, + { + "ip": "192.168.68.111", + "domain": "mdm-na2.mobileiron.com", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.111", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 136, + "blocked": 0, + "allowed": 136 + }, + { + "ip": "192.168.68.111", + "domain": "api.whatsapp.net", + "queries": 102, + "blocked": 0, + "allowed": 102 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 518, + "blocked": 518, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "stocks-analytics-events.apple.com", + "queries": 283, + "blocked": 283, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-analytics-services.com", + "queries": 145, + "blocked": 145, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-measurement.com", + "queries": 90, + "blocked": 90, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "sdk.iad-05.braze.com", + "queries": 56, + "blocked": 56, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "fbs.smoot.apple.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cdp.customer.io", + "queries": 31, + "blocked": 31, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "skan.singular.net", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "partiality.itunes.apple.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 6784, + "blocked_queries": 224, + "block_rate_percent": 3.3, + "unique_domains": 39, + "last_query_epoch": 1789099085.0488057, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 2836, + "blocked": 0, + "allowed": 2836 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 308, + "blocked": 0, + "allowed": 308 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 242, + "blocked": 0, + "allowed": 242 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 238, + "blocked": 0, + "allowed": 238 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 5560, + "blocked_queries": 1529, + "block_rate_percent": 27.5, + "unique_domains": 50, + "last_query_epoch": 1789099198.3317432, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1989, + "blocked": 0, + "allowed": 1989 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 576, + "blocked": 0, + "allowed": 576 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 494, + "blocked": 0, + "allowed": 494 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 144, + "blocked": 0, + "allowed": 144 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 117, + "blocked": 0, + "allowed": 117 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 115, + "blocked": 0, + "allowed": 115 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 100, + "blocked": 0, + "allowed": 100 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.124", + "domain": "1a1inqjh.p.qrcdn.net", + "queries": 95, + "blocked": 0, + "allowed": 95 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 818, + "blocked": 812, + "allowed": 6 + }, + { + "ip": "192.168.68.124", + "domain": "sdk.iad-01.braze.com", + "queries": 455, + "blocked": 453, + "allowed": 2 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 258, + "blocked": 258, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "csp.withgoogle.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 2682, + "blocked_queries": 188, + "block_rate_percent": 7.01, + "unique_domains": 413, + "last_query_epoch": 1789099052.409698, + "deco": { + "ip": "192.168.68.106", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 152, + "blocked": 0, + "allowed": 152 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 92, + "blocked": 0, + "allowed": 92 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 68, + "blocked": 0, + "allowed": 68 + }, + { + "ip": "192.168.68.106", + "domain": "time.cloudflare.com", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.106", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.g.aaplimg.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.106", + "domain": "imap.gmail.com", + "queries": 39, + "blocked": 0, + "allowed": 39 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 37, + "blocked": 0, + "allowed": 37 + }, + { + "ip": "192.168.68.106", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 30, + "blocked": 0, + "allowed": 30 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 108, + "blocked": 108, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "fbs.smoot.apple.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "orangetheopsai.dataplane.rudderstack.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "mobile.launchdarkly.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ogads-pa.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2491, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 15, + "last_query_epoch": 1789099173.3587618, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1168, + "blocked": 0, + "allowed": 1168 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 1001, + "blocked": 0, + "allowed": 1001 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 197, + "blocked": 0, + "allowed": 197 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 92, + "blocked": 0, + "allowed": 92 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "canonical-lgw01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2417, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 15, + "last_query_epoch": 1789099173.3551834, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1167, + "blocked": 0, + "allowed": 1167 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 940, + "blocked": 0, + "allowed": 940 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 188, + "blocked": 0, + "allowed": 188 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 92, + "blocked": 0, + "allowed": 92 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "canonical-lgw01.cdn.snapcraftcontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 2173, + "blocked_queries": 82, + "block_rate_percent": 3.77, + "unique_domains": 211, + "last_query_epoch": 1789098288.2103252, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:41:56.276955+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 306, + "blocked": 0, + "allowed": 306 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 63, + "blocked": 0, + "allowed": 63 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.121", + "domain": "configuration.ls.apple.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 45, + "blocked": 0, + "allowed": 45 + }, + { + "ip": "192.168.68.121", + "domain": "swallow.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.121", + "domain": "gdmf.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 38, + "blocked": 36, + "allowed": 2 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 1849, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 23, + "last_query_epoch": 1789099196.1377316, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1028, + "blocked": 0, + "allowed": 1028 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 518, + "blocked": 0, + "allowed": 518 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "us.i.posthog.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-02.yyalx.mongodb.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 1620, + "blocked_queries": 1534, + "block_rate_percent": 94.69, + "unique_domains": 18, + "last_query_epoch": 1789099161.4434323, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "api2.sr.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "navigation.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "longview.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "images.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "image.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 1312, + "blocked": 1308, + "allowed": 4 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 202, + "blocked": 198, + "allowed": 4 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 1068, + "blocked_queries": 990, + "block_rate_percent": 92.7, + "unique_domains": 22, + "last_query_epoch": 1789099151.4500391, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "images.sr.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "channels.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "tis.cti.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "rsp.web.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "navigation.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 766, + "blocked": 764, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 200, + "blocked": 196, + "allowed": 4 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 825, + "blocked_queries": 26, + "block_rate_percent": 3.15, + "unique_domains": 154, + "last_query_epoch": 1789099142.7600496, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:41:56.276955+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 145, + "blocked": 0, + "allowed": 145 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.107", + "domain": "gsp-ssl.ls.apple.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.107", + "domain": "pancake.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.107", + "domain": "kt-prod.ess.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "tr.iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "config.uca.cloud.unity3d.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cdp.cloud.unity3d.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 684, + "blocked_queries": 21, + "block_rate_percent": 3.07, + "unique_domains": 266, + "last_query_epoch": 1789099142.3541183, + "deco": { + "ip": "192.168.68.131", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "mask.apple-dns.net", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.131", + "domain": "gdmf.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.131", + "domain": "ocsp2.g.aaplimg.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.v.aaplimg.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.131", + "domain": "xp.g.aaplimg.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.131", + "domain": "gdmf.v.aaplimg.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.awuse1.sbz.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.131", + "domain": "smp-device-content.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.131", + "domain": "pancake.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.131", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "trk.pinterest.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-measurement.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-analytics-services.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 675, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 37, + "last_query_epoch": 1789096950.7209473, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "140.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "125.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "124.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 386, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789099072.2406776, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 386, + "blocked": 0, + "allowed": 386 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 331, + "blocked_queries": 17, + "block_rate_percent": 5.14, + "unique_domains": 59, + "last_query_epoch": 1789098705.1663187, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "safebrowsing.googleapis.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.150", + "domain": "p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "_bookmarkdavs._tcp.p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.150", + "domain": "mesu.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "fbs.smoot.apple.com", + "queries": 10, + "blocked": 9, + "allowed": 1 + }, + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 313, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789091907.7704268, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T01:51:34.212477+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 312, + "blocked": 0, + "allowed": 312 + }, + { + "ip": "192.168.68.105", + "domain": "cdn.tactilityproject.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 159, + "blocked_queries": 36, + "block_rate_percent": 22.64, + "unique_domains": 9, + "last_query_epoch": 1789098280.0826952, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 111, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789098275.763101, + "deco": { + "ip": "192.168.68.127", + "mac": "28-84-85-85-10-BC", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 104, + "blocked": 0, + "allowed": 104 + }, + { + "ip": "192.168.68.127", + "domain": "cdn.tactilityproject.org", + "queries": 7, + "blocked": 0, + "allowed": 7 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 63, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 15, + "last_query_epoch": 1789097966.9852188, + "deco": { + "ip": "192.168.68.117", + "mac": "56-68-92-84-12-EE", + "hostname": "Alicia-2022-2", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T17:31:17.469418+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.117", + "domain": "podcast.emmint.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.117", + "domain": "_dns.resolver.arpa", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.117", + "domain": "mesu-cdn.origin-apple.com.akadns.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.117", + "domain": "mesu.g.aaplimg.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.117", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.117", + "domain": "s3.amazonaws.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.117", + "domain": "mesu.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.117", + "domain": "init.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.117", + "domain": "guzzoni.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 54, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1789087619.104149, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "shed.outlook.acdc.tm.svc.cloud.microsoft", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.102", + "domain": "e6858.dsce9.akamaiedge.net", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.102", + "domain": "contacts.fe2.apple-dns.net", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.102", + "domain": "fs.outlook.mira.tm.svc.cloud.microsoft", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.102", + "domain": "130.68.168.192.in-addr.arpa", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.102", + "domain": "www.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "web.whatsapp.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "slack.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "router8.teamviewer.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "router6.teamviewer.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 49, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1789087619.130454, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "39.courier-push-apple.com.akadns.net", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.130", + "domain": "shed.outlook.acdc.tm.svc.cloud.microsoft", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "9-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "7-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "49-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "43-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "23-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "21-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "19-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789099137.3365839, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789097959.5749674, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 44, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1789090835.1852593, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-7c74fffc718ed01.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "downloads.mycloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 39, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1789099110.0100386, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.135", + "domain": "or-cloud-upload-prod.s3.us-west-2.amazonaws.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 19, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789085766.9929063, + "deco": { + "ip": "192.168.68.129", + "mac": "84-28-59-E8-42-80", + "hostname": "Blink-Device", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-10T21:21:56.283344+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + } + ], + "top_blocked": [] + }, + { + "ip": "172.22.0.1", + "pihole_name": "", + "queries": 3, + "blocked_queries": 1, + "block_rate_percent": 33.33, + "unique_domains": 3, + "last_query_epoch": 1789089215.9362001, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "youtu.be", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "instagram.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "facebook.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "172.22.0.1", + "domain": "youtube.com", + "queries": 2, + "blocked": 1, + "allowed": 1 + } + ] + }, + { + "ip": "172.22.0.1", + "pihole_name": "cloud.reynafamily.com", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789089994.8324013, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "youtu.be", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "instagram.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "172.22.0.1", + "domain": "facebook.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "172.22.0.1", + "domain": "youtube.com", + "queries": 2, + "blocked": 1, + "allowed": 1 + } + ] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789096950.435623, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T03:51:52.104521+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-10.md b/projects/network_usage/reports/2026-09-10.md new file mode 100644 index 0000000..ff2e4c1 --- /dev/null +++ b/projects/network_usage/reports/2026-09-10.md @@ -0,0 +1,639 @@ +# Pi-hole DNS usage — 2026-09-10 + +Window: 2026-09-10T00:00:00-04:00 to 2026-09-11T00:00:00-04:00 (America/New_York) +Generated: 2026-09-11T00:15:03.846282-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | Office | 32,959 | 1,984 | 6.02% | `internalfb.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.108 | Hallway | 19,654 | 2,442 | 12.42% | `whatsapp.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Hallway | 16,234 | 3,843 | 23.67% | `mmx-ds.cdn.whatsapp.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.140 | Hallway | 12,545 | 2,156 | 17.19% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.111 | Hallway | 9,806 | 1,419 | 14.47% | `ts01-b.csa.cloudsink.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 6,784 | 224 | 3.30% | `chatgpt.com` | `telemetry.n8n.io` | +| adolforeyna-iMac11-3 | 192.168.68.124 | Study | 5,560 | 1,529 | 27.50% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| espressif | 192.168.68.106 | Study | 2,682 | 188 | 7.01% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| aeropi5 | 192.168.68.126 | Office | 2,491 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,417 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPhone | 192.168.68.121 | Hallway | 2,173 | 82 | 3.77% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| emiserver | 192.168.68.119 | Office | 1,849 | 0 | 0.00% | `api.telegram.org` | `—` | +| 50CasitaTv | 192.168.68.114 | Casita | 1,620 | 1,534 | 94.69% | `api.roku.com` | `scribe.logs.roku.com` | +| 50LivingRoom | 192.168.68.100 | Office | 1,068 | 990 | 92.70% | `api.roku.com` | `scribe.logs.roku.com` | +| iPad-4 | 192.168.68.107 | Hallway | 825 | 26 | 3.15% | `mask.apple-dns.net` | `partiality.itunes.apple.com` | +| iPad | 192.168.68.131 | Hallway | 684 | 21 | 3.07% | `mask.apple-dns.net` | `partiality.itunes.apple.com` | +| localhost | 127.0.0.1 | not mapped | 675 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.113 | Study | 386 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 331 | 17 | 5.14% | `safebrowsing.googleapis.com` | `fbs.smoot.apple.com` | +| espressif | 192.168.68.105 | WashMachine | 313 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 159 | 36 | 22.64% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| espressif | 192.168.68.127 | Office | 111 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Alicia-2022-2 | 192.168.68.117 | Office | 63 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Mac | 192.168.68.102 | Office | 54 | 0 | 0.00% | `shed.outlook.acdc.tm.svc.cloud.microsoft` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 49 | 0 | 0.00% | `39.courier-push-apple.com.akadns.net` | `—` | +| E31868152 | 192.168.68.128 | Barn | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 44 | 0 | 0.00% | `prod.wdckeystone.com` | `—` | +| iot_device | 192.168.68.135 | Office | 39 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Blink-Device | 192.168.68.129 | WashMachine | 19 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Unknown device | 172.22.0.1 | not mapped | 3 | 1 | 33.33% | `youtu.be` | `youtube.com` | +| cloud.reynafamily.com | 172.22.0.1 | not mapped | 2 | 0 | 0.00% | `youtu.be` | `youtube.com` | +| FN-LINK | 192.168.68.139 | Barn | 1 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 32,959; blocked: 1,984; block rate: 6.02%; unique domains: 462. + +Top visited (not blocked): +- internalfb.com — 1,623 +- ssl.gstatic.com — 1,467 +- api.manus.im — 821 +- play.google.com — 811 +- beacons.gcp.gvt2.com — 754 +- chat.google.com — 544 +- signaler-pa.clients6.google.com — 470 +- waa-pa.clients6.google.com — 445 +- google.com — 418 +- peoplestack-pa.clients6.google.com — 403 +Top blocked: +- dit.whatsapp.net — 349 blocked of 351 +- www.internalfb.com — 256 blocked of 4,909 +- graph.facebook.com — 154 blocked of 2,016 +- us-v20.events.data.microsoft.com — 148 blocked of 149 +- tokenservice.edge.x2p.facebook.net — 127 blocked of 185 +- graph.prod.facebook.com — 102 blocked of 446 +- csp.withgoogle.com — 88 blocked of 88 +- appsgrowthpromo-pa.clients6.google.com — 75 blocked of 75 +- www.facebook.com — 60 blocked of 252 +- interngraph.internmc.facebook.com — 56 blocked of 373 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 19,654; blocked: 2,442; block rate: 12.42%; unique domains: 748. + +Top visited (not blocked): +- whatsapp.com — 1,763 +- mmx-ds.cdn.whatsapp.net — 748 +- cma2.itunes.apple.com — 680 +- sps-media.v.aaplimg.com — 610 +- chat.openai.com — 569 +- muse.ai — 504 +- www.google.com — 443 +- www.apple.com — 402 +- chatgpt.com — 383 +- ab.chatgpt.com — 362 +Top blocked: +- dit.whatsapp.net — 1,893 blocked of 1,898 +- slackb.com — 152 blocked of 156 +- ogads-pa.clients6.google.com — 42 blocked of 42 +- x.com — 33 blocked of 49 +- analytics.google.com — 32 blocked of 32 +- www.youtube.com — 24 blocked of 225 +- collector-pxu6b0qd2s.px-cloud.net — 24 blocked of 24 +- rr10---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 14 blocked of 24 +- accounts.youtube.com — 12 blocked of 126 +- i.ytimg.com — 12 blocked of 72 + +### iPhone (192.168.68.104) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 16,234; blocked: 3,843; block rate: 23.67%; unique domains: 1,769. + +Top visited (not blocked): +- mmx-ds.cdn.whatsapp.net — 208 +- btlr.sharethrough.com — 192 +- outlook.office365.com — 184 +- mask.apple-dns.net — 175 +- chat.cdn.whatsapp.net — 147 +- www.google.com — 97 +- ib.anycast.adnxs.com — 81 +- grid-bidder.criteo.com — 76 +- xp.g.aaplimg.com — 75 +- us-east-tlx.3lift.com — 71 +Top blocked: +- dit.whatsapp.net — 442 blocked of 442 +- firebaselogging-pa.googleapis.com — 221 blocked of 221 +- ep2.facebook.com — 220 blocked of 220 +- g2.gumgum.com — 182 blocked of 182 +- app-analytics-services.com — 126 blocked of 126 +- choices.truste.com — 125 blocked of 125 +- cdn.doubleverify.com — 110 blocked of 110 +- static.adsafeprotected.com — 99 blocked of 99 +- collector-pxuarm9b04.perimeterx.net — 86 blocked of 86 +- sdk.iad-08.braze.com — 84 blocked of 84 + +### Mac (192.168.68.140) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 12,545; blocked: 2,156; block rate: 17.19%; unique domains: 531. + +Top visited (not blocked): +- ssl.gstatic.com — 710 +- usc-word-edit.officeapps.live.com — 498 +- optimizationguide-pa.googleapis.com — 472 +- play.google.com — 328 +- signaler-pa.clients6.google.com — 300 +- www.google.com — 297 +- oauth.officeapps.live.com — 240 +- waa-pa.clients6.google.com — 238 +- mmx-ds.cdn.whatsapp.net — 186 +- common.online.office.com — 173 +Top blocked: +- dit.whatsapp.net — 932 blocked of 932 +- word-telemetry.officeapps.live.com — 466 blocked of 466 +- excel-telemetry.officeapps.live.com — 313 blocked of 313 +- bam.nr-data.net — 78 blocked of 100 +- track.capitaloneshopping.com — 60 blocked of 60 +- www.youtube.com — 38 blocked of 172 +- ogads-pa.clients6.google.com — 36 blocked of 36 +- sentry.bga.li — 28 blocked of 28 +- id5-sync.com — 24 blocked of 24 +- ups.analytics.yahoo.com — 20 blocked of 20 + +### iPhone (192.168.68.111) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 9,806; blocked: 1,419; block rate: 14.47%; unique domains: 714. + +Top visited (not blocked): +- ts01-b.csa.cloudsink.net — 491 +- mmx-ds.cdn.whatsapp.net — 481 +- mask.apple-dns.net — 434 +- chat.cdn.whatsapp.net — 414 +- outlook.office365.com — 331 +- www.google.com — 260 +- ts01-b.cloudsink.net — 260 +- mdm-na2.mobileiron.com — 194 +- oauthaccountmanager.googleapis.com — 136 +- api.whatsapp.net — 102 +Top blocked: +- dit.whatsapp.net — 518 blocked of 518 +- stocks-analytics-events.apple.com — 283 blocked of 283 +- app-analytics-services.com — 145 blocked of 145 +- app-measurement.com — 90 blocked of 90 +- sdk.iad-05.braze.com — 56 blocked of 56 +- firebaselogging-pa.googleapis.com — 50 blocked of 50 +- fbs.smoot.apple.com — 32 blocked of 32 +- cdp.customer.io — 31 blocked of 31 +- skan.singular.net — 15 blocked of 15 +- partiality.itunes.apple.com — 14 blocked of 14 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 6,784; blocked: 224; block rate: 3.30%; unique domains: 39. + +Top visited (not blocked): +- chatgpt.com — 2,836 +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- adolforeynaserver — 308 +- acme-v02.api.letsencrypt.org — 242 +- acme-staging-v02.api.letsencrypt.org — 238 +- ph.n8n.io — 114 +- version.goauthentik.io — 48 +- api.github.com — 48 +- version.immich.cloud — 24 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: Study; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 5,560; blocked: 1,529; block rate: 27.50%; unique domains: 50. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,989 +- connectivity-check.ubuntu.com — 576 +- chatgpt.com — 494 +- push.services.mozilla.com — 144 +- filters.adtidy.org — 120 +- www.recaptcha.net — 117 +- www.gstatic.com — 115 +- merino.services.mozilla.com — 100 +- fonts.gstatic.com — 96 +- 1a1inqjh.p.qrcdn.net — 95 +Top blocked: +- cdp.cloud.unity3d.com — 812 blocked of 818 +- sdk.iad-01.braze.com — 453 blocked of 455 +- incoming.telemetry.mozilla.org — 258 blocked of 258 +- csp.withgoogle.com — 6 blocked of 6 + +### espressif (192.168.68.106) +Location: Study; MAC: 14-C1-9F-D0-5C-5C; mapping: multiple_identities_seen. +Queries: 2,682; blocked: 188; block rate: 7.01%; unique domains: 413. + +Top visited (not blocked): +- mask.apple-dns.net — 152 +- outlook.office365.com — 92 +- mmx-ds.cdn.whatsapp.net — 68 +- time.cloudflare.com — 62 +- ocsp2.apple.com — 52 +- bag-cdn.itunes-apple.com.akadns.net — 52 +- ocsp2.g.aaplimg.com — 40 +- imap.gmail.com — 39 +- www.google.com — 37 +- atm.outlook.mira.tm.svc.cloud.microsoft — 30 +Top blocked: +- dit.whatsapp.net — 108 blocked of 108 +- fbs.smoot.apple.com — 20 blocked of 20 +- firebaselogging-pa.googleapis.com — 11 blocked of 11 +- app-analytics-services.com — 11 blocked of 11 +- iadsdk.apple.com — 8 blocked of 8 +- partiality.itunes.apple.com — 6 blocked of 6 +- orangetheopsai.dataplane.rudderstack.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- mobile.launchdarkly.com — 4 blocked of 4 +- ogads-pa.googleapis.com — 2 blocked of 2 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,491; blocked: 0; block rate: 0.00%; unique domains: 15. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,168 +- chatgpt.com — 1,001 +- herdr.dev — 197 +- cloud.reynafamily.com — 92 +- api.snapcraft.io — 14 +- cdn.fwupd.org — 5 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +- canonical-lgw01.cdn.snapcraftcontent.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,417; blocked: 0; block rate: 0.00%; unique domains: 15. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,167 +- chatgpt.com — 940 +- herdr.dev — 188 +- cloud.reynafamily.com — 92 +- api.snapcraft.io — 10 +- cdn.fwupd.org — 6 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +- canonical-lgw01.cdn.snapcraftcontent.com — 2 +Top blocked: +- none + +### iPhone (192.168.68.121) +Location: Hallway; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 2,173; blocked: 82; block rate: 3.77%; unique domains: 211. + +Top visited (not blocked): +- mask.apple-dns.net — 306 +- ocsp2.apple.com — 72 +- _dns.resolver.arpa — 63 +- iphone-ld.apple.com — 58 +- www.subalert.com — 56 +- mask.icloud.com — 52 +- configuration.ls.apple.com — 48 +- ocsp2.g.aaplimg.com — 45 +- swallow.apple.com — 44 +- gdmf.apple.com — 44 +Top blocked: +- fbs.smoot.apple.com — 46 blocked of 46 +- experiments.apple.com — 36 blocked of 38 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 1,849; blocked: 0; block rate: 0.00%; unique domains: 23. + +Top visited (not blocked): +- api.telegram.org — 1,028 +- chatgpt.com — 518 +- herdr.dev — 182 +- version.goauthentik.io — 48 +- version.immich.cloud — 24 +- api.snapcraft.io — 10 +- cdn.fwupd.org — 6 +- us.i.posthog.com — 4 +- motd.ubuntu.com — 4 +- cluster0-shard-00-02.yyalx.mongodb.net — 4 +Top blocked: +- none + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 1,620; blocked: 1,534; block rate: 94.69%; unique domains: 18. + +Top visited (not blocked): +- api.roku.com — 27 +- themes-service.sr.roku.com — 25 +- mediaservices.cdn-apple.com — 14 +- api2.sr.roku.com — 2 +- sw-update.cs.roku.com — 1 +- navigation.sr.roku.com — 1 +- longview.sb.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- images.sr.roku.com — 1 +- image.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,308 blocked of 1,312 +- liberty.logs.roku.com — 198 blocked of 202 +- cloudservices.roku.com — 26 blocked of 26 +- display.ravm.tv — 2 blocked of 2 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 1,068; blocked: 990; block rate: 92.70%; unique domains: 22. + +Top visited (not blocked): +- api.roku.com — 26 +- themes-service.sr.roku.com — 24 +- api2.sr.roku.com — 5 +- mediaservices.cdn-apple.com — 2 +- images.sr.roku.com — 2 +- channels.roku.com — 2 +- tis.cti.roku.com — 1 +- sw-update.cs.roku.com — 1 +- rsp.web.roku.com — 1 +- navigation.sr.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 764 blocked of 766 +- liberty.logs.roku.com — 196 blocked of 200 +- cloudservices.roku.com — 26 blocked of 26 +- identity.ads.roku.com — 2 blocked of 2 +- display.ravm.tv — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: Hallway; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 825; blocked: 26; block rate: 3.15%; unique domains: 154. + +Top visited (not blocked): +- mask.apple-dns.net — 145 +- _dns.resolver.arpa — 55 +- mask.icloud.com — 40 +- ocsp2.apple.com — 32 +- bag.itunes.apple.com — 24 +- gsp-ssl.ls.apple.com — 20 +- ocsp2.g.aaplimg.com — 16 +- gdmf.apple.com — 14 +- pancake.apple.com — 12 +- kt-prod.ess.apple.com — 12 +Top blocked: +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- tr.iadsdk.apple.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- config.uca.cloud.unity3d.com — 2 blocked of 2 +- cdp.cloud.unity3d.com — 2 blocked of 2 + +### iPad (192.168.68.131) +Location: Hallway; MAC: A2-10-C6-24-C2-0A; mapping: multiple_identities_seen. +Queries: 684; blocked: 21; block rate: 3.07%; unique domains: 266. + +Top visited (not blocked): +- mask.apple-dns.net — 31 +- gdmf.apple.com — 18 +- ocsp2.g.aaplimg.com — 13 +- sps-media.v.aaplimg.com — 12 +- xp.g.aaplimg.com — 11 +- gdmf.v.aaplimg.com — 10 +- sps-media.awuse1.sbz.apple.com — 8 +- smp-device-content.apple.com — 8 +- pancake.apple.com — 8 +- _dns.resolver.arpa — 8 +Top blocked: +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- iadsdk.apple.com — 2 blocked of 2 +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 +- trk.pinterest.com — 1 blocked of 1 +- app-measurement.com — 1 blocked of 1 +- app-analytics-services.com — 1 blocked of 1 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 675; blocked: 0; block rate: 0.00%; unique domains: 37. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 140.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +- 125.68.168.192.in-addr.arpa — 24 +- 124.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 386; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 386 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 331; blocked: 17; block rate: 5.14%; unique domains: 59. + +Top visited (not blocked): +- safebrowsing.googleapis.com — 48 +- gateway.fe2.apple-dns.net — 43 +- time-ios.apple.com — 34 +- p33-bookmarks.icloud.com — 20 +- _bookmarkdavs._tcp.p33-bookmarks.icloud.com — 20 +- gateway.icloud.com — 19 +- ocsp.apple.com — 17 +- mesu.apple.com — 8 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +Top blocked: +- fbs.smoot.apple.com — 9 blocked of 10 +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.105) +Location: WashMachine; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 313; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 312 +- cdn.tactilityproject.org — 1 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 159; blocked: 36; block rate: 22.64%; unique domains: 9. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 72 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 38 +- www.amazon.com — 6 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 36 blocked of 36 + +### espressif (192.168.68.127) +Location: Office; MAC: 28-84-85-85-10-BC; mapping: historical_snapshot. +Queries: 111; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 104 +- cdn.tactilityproject.org — 7 +Top blocked: +- none + +### Alicia-2022-2 (192.168.68.117) +Location: Office; MAC: 56-68-92-84-12-EE; mapping: historical_snapshot. +Queries: 63; blocked: 0; block rate: 0.00%; unique domains: 15. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 27 +- podcast.emmint.com — 6 +- _dns.resolver.arpa — 5 +- mesu-cdn.origin-apple.com.akadns.net — 4 +- mesu.g.aaplimg.com — 3 +- us-se-courier-vs.push-apple.com.akadns.net — 2 +- s3.amazonaws.com — 2 +- mesu.apple.com — 2 +- init.push.apple.com — 2 +- guzzoni.apple.com — 2 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 54; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- shed.outlook.acdc.tm.svc.cloud.microsoft — 13 +- e6858.dsce9.akamaiedge.net — 8 +- contacts.fe2.apple-dns.net — 6 +- fs.outlook.mira.tm.svc.cloud.microsoft — 4 +- 130.68.168.192.in-addr.arpa — 4 +- www.apple.com — 2 +- web.whatsapp.com — 2 +- slack.com — 2 +- router8.teamviewer.com — 2 +- router6.teamviewer.com — 2 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 49; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- 39.courier-push-apple.com.akadns.net — 6 +- shed.outlook.acdc.tm.svc.cloud.microsoft — 3 +- atm.outlook.mira.tm.svc.cloud.microsoft — 3 +- 9-courier.push.apple.com — 3 +- 7-courier.push.apple.com — 3 +- 49-courier.push.apple.com — 3 +- 43-courier.push.apple.com — 3 +- 23-courier.push.apple.com — 3 +- 21-courier.push.apple.com — 3 +- 19-courier.push.apple.com — 3 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 44; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod.wdckeystone.com — 8 +- prod-proxy.wdckeystone.com — 8 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-gateway.wdckeystone.com — 4 +- prod-7c74fffc718ed01.wdckeystone.com — 4 +- google.com — 4 +- prod-fc14d21a5887149.wdckeystone.com — 2 +- prod-31cdfc8017b5028.wdckeystone.com — 2 +- downloads.mycloud.com — 2 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 39; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- time.cloudflare.com — 24 +- api.bambulab.com — 13 +- or-cloud-upload-prod.s3.us-west-2.amazonaws.com — 2 +Top blocked: +- none + +### Blink-Device (192.168.68.129) +Location: WashMachine; MAC: 84-28-59-E8-42-80; mapping: historical_snapshot. +Queries: 19; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 19 +Top blocked: +- none + +### Unknown device (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3; blocked: 1; block rate: 33.33%; unique domains: 3. + +Top visited (not blocked): +- youtu.be — 1 +- instagram.com — 1 +- facebook.com — 1 +Top blocked: +- youtube.com — 1 blocked of 2 + +### cloud.reynafamily.com (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- youtu.be — 1 +- instagram.com — 1 +- facebook.com — 1 +Top blocked: +- youtube.com — 1 blocked of 2 + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-11.json b/projects/network_usage/reports/2026-09-11.json new file mode 100644 index 0000000..0874f85 --- /dev/null +++ b/projects/network_usage/reports/2026-09-11.json @@ -0,0 +1,3291 @@ +{ + "schema_version": 2, + "day": "2026-09-11", + "timezone": "America/New_York", + "generated_at": "2026-09-12T00:15:45.796409-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-11T00:00:00-04:00", + "end_local": "2026-09-12T00:00:00-04:00", + "start_epoch": 1789099200, + "end_epoch": 1789185600 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 16152 + }, + { + "status": 2, + "queries": 11539 + }, + { + "status": 3, + "queries": 49217 + }, + { + "status": 4, + "queries": 1236 + }, + { + "status": 5, + "queries": 19 + }, + { + "status": 9, + "queries": 978 + }, + { + "status": 10, + "queries": 132 + }, + { + "status": 12, + "queries": 10 + }, + { + "status": 14, + "queries": 1931 + }, + { + "status": 16, + "queries": 439 + }, + { + "status": 17, + "queries": 38348 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 35, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 31537, + "blocked_queries": 948, + "block_rate_percent": 3.01, + "unique_domains": 519, + "last_query_epoch": 1789184815.7030616, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 1625, + "blocked": 0, + "allowed": 1625 + }, + { + "ip": "192.168.68.112", + "domain": "ssl.gstatic.com", + "queries": 1559, + "blocked": 0, + "allowed": 1559 + }, + { + "ip": "192.168.68.112", + "domain": "play.google.com", + "queries": 780, + "blocked": 0, + "allowed": 780 + }, + { + "ip": "192.168.68.112", + "domain": "api.manus.im", + "queries": 767, + "blocked": 0, + "allowed": 767 + }, + { + "ip": "192.168.68.112", + "domain": "beacons.gcp.gvt2.com", + "queries": 661, + "blocked": 0, + "allowed": 661 + }, + { + "ip": "192.168.68.112", + "domain": "waa-pa.clients6.google.com", + "queries": 495, + "blocked": 0, + "allowed": 495 + }, + { + "ip": "192.168.68.112", + "domain": "google.com", + "queries": 404, + "blocked": 0, + "allowed": 404 + }, + { + "ip": "192.168.68.112", + "domain": "signaler-pa.clients6.google.com", + "queries": 399, + "blocked": 0, + "allowed": 399 + }, + { + "ip": "192.168.68.112", + "domain": "peoplestack-pa.clients6.google.com", + "queries": 390, + "blocked": 0, + "allowed": 390 + }, + { + "ip": "192.168.68.112", + "domain": "ai-insights.internalmeta.com", + "queries": 357, + "blocked": 0, + "allowed": 357 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "dit.whatsapp.net", + "queries": 255, + "blocked": 255, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "us-v20.events.data.microsoft.com", + "queries": 137, + "blocked": 137, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 5121, + "blocked": 67, + "allowed": 5054 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 143, + "blocked": 54, + "allowed": 89 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 284, + "blocked": 53, + "allowed": 231 + }, + { + "ip": "192.168.68.112", + "domain": "csp.withgoogle.com", + "queries": 43, + "blocked": 43, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 2024, + "blocked": 37, + "allowed": 1987 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 392, + "blocked": 36, + "allowed": 356 + }, + { + "ip": "192.168.68.112", + "domain": "appsgrowthpromo-pa.clients6.google.com", + "queries": 27, + "blocked": 27, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 22139, + "blocked_queries": 3702, + "block_rate_percent": 16.72, + "unique_domains": 933, + "last_query_epoch": 1789185599.6715217, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 1217, + "blocked": 0, + "allowed": 1217 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 716, + "blocked": 0, + "allowed": 716 + }, + { + "ip": "192.168.68.108", + "domain": "api.telegram.org", + "queries": 671, + "blocked": 0, + "allowed": 671 + }, + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 645, + "blocked": 0, + "allowed": 645 + }, + { + "ip": "192.168.68.108", + "domain": "muse.ai", + "queries": 604, + "blocked": 0, + "allowed": 604 + }, + { + "ip": "192.168.68.108", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 398, + "blocked": 0, + "allowed": 398 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 381, + "blocked": 0, + "allowed": 381 + }, + { + "ip": "192.168.68.108", + "domain": "www.apple.com", + "queries": 367, + "blocked": 0, + "allowed": 367 + }, + { + "ip": "192.168.68.108", + "domain": "chat.openai.com", + "queries": 366, + "blocked": 0, + "allowed": 366 + }, + { + "ip": "192.168.68.108", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 357, + "blocked": 0, + "allowed": 357 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 2281, + "blocked": 2279, + "allowed": 2 + }, + { + "ip": "192.168.68.108", + "domain": "www.youtube.com", + "queries": 325, + "blocked": 260, + "allowed": 65 + }, + { + "ip": "192.168.68.108", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 182, + "blocked": 182, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi-na.amazon.com", + "queries": 146, + "blocked": 146, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "slackb.com", + "queries": 122, + "blocked": 122, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "mobile.events.data.microsoft.com", + "queries": 106, + "blocked": 106, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi.amazon.com", + "queries": 66, + "blocked": 66, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 54, + "blocked": 54, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "mcs16-normal-us-ttp2.capcutapi.us", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 40, + "blocked": 40, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 14433, + "blocked_queries": 2552, + "block_rate_percent": 17.68, + "unique_domains": 1682, + "last_query_epoch": 1789185531.6561599, + "deco": { + "ip": "192.168.68.104", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 356, + "blocked": 0, + "allowed": 356 + }, + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 317, + "blocked": 0, + "allowed": 317 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 292, + "blocked": 0, + "allowed": 292 + }, + { + "ip": "192.168.68.104", + "domain": "chat.cdn.whatsapp.net", + "queries": 206, + "blocked": 0, + "allowed": 206 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 170, + "blocked": 0, + "allowed": 170 + }, + { + "ip": "192.168.68.104", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 118, + "blocked": 0, + "allowed": 118 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 100, + "blocked": 0, + "allowed": 100 + }, + { + "ip": "192.168.68.104", + "domain": "imap.gmail.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + }, + { + "ip": "192.168.68.104", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.104", + "domain": "yt3.ggpht.com", + "queries": 92, + "blocked": 0, + "allowed": 92 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 618, + "blocked": 618, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ep2.facebook.com", + "queries": 155, + "blocked": 155, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "app-analytics-services.com", + "queries": 132, + "blocked": 132, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 126, + "blocked": 126, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ep7.facebook.com", + "queries": 71, + "blocked": 65, + "allowed": 6 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 64, + "blocked": 64, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "static.adsafeprotected.com", + "queries": 55, + "blocked": 55, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "sdk.iad-01.braze.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 41, + "blocked": 41, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 11451, + "blocked_queries": 2465, + "block_rate_percent": 21.53, + "unique_domains": 732, + "last_query_epoch": 1789185540.2202942, + "deco": { + "ip": "192.168.68.111", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 526, + "blocked": 0, + "allowed": 526 + }, + { + "ip": "192.168.68.111", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 511, + "blocked": 0, + "allowed": 511 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 448, + "blocked": 0, + "allowed": 448 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.office365.com", + "queries": 414, + "blocked": 0, + "allowed": 414 + }, + { + "ip": "192.168.68.111", + "domain": "chat.cdn.whatsapp.net", + "queries": 398, + "blocked": 0, + "allowed": 398 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 255, + "blocked": 0, + "allowed": 255 + }, + { + "ip": "192.168.68.111", + "domain": "ts01-b.cloudsink.net", + "queries": 244, + "blocked": 0, + "allowed": 244 + }, + { + "ip": "192.168.68.111", + "domain": "whatsapp.com", + "queries": 173, + "blocked": 0, + "allowed": 173 + }, + { + "ip": "192.168.68.111", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 168, + "blocked": 0, + "allowed": 168 + }, + { + "ip": "192.168.68.111", + "domain": "mdm-na2.mobileiron.com", + "queries": 142, + "blocked": 0, + "allowed": 142 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 897, + "blocked": 895, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "stocks-analytics-events.apple.com", + "queries": 485, + "blocked": 485, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-analytics-services.com", + "queries": 144, + "blocked": 144, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-measurement.com", + "queries": 65, + "blocked": 65, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "www.youtube.com", + "queries": 175, + "blocked": 60, + "allowed": 115 + }, + { + "ip": "192.168.68.111", + "domain": "uslog.ezvizlife.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cdp.customer.io", + "queries": 42, + "blocked": 42, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "i.ytimg.com", + "queries": 83, + "blocked": 29, + "allowed": 54 + }, + { + "ip": "192.168.68.111", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "rr10---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com", + "queries": 23, + "blocked": 22, + "allowed": 1 + } + ] + }, + { + "ip": "192.168.68.140", + "pihole_name": "", + "queries": 10875, + "blocked_queries": 1723, + "block_rate_percent": 15.84, + "unique_domains": 448, + "last_query_epoch": 1789185599.4664757, + "deco": { + "ip": "192.168.68.140", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.140", + "domain": "ssl.gstatic.com", + "queries": 606, + "blocked": 0, + "allowed": 606 + }, + { + "ip": "192.168.68.140", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 412, + "blocked": 0, + "allowed": 412 + }, + { + "ip": "192.168.68.140", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 376, + "blocked": 0, + "allowed": 376 + }, + { + "ip": "192.168.68.140", + "domain": "play.google.com", + "queries": 296, + "blocked": 0, + "allowed": 296 + }, + { + "ip": "192.168.68.140", + "domain": "www.google.com", + "queries": 294, + "blocked": 0, + "allowed": 294 + }, + { + "ip": "192.168.68.140", + "domain": "signaler-pa.clients6.google.com", + "queries": 252, + "blocked": 0, + "allowed": 252 + }, + { + "ip": "192.168.68.140", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 218, + "blocked": 0, + "allowed": 218 + }, + { + "ip": "192.168.68.140", + "domain": "oauth.officeapps.live.com", + "queries": 196, + "blocked": 0, + "allowed": 196 + }, + { + "ip": "192.168.68.140", + "domain": "www.apple.com", + "queries": 187, + "blocked": 0, + "allowed": 187 + }, + { + "ip": "192.168.68.140", + "domain": "vod.delivery.roku.com", + "queries": 170, + "blocked": 0, + "allowed": 170 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.140", + "domain": "dit.whatsapp.net", + "queries": 799, + "blocked": 799, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "word-telemetry.officeapps.live.com", + "queries": 381, + "blocked": 381, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 276, + "blocked": 276, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "track.capitaloneshopping.com", + "queries": 50, + "blocked": 50, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "sentry.bga.li", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "analytics.google.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "bam.nr-data.net", + "queries": 42, + "blocked": 21, + "allowed": 21 + }, + { + "ip": "192.168.68.140", + "domain": "ogads-pa.clients6.google.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "csp.withgoogle.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "analytics.tiktok.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 6462, + "blocked_queries": 224, + "block_rate_percent": 3.47, + "unique_domains": 31, + "last_query_epoch": 1789185475.0556726, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "chatgpt.com", + "queries": 2500, + "blocked": 0, + "allowed": 2500 + }, + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 302, + "blocked": 0, + "allowed": 302 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 260, + "blocked": 0, + "allowed": 260 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 246, + "blocked": 0, + "allowed": 246 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 3059, + "blocked_queries": 2997, + "block_rate_percent": 97.97, + "unique_domains": 13, + "last_query_epoch": 1789185582.085235, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 2774, + "blocked": 2772, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 198, + "blocked": 198, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 2962, + "blocked_queries": 2866, + "block_rate_percent": 96.76, + "unique_domains": 28, + "last_query_epoch": 1789185586.919168, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.114", + "domain": "images.sr.roku.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.114", + "domain": "yt3.ggpht.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "www.youtube.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "www.gstatic.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "lh3.googleusercontent.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "lat-services.api.data.roku.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "i.ytimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2632, + "blocked": 2630, + "allowed": 2 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 202, + "blocked": 202, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 29, + "blocked": 29, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.124", + "pihole_name": "", + "queries": 2829, + "blocked_queries": 577, + "block_rate_percent": 20.4, + "unique_domains": 66, + "last_query_epoch": 1789144485.602387, + "deco": { + "ip": "192.168.68.124", + "mac": "C8-BC-C8-BB-19-2D", + "hostname": "adolforeyna-iMac11-3", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T16:31:56.390081+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.124", + "domain": "lcp.rosettastone.com", + "queries": 1026, + "blocked": 0, + "allowed": 1026 + }, + { + "ip": "192.168.68.124", + "domain": "connectivity-check.ubuntu.com", + "queries": 306, + "blocked": 0, + "allowed": 306 + }, + { + "ip": "192.168.68.124", + "domain": "chatgpt.com", + "queries": 274, + "blocked": 0, + "allowed": 274 + }, + { + "ip": "192.168.68.124", + "domain": "push.services.mozilla.com", + "queries": 76, + "blocked": 0, + "allowed": 76 + }, + { + "ip": "192.168.68.124", + "domain": "filters.adtidy.org", + "queries": 69, + "blocked": 0, + "allowed": 69 + }, + { + "ip": "192.168.68.124", + "domain": "merino.services.mozilla.com", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.124", + "domain": "www.recaptcha.net", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.124", + "domain": "www.gstatic.com", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.124", + "domain": "1a1inqjh.p.qrcdn.net", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.124", + "domain": "fonts.gstatic.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.124", + "domain": "cdp.cloud.unity3d.com", + "queries": 429, + "blocked": 429, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "incoming.telemetry.mozilla.org", + "queries": 134, + "blocked": 134, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "ads.mozilla.org", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.124", + "domain": "csp.withgoogle.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2313, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1789185576.3532634, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1182, + "blocked": 0, + "allowed": 1182 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 769, + "blocked": 0, + "allowed": 769 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 207, + "blocked": 0, + "allowed": 207 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 106, + "blocked": 0, + "allowed": 106 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.126", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2286, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1789185576.3550286, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T20:11:26.725446+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1183, + "blocked": 0, + "allowed": 1183 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 743, + "blocked": 0, + "allowed": 743 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 210, + "blocked": 0, + "allowed": 210 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 106, + "blocked": 0, + "allowed": 106 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.116", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2134, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 24, + "last_query_epoch": 1789185593.468648, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1066, + "blocked": 0, + "allowed": 1066 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 709, + "blocked": 0, + "allowed": 709 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 218, + "blocked": 0, + "allowed": 218 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "archive.ubuntu.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 1905, + "blocked_queries": 85, + "block_rate_percent": 4.46, + "unique_domains": 249, + "last_query_epoch": 1789185423.4088404, + "deco": { + "ip": "192.168.68.131", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "mask.apple-dns.net", + "queries": 289, + "blocked": 0, + "allowed": 289 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.v.aaplimg.com", + "queries": 78, + "blocked": 0, + "allowed": 78 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.131", + "domain": "iphone-ld.apple.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.awuse1.sbz.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.131", + "domain": "ocsp2.apple.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.131", + "domain": "mask.icloud.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.131", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.131", + "domain": "configuration.ls.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.131", + "domain": "ocsp2.g.aaplimg.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.131", + "domain": "fbs.smoot.apple.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "youtubei.googleapis.com", + "queries": 22, + "blocked": 15, + "allowed": 7 + }, + { + "ip": "192.168.68.131", + "domain": "app-analytics-services.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-measurement.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "trk.pinterest.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1815, + "blocked_queries": 278, + "block_rate_percent": 15.32, + "unique_domains": 293, + "last_query_epoch": 1789184646.7524414, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 173, + "blocked": 0, + "allowed": 173 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.107", + "domain": "m.sni.global.fastly.net", + "queries": 23, + "blocked": 0, + "allowed": 23 + }, + { + "ip": "192.168.68.107", + "domain": "configuration.ls.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 22, + "blocked": 0, + "allowed": 22 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 166, + "blocked": 166, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 27, + "blocked": 27, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "sentry.bga.li", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "analytics.google.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "browser-update.org", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "graph.facebook.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 990, + "blocked_queries": 21, + "block_rate_percent": 2.12, + "unique_domains": 153, + "last_query_epoch": 1789185359.6601796, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 66, + "blocked": 0, + "allowed": 66 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 51, + "blocked": 0, + "allowed": 51 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 41, + "blocked": 0, + "allowed": 41 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 39, + "blocked": 0, + "allowed": 39 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.121", + "domain": "bag.itunes.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 799, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 41, + "last_query_epoch": 1789182000.4424465, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "140.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "131.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "127.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 26, + "blocked": 0, + "allowed": 26 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 450, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789185587.4780042, + "deco": { + "ip": "192.168.68.106", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "time.cloudflare.com", + "queries": 450, + "blocked": 0, + "allowed": 450 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 323, + "blocked_queries": 31, + "block_rate_percent": 9.6, + "unique_domains": 59, + "last_query_epoch": 1789183943.24569, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "safebrowsing.googleapis.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 35, + "blocked": 0, + "allowed": 35 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.150", + "domain": "p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "_bookmarkdavs._tcp.p33-bookmarks.icloud.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "valid.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "fbs.smoot.apple.com", + "queries": 23, + "blocked": 23, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 317, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789185373.0266054, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 317, + "blocked": 0, + "allowed": 317 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 200, + "blocked_queries": 44, + "block_rate_percent": 22.0, + "unique_domains": 10, + "last_query_epoch": 1789184713.8845775, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 85, + "blocked": 0, + "allowed": 85 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 196, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789184302.6790314, + "deco": { + "ip": "192.168.68.127", + "mac": "28-84-85-85-10-BC", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 192, + "blocked": 0, + "allowed": 192 + }, + { + "ip": "192.168.68.127", + "domain": "cdn.tactilityproject.org", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 129, + "blocked_queries": 1, + "block_rate_percent": 0.78, + "unique_domains": 25, + "last_query_epoch": 1789180702.4688873, + "deco": { + "ip": "192.168.68.105", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-12T02:31:23.330589+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "time.cloudflare.com", + "queries": 74, + "blocked": 0, + "allowed": 74 + }, + { + "ip": "192.168.68.105", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.105", + "domain": "m.media-amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.105", + "domain": "device-messaging-na.amazon.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.105", + "domain": "todo-ta-g7g.amazon.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.105", + "domain": "www.amazon.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.105", + "domain": "gateway.icloud.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.105", + "domain": "_dns.resolver.arpa", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.105", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.105", + "domain": "s3.amazonaws.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "unagi-na.amazon.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 84, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 35, + "last_query_epoch": 1789184728.2937968, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.129", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "gs-loc.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.129", + "domain": "sas.pcms.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "mask.icloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "mask-api.icloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "itunes.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "gspe79-ssl.ls.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 76, + "blocked_queries": 3, + "block_rate_percent": 3.95, + "unique_domains": 38, + "last_query_epoch": 1789160669.1557086, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "ssl.gstatic.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "mtalk.google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.133", + "domain": "www.youtube.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "securetoken.googleapis.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "peoplestack-pa.clients6.google.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "mail.google.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "lh3.googleusercontent.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "chat.google.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.133", + "domain": "captive.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.133", + "domain": "nexus-websocket-a.intercom.io", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 64, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1789182168.1049883, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-7c74fffc718ed01.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "downloads.mycloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 53, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1789183265.1470952, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.128", + "domain": "litedev.us.ezvizlife.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.128", + "domain": "pmsus1.ezvizlife.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 49, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789184381.6530242, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.125", + "domain": "pmsus1.ezvizlife.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 41, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1789185510.8779945, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.135", + "domain": "or-cloud-upload-prod.s3.us-west-2.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 9, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 5, + "last_query_epoch": 1789184598.409604, + "deco": { + "ip": "192.168.68.117", + "mac": "14-C1-9F-D1-A7-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-12T03:41:44.175702+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "time.cloudflare.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.117", + "domain": "skyprtc-uw23.srv.ygles.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.117", + "domain": "skyiot-uw23.srv.ygles.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.117", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.117", + "domain": "d-manp3.c-ij.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 8, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1789161165.34448, + "deco": { + "ip": "192.168.68.136", + "mac": "56-68-92-84-12-EE", + "hostname": "phone", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-11T21:11:48.677135+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "us-se-courier-vs.push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "7-courier2.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.136", + "domain": "23-courier2.push.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 8, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789160845.702395, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789178590.713737, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789107303.413878, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.120", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789136900.5220008, + "deco": { + "ip": "192.168.68.120", + "mac": "E4-F0-42-2E-E0-4E", + "hostname": "Google-Home-Mini", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T03:51:36.728681+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.120", + "domain": "clients3.google.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-11.md b/projects/network_usage/reports/2026-09-11.md new file mode 100644 index 0000000..4632379 --- /dev/null +++ b/projects/network_usage/reports/2026-09-11.md @@ -0,0 +1,642 @@ +# Pi-hole DNS usage — 2026-09-11 + +Window: 2026-09-11T00:00:00-04:00 to 2026-09-12T00:00:00-04:00 (America/New_York) +Generated: 2026-09-12T00:15:45.796409-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.112 | WashMachine | 31,537 | 948 | 3.01% | `internalfb.com` | `dit.whatsapp.net` | +| Mac | 192.168.68.108 | Hallway | 22,139 | 3,702 | 16.72% | `whatsapp.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.104 | Hallway | 14,433 | 2,552 | 17.68% | `outlook.office365.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.111 | Hallway | 11,451 | 2,465 | 21.53% | `mmx-ds.cdn.whatsapp.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.140 | Hallway | 10,875 | 1,723 | 15.84% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 6,462 | 224 | 3.47% | `chatgpt.com` | `telemetry.n8n.io` | +| 50LivingRoom | 192.168.68.100 | Office | 3,059 | 2,997 | 97.97% | `api.roku.com` | `scribe.logs.roku.com` | +| 50CasitaTv | 192.168.68.114 | Casita | 2,962 | 2,866 | 96.76% | `api.roku.com` | `scribe.logs.roku.com` | +| adolforeyna-iMac11-3 | 192.168.68.124 | Study | 2,829 | 577 | 20.40% | `lcp.rosettastone.com` | `cdp.cloud.unity3d.com` | +| aeropi5 | 192.168.68.126 | Office | 2,313 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,286 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| emiserver | 192.168.68.119 | Office | 2,134 | 0 | 0.00% | `api.telegram.org` | `—` | +| iPad | 192.168.68.131 | Office | 1,905 | 85 | 4.46% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 1,815 | 278 | 15.32% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| iPhone | 192.168.68.121 | Hallway | 990 | 21 | 2.12% | `mask.apple-dns.net` | `partiality.itunes.apple.com` | +| localhost | 127.0.0.1 | not mapped | 799 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.106 | Office | 450 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 323 | 31 | 9.60% | `safebrowsing.googleapis.com` | `fbs.smoot.apple.com` | +| espressif | 192.168.68.113 | Study | 317 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 200 | 44 | 22.00% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| espressif | 192.168.68.127 | Hallway | 196 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.105 | Office | 129 | 1 | 0.78% | `time.cloudflare.com` | `unagi-na.amazon.com` | +| Unknown device | 192.168.68.129 | not mapped | 84 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Unknown device | 192.168.68.133 | not mapped | 76 | 3 | 3.95% | `ssl.gstatic.com` | `nexus-websocket-a.intercom.io` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 64 | 0 | 0.00% | `prod-gateway.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 53 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 49 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| iot_device | 192.168.68.135 | Office | 41 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.117 | Office | 9 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| phone | 192.168.68.136 | Hallway | 8 | 0 | 0.00% | `us-se-courier-vs.push-apple.com.akadns.net` | `—` | +| Unknown device | 192.168.68.132 | not mapped | 8 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 2 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | +| Mac | 192.168.68.102 | Office | 2 | 0 | 0.00% | `local` | `—` | +| Google-Home-Mini | 192.168.68.120 | Hallway | 1 | 0 | 0.00% | `clients3.google.com` | `—` | + +## Per-device detail + +### Mac (192.168.68.112) +Location: WashMachine; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 31,537; blocked: 948; block rate: 3.01%; unique domains: 519. + +Top visited (not blocked): +- internalfb.com — 1,625 +- ssl.gstatic.com — 1,559 +- play.google.com — 780 +- api.manus.im — 767 +- beacons.gcp.gvt2.com — 661 +- waa-pa.clients6.google.com — 495 +- google.com — 404 +- signaler-pa.clients6.google.com — 399 +- peoplestack-pa.clients6.google.com — 390 +- ai-insights.internalmeta.com — 357 +Top blocked: +- dit.whatsapp.net — 255 blocked of 255 +- us-v20.events.data.microsoft.com — 137 blocked of 137 +- www.internalfb.com — 67 blocked of 5,121 +- tokenservice.edge.x2p.facebook.net — 54 blocked of 143 +- www.facebook.com — 53 blocked of 284 +- csp.withgoogle.com — 43 blocked of 43 +- mobile.pipe.aria.microsoft.com — 38 blocked of 38 +- graph.facebook.com — 37 blocked of 2,024 +- graph.prod.facebook.com — 36 blocked of 392 +- appsgrowthpromo-pa.clients6.google.com — 27 blocked of 27 + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 22,139; blocked: 3,702; block rate: 16.72%; unique domains: 933. + +Top visited (not blocked): +- whatsapp.com — 1,217 +- mmx-ds.cdn.whatsapp.net — 716 +- api.telegram.org — 671 +- www.google.com — 645 +- muse.ai — 604 +- api.apple-cloudkit.fe2.apple-dns.net — 398 +- chatgpt.com — 381 +- www.apple.com — 367 +- chat.openai.com — 366 +- 1.courier-sandbox-push-apple.com.akadns.net — 357 +Top blocked: +- dit.whatsapp.net — 2,279 blocked of 2,281 +- www.youtube.com — 260 blocked of 325 +- firebaselogging-pa.googleapis.com — 182 blocked of 182 +- unagi-na.amazon.com — 146 blocked of 146 +- slackb.com — 122 blocked of 122 +- mobile.events.data.microsoft.com — 106 blocked of 106 +- unagi.amazon.com — 66 blocked of 66 +- sentry.bga.li — 54 blocked of 54 +- mcs16-normal-us-ttp2.capcutapi.us — 50 blocked of 50 +- analytics.google.com — 40 blocked of 40 + +### iPhone (192.168.68.104) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 14,433; blocked: 2,552; block rate: 17.68%; unique domains: 1,682. + +Top visited (not blocked): +- outlook.office365.com — 356 +- mask.apple-dns.net — 317 +- mmx-ds.cdn.whatsapp.net — 292 +- chat.cdn.whatsapp.net — 206 +- www.google.com — 170 +- bag-cdn.itunes-apple.com.akadns.net — 118 +- ocsp2.apple.com — 100 +- imap.gmail.com — 97 +- atm.outlook.mira.tm.svc.cloud.microsoft — 96 +- yt3.ggpht.com — 92 +Top blocked: +- dit.whatsapp.net — 618 blocked of 618 +- ep2.facebook.com — 155 blocked of 155 +- app-analytics-services.com — 132 blocked of 132 +- firebaselogging-pa.googleapis.com — 126 blocked of 126 +- ep7.facebook.com — 65 blocked of 71 +- g2.gumgum.com — 64 blocked of 64 +- static.adsafeprotected.com — 55 blocked of 55 +- sdk.iad-01.braze.com — 50 blocked of 50 +- choices.truste.com — 48 blocked of 48 +- unagi-na.amazon.com — 41 blocked of 41 + +### iPhone (192.168.68.111) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 11,451; blocked: 2,465; block rate: 21.53%; unique domains: 732. + +Top visited (not blocked): +- mmx-ds.cdn.whatsapp.net — 526 +- ts01-b.csa.cloudsink.net — 511 +- mask.apple-dns.net — 448 +- outlook.office365.com — 414 +- chat.cdn.whatsapp.net — 398 +- www.google.com — 255 +- ts01-b.cloudsink.net — 244 +- whatsapp.com — 173 +- oauthaccountmanager.googleapis.com — 168 +- mdm-na2.mobileiron.com — 142 +Top blocked: +- dit.whatsapp.net — 895 blocked of 897 +- stocks-analytics-events.apple.com — 485 blocked of 485 +- app-analytics-services.com — 144 blocked of 144 +- app-measurement.com — 65 blocked of 65 +- www.youtube.com — 60 blocked of 175 +- uslog.ezvizlife.com — 48 blocked of 48 +- cdp.customer.io — 42 blocked of 42 +- i.ytimg.com — 29 blocked of 83 +- firebaselogging-pa.googleapis.com — 24 blocked of 24 +- rr10---sn-bvvbaxivnuxqjvhj5nu-hp5z.googlevideo.com — 22 blocked of 23 + +### Mac (192.168.68.140) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 10,875; blocked: 1,723; block rate: 15.84%; unique domains: 448. + +Top visited (not blocked): +- ssl.gstatic.com — 606 +- usc-word-edit.officeapps.live.com — 412 +- optimizationguide-pa.googleapis.com — 376 +- play.google.com — 296 +- www.google.com — 294 +- signaler-pa.clients6.google.com — 252 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 218 +- oauth.officeapps.live.com — 196 +- www.apple.com — 187 +- vod.delivery.roku.com — 170 +Top blocked: +- dit.whatsapp.net — 799 blocked of 799 +- word-telemetry.officeapps.live.com — 381 blocked of 381 +- excel-telemetry.officeapps.live.com — 276 blocked of 276 +- track.capitaloneshopping.com — 50 blocked of 50 +- sentry.bga.li — 46 blocked of 46 +- analytics.google.com — 32 blocked of 32 +- bam.nr-data.net — 21 blocked of 42 +- ogads-pa.clients6.google.com — 18 blocked of 18 +- csp.withgoogle.com — 16 blocked of 16 +- analytics.tiktok.com — 12 blocked of 12 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 6,462; blocked: 224; block rate: 3.47%; unique domains: 31. + +Top visited (not blocked): +- chatgpt.com — 2,500 +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- adolforeynaserver — 302 +- acme-v02.api.letsencrypt.org — 260 +- acme-staging-v02.api.letsencrypt.org — 246 +- ph.n8n.io — 114 +- version.goauthentik.io — 48 +- api.github.com — 48 +- version.immich.cloud — 24 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 3,059; blocked: 2,997; block rate: 97.97%; unique domains: 13. + +Top visited (not blocked): +- api.roku.com — 25 +- themes-service.sr.roku.com — 24 +- api2.sr.roku.com — 5 +- mediaservices.cdn-apple.com — 2 +- sw-update.cs.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- austin.sb.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,772 blocked of 2,774 +- liberty.logs.roku.com — 198 blocked of 198 +- cloudservices.roku.com — 24 blocked of 24 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 2,962; blocked: 2,866; block rate: 96.76%; unique domains: 28. + +Top visited (not blocked): +- api.roku.com — 28 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 12 +- images.sr.roku.com — 3 +- yt3.ggpht.com — 2 +- www.youtube.com — 2 +- www.gstatic.com — 2 +- lh3.googleusercontent.com — 2 +- lat-services.api.data.roku.com — 2 +- i.ytimg.com — 2 +Top blocked: +- scribe.logs.roku.com — 2,630 blocked of 2,632 +- liberty.logs.roku.com — 202 blocked of 202 +- cloudservices.roku.com — 29 blocked of 29 +- display.ravm.tv — 3 blocked of 3 +- identity.ads.roku.com — 2 blocked of 2 + +### adolforeyna-iMac11-3 (192.168.68.124) +Location: Study; MAC: C8-BC-C8-BB-19-2D; mapping: historical_snapshot. +Queries: 2,829; blocked: 577; block rate: 20.40%; unique domains: 66. + +Top visited (not blocked): +- lcp.rosettastone.com — 1,026 +- connectivity-check.ubuntu.com — 306 +- chatgpt.com — 274 +- push.services.mozilla.com — 76 +- filters.adtidy.org — 69 +- merino.services.mozilla.com — 61 +- www.recaptcha.net — 60 +- www.gstatic.com — 60 +- 1a1inqjh.p.qrcdn.net — 54 +- fonts.gstatic.com — 52 +Top blocked: +- cdp.cloud.unity3d.com — 429 blocked of 429 +- incoming.telemetry.mozilla.org — 134 blocked of 134 +- ads.mozilla.org — 8 blocked of 8 +- csp.withgoogle.com — 6 blocked of 6 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,313; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,182 +- chatgpt.com — 769 +- herdr.dev — 207 +- cloud.reynafamily.com — 106 +- cdn.fwupd.org — 12 +- api.snapcraft.io — 12 +- 126.68.168.192.in-addr.arpa — 10 +- 116.68.168.192.in-addr.arpa — 9 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,286; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,183 +- chatgpt.com — 743 +- herdr.dev — 210 +- cloud.reynafamily.com — 106 +- api.snapcraft.io — 12 +- 126.68.168.192.in-addr.arpa — 10 +- 116.68.168.192.in-addr.arpa — 9 +- cdn.fwupd.org — 6 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +Top blocked: +- none + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,134; blocked: 0; block rate: 0.00%; unique domains: 24. + +Top visited (not blocked): +- api.telegram.org — 1,066 +- chatgpt.com — 709 +- herdr.dev — 218 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- api.snapcraft.io — 12 +- motd.ubuntu.com — 6 +- cdn.fwupd.org — 6 +- archive.ubuntu.com — 6 +- security.ubuntu.com — 4 +Top blocked: +- none + +### iPad (192.168.68.131) +Location: Office; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 1,905; blocked: 85; block rate: 4.46%; unique domains: 249. + +Top visited (not blocked): +- mask.apple-dns.net — 289 +- sps-media.v.aaplimg.com — 78 +- _dns.resolver.arpa — 61 +- iphone-ld.apple.com — 54 +- sps-media.awuse1.sbz.apple.com — 52 +- ocsp2.apple.com — 50 +- mask.icloud.com — 46 +- iphone-ld.g.aaplimg.com — 44 +- configuration.ls.apple.com — 34 +- ocsp2.g.aaplimg.com — 33 +Top blocked: +- fbs.smoot.apple.com — 36 blocked of 36 +- youtubei.googleapis.com — 15 blocked of 22 +- app-analytics-services.com — 11 blocked of 11 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- app-measurement.com — 4 blocked of 4 +- trk.pinterest.com — 3 blocked of 3 +- experiments.apple.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,815; blocked: 278; block rate: 15.32%; unique domains: 293. + +Top visited (not blocked): +- mask.apple-dns.net — 173 +- _dns.resolver.arpa — 55 +- ocsp2.apple.com — 42 +- mask.icloud.com — 40 +- gdmf.apple.com — 34 +- ocsp2.g.aaplimg.com — 32 +- bag.itunes.apple.com — 26 +- m.sni.global.fastly.net — 23 +- configuration.ls.apple.com — 22 +- bag-cdn.itunes-apple.com.akadns.net — 22 +Top blocked: +- sdk.iad-01.braze.com — 166 blocked of 166 +- app-measurement.com — 27 blocked of 27 +- fbs.smoot.apple.com — 22 blocked of 22 +- sentry.bga.li — 17 blocked of 17 +- analytics.google.com — 17 blocked of 17 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- browser-update.org — 5 blocked of 5 +- iadsdk.apple.com — 4 blocked of 4 +- graph.facebook.com — 2 blocked of 2 + +### iPhone (192.168.68.121) +Location: Hallway; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 990; blocked: 21; block rate: 2.12%; unique domains: 153. + +Top visited (not blocked): +- mask.apple-dns.net — 66 +- www.subalert.com — 54 +- _dns.resolver.arpa — 51 +- iphone-ld.apple.com — 48 +- iphone-ld.g.aaplimg.com — 41 +- ocsp2.apple.com — 40 +- subalert.com — 39 +- mask.icloud.com — 30 +- bag.itunes.apple.com — 24 +- ocsp2.g.aaplimg.com — 18 +Top blocked: +- partiality.itunes.apple.com — 8 blocked of 8 +- cf.iadsdk.apple.com — 8 blocked of 8 +- experiments.apple.com — 3 blocked of 3 +- fbs.smoot.apple.com — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 799; blocked: 0; block rate: 0.00%; unique domains: 41. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 26 +- 4.4.8.8.in-addr.arpa — 26 +- 150.68.168.192.in-addr.arpa — 26 +- 140.68.168.192.in-addr.arpa — 26 +- 135.68.168.192.in-addr.arpa — 26 +- 134.68.168.192.in-addr.arpa — 26 +- 131.68.168.192.in-addr.arpa — 26 +- 128.68.168.192.in-addr.arpa — 26 +- 127.68.168.192.in-addr.arpa — 26 +- 126.68.168.192.in-addr.arpa — 26 +Top blocked: +- none + +### espressif (192.168.68.106) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 450; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 450 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 323; blocked: 31; block rate: 9.60%; unique domains: 59. + +Top visited (not blocked): +- safebrowsing.googleapis.com — 47 +- time-ios.apple.com — 35 +- gateway.fe2.apple-dns.net — 32 +- p33-bookmarks.icloud.com — 20 +- _bookmarkdavs._tcp.p33-bookmarks.icloud.com — 20 +- gateway.icloud.com — 17 +- ocsp.apple.com — 14 +- gsp64-ssl.ls.apple.com — 8 +- gsp-ssl.ls.apple.com — 8 +- valid.apple.com — 7 +Top blocked: +- fbs.smoot.apple.com — 23 blocked of 23 +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.113) +Location: Study; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 317; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 317 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 200; blocked: 44; block rate: 22.00%; unique domains: 10. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 85 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 54 +- www.amazon.com — 7 +- m.media-amazon.com — 3 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 44 blocked of 44 + +### espressif (192.168.68.127) +Location: Hallway; MAC: 28-84-85-85-10-BC; mapping: historical_snapshot. +Queries: 196; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 192 +- cdn.tactilityproject.org — 4 +Top blocked: +- none + +### espressif (192.168.68.105) +Location: Office; MAC: 14-C1-9F-D1-56-90; mapping: multiple_identities_seen. +Queries: 129; blocked: 1; block rate: 0.78%; unique domains: 25. + +Top visited (not blocked): +- time.cloudflare.com — 74 +- dogvgb9ujhybx.cloudfront.net — 7 +- m.media-amazon.com — 6 +- device-messaging-na.amazon.com — 5 +- todo-ta-g7g.amazon.com — 4 +- www.amazon.com — 3 +- gateway.icloud.com — 3 +- _dns.resolver.arpa — 3 +- us-se-courier-vs.push-apple.com.akadns.net — 2 +- s3.amazonaws.com — 2 +Top blocked: +- unagi-na.amazon.com — 1 blocked of 1 + +### Unknown device (192.168.68.129) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 84; blocked: 0; block rate: 0.00%; unique domains: 35. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 25 +- podcast.emmint.com — 4 +- gs-loc.apple.com — 4 +- _dns.resolver.arpa — 4 +- sas.pcms.apple.com — 2 +- mask.icloud.com — 2 +- mask.apple-dns.net — 2 +- mask-api.icloud.com — 2 +- itunes.apple.com — 2 +- gspe79-ssl.ls.apple.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.133) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 76; blocked: 3; block rate: 3.95%; unique domains: 38. + +Top visited (not blocked): +- ssl.gstatic.com — 6 +- mtalk.google.com — 4 +- www.youtube.com — 3 +- tokenservice.edge.x2p.facebook.net — 3 +- securetoken.googleapis.com — 3 +- peoplestack-pa.clients6.google.com — 3 +- mail.google.com — 3 +- lh3.googleusercontent.com — 3 +- chat.google.com — 3 +- captive.apple.com — 3 +Top blocked: +- nexus-websocket-a.intercom.io — 3 blocked of 3 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 64; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod-gateway.wdckeystone.com — 16 +- prod.wdckeystone.com — 10 +- prod-proxy.wdckeystone.com — 8 +- config.mycloud.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-fc14d21a5887149.wdckeystone.com — 4 +- prod-7c74fffc718ed01.wdckeystone.com — 4 +- google.com — 4 +- downloads.mycloud.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 53; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 50 +- litedev.us.ezvizlife.com — 2 +- pmsus1.ezvizlife.com — 1 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 49; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +- pmsus1.ezvizlife.com — 1 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 41; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- time.cloudflare.com — 24 +- api.bambulab.com — 13 +- or-cloud-upload-prod.s3.us-west-2.amazonaws.com — 4 +Top blocked: +- none + +### espressif (192.168.68.117) +Location: Office; MAC: 14-C1-9F-D1-A7-90; mapping: multiple_identities_seen. +Queries: 9; blocked: 0; block rate: 0.00%; unique domains: 5. + +Top visited (not blocked): +- time.cloudflare.com — 4 +- skyprtc-uw23.srv.ygles.com — 2 +- skyiot-uw23.srv.ygles.com — 1 +- ms-cam-u011.immedia-semi.com — 1 +- d-manp3.c-ij.com — 1 +Top blocked: +- none + +### phone (192.168.68.136) +Location: Hallway; MAC: 56-68-92-84-12-EE; mapping: historical_snapshot. +Queries: 8; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- us-se-courier-vs.push-apple.com.akadns.net — 2 +- _dns.resolver.arpa — 2 +- 7-courier2.push.apple.com — 2 +- 23-courier2.push.apple.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.132) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 8; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 8 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 2 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- local — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Google-Home-Mini (192.168.68.120) +Location: Hallway; MAC: E4-F0-42-2E-E0-4E; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- clients3.google.com — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-12.json b/projects/network_usage/reports/2026-09-12.json new file mode 100644 index 0000000..5cac6e0 --- /dev/null +++ b/projects/network_usage/reports/2026-09-12.json @@ -0,0 +1,4292 @@ +{ + "schema_version": 2, + "day": "2026-09-12", + "timezone": "America/New_York", + "generated_at": "2026-09-13T00:15:29.488044-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-12T00:00:00-04:00", + "end_local": "2026-09-13T00:00:00-04:00", + "start_epoch": 1789185600, + "end_epoch": 1789272000 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 14240 + }, + { + "status": 2, + "queries": 13101 + }, + { + "status": 3, + "queries": 30344 + }, + { + "status": 4, + "queries": 3926 + }, + { + "status": 5, + "queries": 86 + }, + { + "status": 9, + "queries": 1647 + }, + { + "status": 10, + "queries": 577 + }, + { + "status": 12, + "queries": 13 + }, + { + "status": 14, + "queries": 600 + }, + { + "status": 16, + "queries": 468 + }, + { + "status": 17, + "queries": 30473 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 46, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 18959, + "blocked_queries": 3637, + "block_rate_percent": 19.18, + "unique_domains": 841, + "last_query_epoch": 1789271417.8139458, + "deco": { + "ip": "192.168.68.108", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 1582, + "blocked": 0, + "allowed": 1582 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 914, + "blocked": 0, + "allowed": 914 + }, + { + "ip": "192.168.68.108", + "domain": "api.telegram.org", + "queries": 796, + "blocked": 0, + "allowed": 796 + }, + { + "ip": "192.168.68.108", + "domain": "www.google.com", + "queries": 673, + "blocked": 0, + "allowed": 673 + }, + { + "ip": "192.168.68.108", + "domain": "ssl.gstatic.com", + "queries": 401, + "blocked": 0, + "allowed": 401 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 399, + "blocked": 0, + "allowed": 399 + }, + { + "ip": "192.168.68.108", + "domain": "brain.reynafamily.com", + "queries": 296, + "blocked": 0, + "allowed": 296 + }, + { + "ip": "192.168.68.108", + "domain": "daily-cloudcode-pa.googleapis.com", + "queries": 284, + "blocked": 0, + "allowed": 284 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 274, + "blocked": 0, + "allowed": 274 + }, + { + "ip": "192.168.68.108", + "domain": "accounts.google.com", + "queries": 271, + "blocked": 0, + "allowed": 271 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 2784, + "blocked": 2780, + "allowed": 4 + }, + { + "ip": "192.168.68.108", + "domain": "x.com", + "queries": 95, + "blocked": 77, + "allowed": 18 + }, + { + "ip": "192.168.68.108", + "domain": "ogads-pa.clients6.google.com", + "queries": 74, + "blocked": 74, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "sentry.bga.li", + "queries": 72, + "blocked": 72, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi-na.amazon.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "ct.pinterest.com", + "queries": 40, + "blocked": 40, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "analytics.google.com", + "queries": 38, + "blocked": 38, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "bam.cell.nr-data.net", + "queries": 54, + "blocked": 35, + "allowed": 19 + }, + { + "ip": "192.168.68.108", + "domain": "sdk.iad-03.braze.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "s.amazon-adsystem.com", + "queries": 30, + "blocked": 30, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 11018, + "blocked_queries": 1538, + "block_rate_percent": 13.96, + "unique_domains": 1699, + "last_query_epoch": 1789265816.9432652, + "deco": { + "ip": "192.168.68.104", + "mac": "7C-E8-B1-B2-92-40", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-13T00:31:55.652970+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "mask.apple-dns.net", + "queries": 254, + "blocked": 0, + "allowed": 254 + }, + { + "ip": "192.168.68.104", + "domain": "outlook.office365.com", + "queries": 232, + "blocked": 0, + "allowed": 232 + }, + { + "ip": "192.168.68.104", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 121, + "blocked": 0, + "allowed": 121 + }, + { + "ip": "192.168.68.104", + "domain": "www.google.com", + "queries": 101, + "blocked": 0, + "allowed": 101 + }, + { + "ip": "192.168.68.104", + "domain": "imap.gmail.com", + "queries": 75, + "blocked": 0, + "allowed": 75 + }, + { + "ip": "192.168.68.104", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 74, + "blocked": 0, + "allowed": 74 + }, + { + "ip": "192.168.68.104", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 70, + "blocked": 0, + "allowed": 70 + }, + { + "ip": "192.168.68.104", + "domain": "ocsp2.apple.com", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.104", + "domain": "i.ytimg.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.104", + "domain": "chat.cdn.whatsapp.net", + "queries": 53, + "blocked": 0, + "allowed": 53 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "dit.whatsapp.net", + "queries": 265, + "blocked": 265, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "app-analytics-services.com", + "queries": 74, + "blocked": 74, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "cdn.doubleverify.com", + "queries": 49, + "blocked": 49, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "static.adsafeprotected.com", + "queries": 48, + "blocked": 48, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.truste.com", + "queries": 47, + "blocked": 47, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "g2.gumgum.com", + "queries": 44, + "blocked": 44, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ts.amazon-adsystem.com", + "queries": 29, + "blocked": 29, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "app-measurement.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "ad-events.flashtalking.com", + "queries": 27, + "blocked": 27, + "allowed": 0 + }, + { + "ip": "192.168.68.104", + "domain": "choices.trustarc.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.140", + "pihole_name": "", + "queries": 10414, + "blocked_queries": 1455, + "block_rate_percent": 13.97, + "unique_domains": 508, + "last_query_epoch": 1789271998.741418, + "deco": { + "ip": "192.168.68.140", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.140", + "domain": "ssl.gstatic.com", + "queries": 508, + "blocked": 0, + "allowed": 508 + }, + { + "ip": "192.168.68.140", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 347, + "blocked": 0, + "allowed": 347 + }, + { + "ip": "192.168.68.140", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 306, + "blocked": 0, + "allowed": 306 + }, + { + "ip": "192.168.68.140", + "domain": "www.google.com", + "queries": 298, + "blocked": 0, + "allowed": 298 + }, + { + "ip": "192.168.68.140", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 255, + "blocked": 0, + "allowed": 255 + }, + { + "ip": "192.168.68.140", + "domain": "play.google.com", + "queries": 223, + "blocked": 0, + "allowed": 223 + }, + { + "ip": "192.168.68.140", + "domain": "mask.apple-dns.net", + "queries": 222, + "blocked": 0, + "allowed": 222 + }, + { + "ip": "192.168.68.140", + "domain": "www.apple.com", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.140", + "domain": "waa-pa.clients6.google.com", + "queries": 194, + "blocked": 0, + "allowed": 194 + }, + { + "ip": "192.168.68.140", + "domain": "signaler-pa.clients6.google.com", + "queries": 184, + "blocked": 0, + "allowed": 184 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.140", + "domain": "dit.whatsapp.net", + "queries": 445, + "blocked": 443, + "allowed": 2 + }, + { + "ip": "192.168.68.140", + "domain": "word-telemetry.officeapps.live.com", + "queries": 310, + "blocked": 308, + "allowed": 2 + }, + { + "ip": "192.168.68.140", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 222, + "blocked": 222, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "bam.nr-data.net", + "queries": 212, + "blocked": 206, + "allowed": 6 + }, + { + "ip": "192.168.68.140", + "domain": "track.capitaloneshopping.com", + "queries": 62, + "blocked": 62, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "collector-pxu6b0qd2s.px-cloud.net", + "queries": 40, + "blocked": 40, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "analytics.google.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "sentry.bga.li", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "fbs.smoot.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "csp.withgoogle.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 10293, + "blocked_queries": 1292, + "block_rate_percent": 12.55, + "unique_domains": 712, + "last_query_epoch": 1789271786.0764914, + "deco": { + "ip": "192.168.68.111", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 486, + "blocked": 0, + "allowed": 486 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 456, + "blocked": 0, + "allowed": 456 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.office365.com", + "queries": 404, + "blocked": 0, + "allowed": 404 + }, + { + "ip": "192.168.68.111", + "domain": "chat.cdn.whatsapp.net", + "queries": 346, + "blocked": 0, + "allowed": 346 + }, + { + "ip": "192.168.68.111", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 326, + "blocked": 0, + "allowed": 326 + }, + { + "ip": "192.168.68.111", + "domain": "ts01-b.cloudsink.net", + "queries": 282, + "blocked": 0, + "allowed": 282 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 199, + "blocked": 0, + "allowed": 199 + }, + { + "ip": "192.168.68.111", + "domain": "whatsapp.com", + "queries": 154, + "blocked": 0, + "allowed": 154 + }, + { + "ip": "192.168.68.111", + "domain": "mdm-na2.mobileiron.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.111", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 130, + "blocked": 0, + "allowed": 130 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 508, + "blocked": 504, + "allowed": 4 + }, + { + "ip": "192.168.68.111", + "domain": "app-analytics-services.com", + "queries": 127, + "blocked": 125, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "app-measurement.com", + "queries": 73, + "blocked": 71, + "allowed": 2 + }, + { + "ip": "192.168.68.111", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 47, + "blocked": 47, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "sdk.iad-05.braze.com", + "queries": 45, + "blocked": 45, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "unagi.amazon.com", + "queries": 41, + "blocked": 41, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "unagi-na.amazon.com", + "queries": 40, + "blocked": 40, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "fls-na.amazon.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cdp.customer.io", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ca.iadsdk.apple.com", + "queries": 23, + "blocked": 21, + "allowed": 2 + } + ] + }, + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 8417, + "blocked_queries": 1672, + "block_rate_percent": 19.86, + "unique_domains": 269, + "last_query_epoch": 1789271389.0424807, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 237, + "blocked": 0, + "allowed": 237 + }, + { + "ip": "192.168.68.112", + "domain": "www.apple.com", + "queries": 143, + "blocked": 0, + "allowed": 143 + }, + { + "ip": "192.168.68.112", + "domain": "lrs.thefacebook.com", + "queries": 141, + "blocked": 0, + "allowed": 141 + }, + { + "ip": "192.168.68.112", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 141, + "blocked": 0, + "allowed": 141 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.fe2.apple-dns.net", + "queries": 137, + "blocked": 0, + "allowed": 137 + }, + { + "ip": "192.168.68.112", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 134, + "blocked": 0, + "allowed": 134 + }, + { + "ip": "192.168.68.112", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 132, + "blocked": 0, + "allowed": 132 + }, + { + "ip": "192.168.68.112", + "domain": "www.google.com", + "queries": 131, + "blocked": 0, + "allowed": 131 + }, + { + "ip": "192.168.68.112", + "domain": "mask.apple-dns.net", + "queries": 118, + "blocked": 0, + "allowed": 118 + }, + { + "ip": "192.168.68.112", + "domain": "apple.com", + "queries": 111, + "blocked": 0, + "allowed": 111 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 873, + "blocked": 287, + "allowed": 586 + }, + { + "ip": "192.168.68.112", + "domain": "dit.whatsapp.net", + "queries": 235, + "blocked": 233, + "allowed": 2 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 244, + "blocked": 198, + "allowed": 46 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 417, + "blocked": 176, + "allowed": 241 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 258, + "blocked": 146, + "allowed": 112 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 187, + "blocked": 83, + "allowed": 104 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 174, + "blocked": 74, + "allowed": 100 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.internalfb.com", + "queries": 147, + "blocked": 55, + "allowed": 92 + }, + { + "ip": "192.168.68.112", + "domain": "logging.internalmeta.com", + "queries": 130, + "blocked": 47, + "allowed": 83 + }, + { + "ip": "192.168.68.112", + "domain": "agentcloud-node-control-plane.playground.x2p.facebook.net", + "queries": 58, + "blocked": 44, + "allowed": 14 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 8351, + "blocked_queries": 3762, + "block_rate_percent": 45.05, + "unique_domains": 1312, + "last_query_epoch": 1789271904.0369918, + "deco": { + "ip": "192.168.68.105", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 211, + "blocked": 0, + "allowed": 211 + }, + { + "ip": "192.168.68.105", + "domain": "google.com", + "queries": 170, + "blocked": 0, + "allowed": 170 + }, + { + "ip": "192.168.68.105", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 65, + "blocked": 0, + "allowed": 65 + }, + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.105", + "domain": "opcode", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.105", + "domain": "yt3.ggpht.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.105", + "domain": "m.media-amazon.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.105", + "domain": "chat.cdn.whatsapp.net", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.105", + "domain": "abf4d3zfbtw7.na.api.amazonvideo.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "i.ytimg.com", + "queries": 150, + "blocked": 128, + "allowed": 22 + }, + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 108, + "blocked": 108, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "youtubei.googleapis.com", + "queries": 109, + "blocked": 101, + "allowed": 8 + }, + { + "ip": "192.168.68.105", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 82, + "blocked": 82, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "z-m-gateway.facebook.com", + "queries": 61, + "blocked": 59, + "allowed": 2 + }, + { + "ip": "192.168.68.105", + "domain": "redirector.googlevideo.com", + "queries": 64, + "blocked": 50, + "allowed": 14 + }, + { + "ip": "192.168.68.105", + "domain": "rr7---sn-bvvbaxivnuxqjvhj5nu-hp5s.googlevideo.com", + "queries": 45, + "blocked": 42, + "allowed": 3 + }, + { + "ip": "192.168.68.105", + "domain": "rr9---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 43, + "blocked": 42, + "allowed": 1 + }, + { + "ip": "192.168.68.105", + "domain": "rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 43, + "blocked": 39, + "allowed": 4 + }, + { + "ip": "192.168.68.105", + "domain": "rr9---sn-uhvcpax0n5-hjvk.googlevideo.com", + "queries": 42, + "blocked": 38, + "allowed": 4 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 4062, + "blocked_queries": 216, + "block_rate_percent": 5.32, + "unique_domains": 44, + "last_query_epoch": 1789271920.0380993, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 306, + "blocked": 0, + "allowed": 306 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 244, + "blocked": 0, + "allowed": 244 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 242, + "blocked": 0, + "allowed": 242 + }, + { + "ip": "192.168.68.110", + "domain": "dns.reynafamily.com", + "queries": 129, + "blocked": 0, + "allowed": 129 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.110", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 218, + "blocked": 216, + "allowed": 2 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 2924, + "blocked_queries": 2612, + "block_rate_percent": 89.33, + "unique_domains": 52, + "last_query_epoch": 1789271951.7077115, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "www.youtube.com", + "queries": 63, + "blocked": 0, + "allowed": 63 + }, + { + "ip": "192.168.68.114", + "domain": "googleads.g.doubleclick.net", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.114", + "domain": "i.ytimg.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.114", + "domain": "yt3.ggpht.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.114", + "domain": "rr7---sn-bvvbaxivnuxqjvhj5nu-hp5s.googlevideo.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.114", + "domain": "www.gstatic.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.114", + "domain": "rr5---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2376, + "blocked": 2366, + "allowed": 10 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 228, + "blocked": 222, + "allowed": 6 + }, + { + "ip": "192.168.68.114", + "domain": "cloudservices.roku.com", + "queries": 19, + "blocked": 18, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 2652, + "blocked_queries": 154, + "block_rate_percent": 5.81, + "unique_domains": 351, + "last_query_epoch": 1789271375.782268, + "deco": { + "ip": "192.168.68.131", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:41:26.394474+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "mask.apple-dns.net", + "queries": 291, + "blocked": 0, + "allowed": 291 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.v.aaplimg.com", + "queries": 164, + "blocked": 0, + "allowed": 164 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.awuse1.sbz.apple.com", + "queries": 97, + "blocked": 0, + "allowed": 97 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.131", + "domain": "iphone-ld.apple.com", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.131", + "domain": "ocsp2.apple.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.131", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 47, + "blocked": 0, + "allowed": 47 + }, + { + "ip": "192.168.68.131", + "domain": "mask.icloud.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.131", + "domain": "gdmf.apple.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.131", + "domain": "configuration.ls.apple.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.131", + "domain": "app-analytics-services.com", + "queries": 31, + "blocked": 31, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "fbs.smoot.apple.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "dit.whatsapp.net", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "crashlogs.whatsapp.net", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "youtubei.googleapis.com", + "queries": 22, + "blocked": 7, + "allowed": 15 + }, + { + "ip": "192.168.68.131", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-measurement.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "redirector.googlevideo.com", + "queries": 19, + "blocked": 3, + "allowed": 16 + }, + { + "ip": "192.168.68.131", + "domain": "rr3---sn-bvvbaxivnuxqjvhj5nu-hp5l.googlevideo.com", + "queries": 10, + "blocked": 3, + "allowed": 7 + } + ] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 2302, + "blocked_queries": 2232, + "block_rate_percent": 96.96, + "unique_domains": 15, + "last_query_epoch": 1789271322.66026, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "api-g2.rokutime.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 2010, + "blocked": 2008, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 198, + "blocked": 196, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 25, + "blocked": 25, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2170, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 18, + "last_query_epoch": 1789271937.276198, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1077, + "blocked": 0, + "allowed": 1077 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 796, + "blocked": 0, + "allowed": 796 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 182, + "blocked": 0, + "allowed": 182 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "ec2-89-192-235-227.compute-1.amazonaws.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "cluster0-shard-00-02.yyalx.mongodb.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.119", + "domain": "us.i.posthog.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2069, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1789271979.3572576, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1168, + "blocked": 0, + "allowed": 1168 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 541, + "blocked": 0, + "allowed": 541 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 201, + "blocked": 0, + "allowed": 201 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.126", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.126", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2041, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 14, + "last_query_epoch": 1789271979.3535554, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-13T03:31:21.705066+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1168, + "blocked": 0, + "allowed": 1168 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 541, + "blocked": 0, + "allowed": 541 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 176, + "blocked": 0, + "allowed": 176 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 94, + "blocked": 0, + "allowed": 94 + }, + { + "ip": "192.168.68.116", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.116", + "domain": "116.68.168.192.in-addr.arpa", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1606, + "blocked_queries": 448, + "block_rate_percent": 27.9, + "unique_domains": 206, + "last_query_epoch": 1789271456.0494113, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 154, + "blocked": 0, + "allowed": 154 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.107", + "domain": "m.sni.global.fastly.net", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.107", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 26, + "blocked": 0, + "allowed": 26 + }, + { + "ip": "192.168.68.107", + "domain": "xp.g.aaplimg.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "kt-prod.ess.apple.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 342, + "blocked": 342, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 61, + "blocked": 61, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cdp.cloud.unity3d.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "graph.facebook.com", + "queries": 4, + "blocked": 2, + "allowed": 2 + }, + { + "ip": "192.168.68.107", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 1462, + "blocked_queries": 1063, + "block_rate_percent": 72.71, + "unique_domains": 115, + "last_query_epoch": 1789217355.035681, + "deco": { + "ip": "192.168.68.133", + "mac": "36-5A-26-0E-C0-E8", + "hostname": "Likem-s-S22", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T12:41:19.016705+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "www.google.com", + "queries": 171, + "blocked": 0, + "allowed": 171 + }, + { + "ip": "192.168.68.133", + "domain": "web.facebook.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.133", + "domain": "connectivitycheck.gstatic.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.133", + "domain": "socialuserlocation.googleapis.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.133", + "domain": "www.gstatic.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "o1129.ingest.sentry.io", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "graph.facebook.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "dataman.youversionapi.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "api.getatoms.app", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.133", + "domain": "lh3.googleusercontent.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.133", + "domain": "mobile.events.data.microsoft.com", + "queries": 665, + "blocked": 665, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 274, + "blocked": 274, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "sdk.iad-01.braze.com", + "queries": 74, + "blocked": 74, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "stats-proto.pandora.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "stats.pandora.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "app-measurement.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "firebaselogging.googleapis.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "dls-udc.dqa.samsung.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "orsdls.di.runestone.samsung.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "collect.ureca-lab.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 835, + "blocked_queries": 95, + "block_rate_percent": 11.38, + "unique_domains": 196, + "last_query_epoch": 1789262513.1349368, + "deco": { + "ip": "192.168.68.106", + "mac": "5E-70-4F-3B-BE-09", + "hostname": "Alicia-2022-2", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-12T12:41:19.016705+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "time.cloudflare.com", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.106", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.106", + "domain": "mask-api.icloud.com", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.106", + "domain": "flag.lab.amplitude.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.106", + "domain": "get-bx.g.aaplimg.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.106", + "domain": "apple.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.apple.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 23, + "blocked": 23, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "sdk.iad-01.braze.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "csp.withgoogle.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "browser-intake-datadoghq.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "tr.iadsdk.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ogads-pa.clients6.google.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "in.appcenter.ms", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 780, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 49, + "last_query_epoch": 1789268400.6679459, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "140.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "131.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "127.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.118", + "pihole_name": "", + "queries": 694, + "blocked_queries": 114, + "block_rate_percent": 16.43, + "unique_domains": 56, + "last_query_epoch": 1789266680.1082692, + "deco": { + "ip": "192.168.68.118", + "mac": "24-FD-FA-03-53-0C", + "hostname": "Adolfo-i16", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-13T02:51:12.887839+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.118", + "domain": "aic-ngfts.lge.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.118", + "domain": "eu.tectonic.remarkable.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.118", + "domain": "tkacr613.alphonso.tv", + "queries": 43, + "blocked": 0, + "allowed": 43 + }, + { + "ip": "192.168.68.118", + "domain": "discovery.meethue.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.118", + "domain": "cdn-0.nflximg.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.118", + "domain": "us.lgtvsdp.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.118", + "domain": "nrdp51-appboot.netflix.com", + "queries": 33, + "blocked": 0, + "allowed": 33 + }, + { + "ip": "192.168.68.118", + "domain": "api-global.netflix.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.118", + "domain": "uiboot.netflix.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.118", + "domain": "ping.remarkable.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.118", + "domain": "us.rdx2.lgtvsdp.com", + "queries": 42, + "blocked": 42, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "ichnaea.netflix.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "customerevents.netflix.com", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.118", + "domain": "us.info.lgsmartad.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 668, + "blocked_queries": 18, + "block_rate_percent": 2.69, + "unique_domains": 110, + "last_query_epoch": 1789271857.5147548, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 49, + "blocked": 0, + "allowed": 49 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 37, + "blocked": 0, + "allowed": 37 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.g.aaplimg.com", + "queries": 20, + "blocked": 0, + "allowed": 20 + }, + { + "ip": "192.168.68.121", + "domain": "gsp-ssl.ls.apple.com", + "queries": 16, + "blocked": 0, + "allowed": 16 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.142", + "pihole_name": "", + "queries": 664, + "blocked_queries": 68, + "block_rate_percent": 10.24, + "unique_domains": 197, + "last_query_epoch": 1789216556.8855445, + "deco": { + "ip": "192.168.68.142", + "mac": "46-5B-26-9C-55-A1", + "hostname": "phone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T12:31:11.509830+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.142", + "domain": "chat.cdn.whatsapp.net", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.142", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.142", + "domain": "mask.apple-dns.net", + "queries": 21, + "blocked": 0, + "allowed": 21 + }, + { + "ip": "192.168.68.142", + "domain": "www.google.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.142", + "domain": "ocsp2.apple.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.142", + "domain": "cf-st.sc-cdn.net", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.142", + "domain": "scontent.cdninstagram.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.142", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.142", + "domain": "gs-loc-new.ls-apple.com.akadns.net", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.142", + "domain": "apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.142", + "domain": "dit.whatsapp.net", + "queries": 51, + "blocked": 51, + "allowed": 0 + }, + { + "ip": "192.168.68.142", + "domain": "app-analytics-v2.snapchat.com", + "queries": 9, + "blocked": 9, + "allowed": 0 + }, + { + "ip": "192.168.68.142", + "domain": "notes-analytics-events.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.142", + "domain": "measure.chase.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.142", + "domain": "c.go-mpulse.net", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.142", + "domain": "analytics.chase.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 596, + "blocked_queries": 46, + "block_rate_percent": 7.72, + "unique_domains": 175, + "last_query_epoch": 1789246236.808553, + "deco": { + "ip": "192.168.68.129", + "mac": "5C-62-5A-F5-3F-BA", + "hostname": "Adolfos-iPad", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-12T18:12:09.345460+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "mask.apple-dns.net", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.129", + "domain": "www.google.com", + "queries": 18, + "blocked": 0, + "allowed": 18 + }, + { + "ip": "192.168.68.129", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 15, + "blocked": 0, + "allowed": 15 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.129", + "domain": "imageproxy.youversionapi.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.129", + "domain": "guzzoni.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.129", + "domain": "chat.cdn.whatsapp.net", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.129", + "domain": "static.whatsapp.net", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.129", + "domain": "podcast.emmint.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.129", + "domain": "pancake.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.129", + "domain": "dit.whatsapp.net", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "graph.instagram.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "weather-analytics-events.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "sdk.iad-01.braze.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-analytics-services.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "app-measurement.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.129", + "domain": "adserver.pandora.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 485, + "blocked_queries": 4, + "block_rate_percent": 0.82, + "unique_domains": 89, + "last_query_epoch": 1789271880.3504963, + "deco": { + "ip": "192.168.68.117", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "time.cloudflare.com", + "queries": 102, + "blocked": 0, + "allowed": 102 + }, + { + "ip": "192.168.68.117", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 49, + "blocked": 0, + "allowed": 49 + }, + { + "ip": "192.168.68.117", + "domain": "lb._dns-sd._udp.2.0.0.192.in-addr.arpa", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.117", + "domain": "mask.apple-dns.net", + "queries": 19, + "blocked": 0, + "allowed": 19 + }, + { + "ip": "192.168.68.117", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.117", + "domain": "ocsp2.apple.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.117", + "domain": "gcs-us-00003.content-storage-upload.googleapis.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.117", + "domain": "api.whatsapp.net", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.117", + "domain": "_dns.resolver.arpa", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.117", + "domain": "www.google.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "dit.whatsapp.net", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 314, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789271986.8066053, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 314, + "blocked": 0, + "allowed": 314 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 281, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 69, + "last_query_epoch": 1789266779.359267, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "44-courier.push.apple.com", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.130", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.130", + "domain": "30-courier.push.apple.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.130", + "domain": "11.courier-push-apple.com.akadns.net", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.130", + "domain": "fs.outlook.mira.tm.svc.cloud.microsoft", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.130", + "domain": "shed.outlook.acdc.tm.svc.cloud.microsoft", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.130", + "domain": "7-courier.push.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.130", + "domain": "48-courier.push.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.130", + "domain": "43-courier.push.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.130", + "domain": "40.courier-push-apple.com.akadns.net", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 279, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789271956.811157, + "deco": { + "ip": "192.168.68.127", + "mac": "28-84-85-85-10-BC", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 279, + "blocked": 0, + "allowed": 279 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 227, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 46, + "last_query_epoch": 1789266660.3235304, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "130.68.168.192.in-addr.arpa", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.102", + "domain": "fs.outlook.mira.tm.svc.cloud.microsoft", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.102", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.102", + "domain": "api.telegram.org", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.102", + "domain": "shed.outlook.acdc.tm.svc.cloud.microsoft", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.102", + "domain": "e6858.dsce9.akamaiedge.net", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.102", + "domain": "contacts.fe2.apple-dns.net", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.102", + "domain": "www.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.102", + "domain": "weatherkit.apple.com.akadns.net", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.102", + "domain": "weatherkit.apple.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 181, + "blocked_queries": 42, + "block_rate_percent": 23.2, + "unique_domains": 8, + "last_query_epoch": 1789271447.3282008, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 80, + "blocked": 0, + "allowed": 80 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "7a6e3418b2b39c5852077c212b8b75b4.00155507000024.kindle-perf.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 44, + "blocked": 42, + "allowed": 2 + } + ] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 165, + "blocked_queries": 8, + "block_rate_percent": 4.85, + "unique_domains": 42, + "last_query_epoch": 1789271902.5191216, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 16, + "blocked": 0, + "allowed": 16 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "iphonesubmissions.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "gsp10-ssl.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.147", + "pihole_name": "", + "queries": 153, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789270224.7911007, + "deco": { + "ip": "192.168.68.147", + "mac": "14-C1-9F-D1-A7-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:31:21.705066+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.147", + "domain": "time.cloudflare.com", + "queries": 152, + "blocked": 0, + "allowed": 152 + }, + { + "ip": "192.168.68.147", + "domain": "cdn.tactilityproject.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 108, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 34, + "last_query_epoch": 1789216138.0743473, + "deco": { + "ip": "192.168.68.136", + "mac": "EE-BB-31-45-BA-10", + "hostname": "El-senor-iPhone-2", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T12:21:18.845063+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "mask.apple-dns.net", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.136", + "domain": "gdmf.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.136", + "domain": "_dns.resolver.arpa", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.136", + "domain": "mask.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "mask-api.icloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "mask-api.fe2.apple-dns.net", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "iphone-ld.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "gs-loc.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.136", + "domain": "gs-loc.ls-apple.com.akadns.net", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.136", + "domain": "netcts.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.144", + "pihole_name": "", + "queries": 70, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789239909.7595696, + "deco": { + "ip": "192.168.68.144", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T19:01:14.892920+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.144", + "domain": "time.cloudflare.com", + "queries": 70, + "blocked": 0, + "allowed": 70 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 54, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789270718.0579548, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.128", + "domain": "litedev.us.ezvizlife.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789270802.7218714, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 38, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 11, + "last_query_epoch": 1789262354.0264184, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-15ce3e0b80af991.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "download.wdc.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-cdd1bbf7f41b200.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "downloads.mycloud.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 27, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789271911.8071609, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:41:26.394474+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.151", + "pihole_name": "", + "queries": 19, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789226924.729641, + "deco": { + "ip": "192.168.68.151", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T15:31:26.958107+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.151", + "domain": "time.cloudflare.com", + "queries": 19, + "blocked": 0, + "allowed": 19 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.143", + "pihole_name": "", + "queries": 11, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 5, + "last_query_epoch": 1789214149.023267, + "deco": { + "ip": "192.168.68.143", + "mac": "CE-67-81-F7-BF-34", + "hostname": "Watch", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T11:42:03.349542+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.143", + "domain": "guzzoni.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.143", + "domain": "guzzoni-apple-com.v.aaplimg.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.143", + "domain": "captive.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.143", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.143", + "domain": "captive.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 11, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1789257413.8025448, + "deco": { + "ip": "192.168.68.132", + "mac": "6A-B7-42-EB-00-FE", + "hostname": "Watch", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T12:11:12.218709+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.132", + "domain": "captive.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.132", + "domain": "captive.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.132", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.141", + "pihole_name": "", + "queries": 7, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1789212718.517981, + "deco": { + "ip": "192.168.68.141", + "mac": "12-56-B3-70-09-39", + "hostname": "Watch", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T11:31:59.026360+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.141", + "domain": "this-url-does-not-exist-c0a1f90a-a752-4d9b-a4f8-9b7f585e5682.invalid", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.141", + "domain": "captive.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.141", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.141", + "domain": "captive.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.148", + "pihole_name": "", + "queries": 6, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789218442.5799558, + "deco": { + "ip": "192.168.68.148", + "mac": "7C-E8-B1-B2-92-40", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-12T13:01:20.350345+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.148", + "domain": "time.cloudflare.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.145", + "pihole_name": "", + "queries": 6, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789217188.1203659, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.145", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + } + ], + "top_blocked": [] + }, + { + "ip": "172.22.0.1", + "pihole_name": "cloud.reynafamily.com", + "queries": 4, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 2, + "last_query_epoch": 1789236485.4590695, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "172.22.0.1", + "domain": "portainer-io-assets.sfo2.digitaloceanspaces.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "172.22.0.1", + "domain": "api.github.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.149", + "pihole_name": "", + "queries": 3, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789217348.015698, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "192.168.68.149", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 1, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789260606.8911338, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T03:51:27.049306+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-12.md b/projects/network_usage/reports/2026-09-12.md new file mode 100644 index 0000000..433ab96 --- /dev/null +++ b/projects/network_usage/reports/2026-09-12.md @@ -0,0 +1,834 @@ +# Pi-hole DNS usage — 2026-09-12 + +Window: 2026-09-12T00:00:00-04:00 to 2026-09-13T00:00:00-04:00 (America/New_York) +Generated: 2026-09-13T00:15:29.488044-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.108 | Hallway | 18,959 | 3,637 | 19.18% | `whatsapp.com` | `dit.whatsapp.net` | +| espressif | 192.168.68.104 | Office | 11,018 | 1,538 | 13.96% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.140 | Hallway | 10,414 | 1,455 | 13.97% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| iPhone | 192.168.68.111 | Hallway | 10,293 | 1,292 | 12.55% | `ts01-b.csa.cloudsink.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.112 | Office | 8,417 | 1,672 | 19.86% | `internalfb.com` | `www.internalfb.com` | +| iPhone | 192.168.68.105 | Hallway | 8,351 | 3,762 | 45.05% | `www.google.com` | `i.ytimg.com` | +| adolforeynaserver | 192.168.68.110 | Office | 4,062 | 216 | 5.32% | `herdr.dev` | `telemetry.n8n.io` | +| 50CasitaTv | 192.168.68.114 | Casita | 2,924 | 2,612 | 89.33% | `www.youtube.com` | `scribe.logs.roku.com` | +| iPad | 192.168.68.131 | Hallway | 2,652 | 154 | 5.81% | `mask.apple-dns.net` | `app-analytics-services.com` | +| 50LivingRoom | 192.168.68.100 | Office | 2,302 | 2,232 | 96.96% | `api.roku.com` | `scribe.logs.roku.com` | +| emiserver | 192.168.68.119 | Office | 2,170 | 0 | 0.00% | `api.telegram.org` | `—` | +| aeropi5 | 192.168.68.126 | Office | 2,069 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,041 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPad-4 | 192.168.68.107 | WashMachine | 1,606 | 448 | 27.90% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| Likem-s-S22 | 192.168.68.133 | Casita | 1,462 | 1,063 | 72.71% | `www.google.com` | `mobile.events.data.microsoft.com` | +| Alicia-2022-2 | 192.168.68.106 | WashMachine | 835 | 95 | 11.38% | `time.cloudflare.com` | `app-analytics-services.com` | +| localhost | 127.0.0.1 | not mapped | 780 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| Adolfo-i16 | 192.168.68.118 | Hallway | 694 | 114 | 16.43% | `aic-ngfts.lge.com` | `us.rdx2.lgtvsdp.com` | +| iPhone | 192.168.68.121 | Hallway | 668 | 18 | 2.69% | `iphone-ld.apple.com` | `partiality.itunes.apple.com` | +| phone | 192.168.68.142 | Casita | 664 | 68 | 10.24% | `chat.cdn.whatsapp.net` | `dit.whatsapp.net` | +| Adolfos-iPad | 192.168.68.129 | Office | 596 | 46 | 7.72% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| espressif | 192.168.68.117 | Casita | 485 | 4 | 0.82% | `time.cloudflare.com` | `dit.whatsapp.net` | +| espressif | 192.168.68.113 | Office | 314 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 281 | 0 | 0.00% | `44-courier.push.apple.com` | `—` | +| espressif | 192.168.68.127 | Hallway | 279 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Mac | 192.168.68.102 | Office | 227 | 0 | 0.00% | `130.68.168.192.in-addr.arpa` | `—` | +| Amazon | 192.168.68.134 | Office | 181 | 42 | 23.20% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| Adolfos-iPhone | 192.168.68.150 | Office | 165 | 8 | 4.85% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| espressif | 192.168.68.147 | Office | 153 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| El-senor-iPhone-2 | 192.168.68.136 | Casita | 108 | 0 | 0.00% | `mask.apple-dns.net` | `—` | +| espressif | 192.168.68.144 | Office | 70 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 54 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 38 | 0 | 0.00% | `prod-proxy.wdckeystone.com` | `—` | +| iot_device | 192.168.68.135 | Office | 27 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| espressif | 192.168.68.151 | Study | 19 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Watch | 192.168.68.143 | Casita | 11 | 0 | 0.00% | `guzzoni.apple.com` | `—` | +| Watch | 192.168.68.132 | Casita | 11 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| Watch | 192.168.68.141 | Casita | 7 | 0 | 0.00% | `this-url-does-not-exist-c0a1f90a-a752-4d9b-a4f8-9b7f585e5682.invalid` | `—` | +| espressif | 192.168.68.148 | Office | 6 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Unknown device | 192.168.68.145 | not mapped | 6 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| cloud.reynafamily.com | 172.22.0.1 | not mapped | 4 | 0 | 0.00% | `portainer-io-assets.sfo2.digitaloceanspaces.com` | `—` | +| Unknown device | 192.168.68.149 | not mapped | 3 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 1 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | + +## Per-device detail + +### Mac (192.168.68.108) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: historical_snapshot. +Queries: 18,959; blocked: 3,637; block rate: 19.18%; unique domains: 841. + +Top visited (not blocked): +- whatsapp.com — 1,582 +- mmx-ds.cdn.whatsapp.net — 914 +- api.telegram.org — 796 +- www.google.com — 673 +- ssl.gstatic.com — 401 +- chatgpt.com — 399 +- brain.reynafamily.com — 296 +- daily-cloudcode-pa.googleapis.com — 284 +- mask.apple-dns.net — 274 +- accounts.google.com — 271 +Top blocked: +- dit.whatsapp.net — 2,780 blocked of 2,784 +- x.com — 77 blocked of 95 +- ogads-pa.clients6.google.com — 74 blocked of 74 +- sentry.bga.li — 72 blocked of 72 +- unagi-na.amazon.com — 46 blocked of 46 +- ct.pinterest.com — 40 blocked of 40 +- analytics.google.com — 38 blocked of 38 +- bam.cell.nr-data.net — 35 blocked of 54 +- sdk.iad-03.braze.com — 34 blocked of 34 +- s.amazon-adsystem.com — 30 blocked of 30 + +### espressif (192.168.68.104) +Location: Office; MAC: 7C-E8-B1-B2-92-40; mapping: multiple_identities_seen. +Queries: 11,018; blocked: 1,538; block rate: 13.96%; unique domains: 1,699. + +Top visited (not blocked): +- mask.apple-dns.net — 254 +- outlook.office365.com — 232 +- mmx-ds.cdn.whatsapp.net — 121 +- www.google.com — 101 +- imap.gmail.com — 75 +- bag-cdn.itunes-apple.com.akadns.net — 74 +- atm.outlook.mira.tm.svc.cloud.microsoft — 70 +- ocsp2.apple.com — 60 +- i.ytimg.com — 54 +- chat.cdn.whatsapp.net — 53 +Top blocked: +- dit.whatsapp.net — 265 blocked of 265 +- app-analytics-services.com — 74 blocked of 74 +- cdn.doubleverify.com — 49 blocked of 49 +- static.adsafeprotected.com — 48 blocked of 48 +- choices.truste.com — 47 blocked of 47 +- g2.gumgum.com — 44 blocked of 44 +- ts.amazon-adsystem.com — 29 blocked of 29 +- app-measurement.com — 28 blocked of 28 +- ad-events.flashtalking.com — 27 blocked of 27 +- choices.trustarc.com — 24 blocked of 24 + +### Mac (192.168.68.140) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 10,414; blocked: 1,455; block rate: 13.97%; unique domains: 508. + +Top visited (not blocked): +- ssl.gstatic.com — 508 +- usc-word-edit.officeapps.live.com — 347 +- optimizationguide-pa.googleapis.com — 306 +- www.google.com — 298 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 255 +- play.google.com — 223 +- mask.apple-dns.net — 222 +- www.apple.com — 204 +- waa-pa.clients6.google.com — 194 +- signaler-pa.clients6.google.com — 184 +Top blocked: +- dit.whatsapp.net — 443 blocked of 445 +- word-telemetry.officeapps.live.com — 308 blocked of 310 +- excel-telemetry.officeapps.live.com — 222 blocked of 222 +- bam.nr-data.net — 206 blocked of 212 +- track.capitaloneshopping.com — 62 blocked of 62 +- collector-pxu6b0qd2s.px-cloud.net — 40 blocked of 40 +- analytics.google.com — 24 blocked of 24 +- sentry.bga.li — 16 blocked of 16 +- fbs.smoot.apple.com — 12 blocked of 12 +- csp.withgoogle.com — 12 blocked of 12 + +### iPhone (192.168.68.111) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 10,293; blocked: 1,292; block rate: 12.55%; unique domains: 712. + +Top visited (not blocked): +- ts01-b.csa.cloudsink.net — 486 +- mask.apple-dns.net — 456 +- outlook.office365.com — 404 +- chat.cdn.whatsapp.net — 346 +- mmx-ds.cdn.whatsapp.net — 326 +- ts01-b.cloudsink.net — 282 +- www.google.com — 199 +- whatsapp.com — 154 +- mdm-na2.mobileiron.com — 146 +- oauthaccountmanager.googleapis.com — 130 +Top blocked: +- dit.whatsapp.net — 504 blocked of 508 +- app-analytics-services.com — 125 blocked of 127 +- app-measurement.com — 71 blocked of 73 +- firebaselogging-pa.googleapis.com — 47 blocked of 47 +- sdk.iad-05.braze.com — 45 blocked of 45 +- unagi.amazon.com — 41 blocked of 41 +- unagi-na.amazon.com — 40 blocked of 40 +- fls-na.amazon.com — 32 blocked of 32 +- cdp.customer.io — 22 blocked of 22 +- ca.iadsdk.apple.com — 21 blocked of 23 + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 8,417; blocked: 1,672; block rate: 19.86%; unique domains: 269. + +Top visited (not blocked): +- internalfb.com — 237 +- www.apple.com — 143 +- lrs.thefacebook.com — 141 +- api.apple-cloudkit.fe2.apple-dns.net — 141 +- gateway.fe2.apple-dns.net — 137 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 134 +- 1.courier-push-apple.com.akadns.net — 132 +- www.google.com — 131 +- mask.apple-dns.net — 118 +- apple.com — 111 +Top blocked: +- www.internalfb.com — 287 blocked of 873 +- dit.whatsapp.net — 233 blocked of 235 +- tokenservice.edge.x2p.facebook.net — 198 blocked of 244 +- graph.facebook.com — 176 blocked of 417 +- graph.prod.facebook.com — 146 blocked of 258 +- www.facebook.com — 83 blocked of 187 +- interngraph.internmc.facebook.com — 74 blocked of 174 +- gateway.internalfb.com — 55 blocked of 147 +- logging.internalmeta.com — 47 blocked of 130 +- agentcloud-node-control-plane.playground.x2p.facebook.net — 44 blocked of 58 + +### iPhone (192.168.68.105) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: multiple_identities_seen. +Queries: 8,351; blocked: 3,762; block rate: 45.05%; unique domains: 1,312. + +Top visited (not blocked): +- www.google.com — 211 +- google.com — 170 +- mmx-ds.cdn.whatsapp.net — 65 +- mask.apple-dns.net — 53 +- outlook.office365.com — 44 +- opcode — 33 +- yt3.ggpht.com — 29 +- m.media-amazon.com — 27 +- chat.cdn.whatsapp.net — 26 +- abf4d3zfbtw7.na.api.amazonvideo.com — 24 +Top blocked: +- i.ytimg.com — 128 blocked of 150 +- dit.whatsapp.net — 108 blocked of 108 +- youtubei.googleapis.com — 101 blocked of 109 +- mobile.pipe.aria.microsoft.com — 82 blocked of 82 +- z-m-gateway.facebook.com — 59 blocked of 61 +- redirector.googlevideo.com — 50 blocked of 64 +- rr7---sn-bvvbaxivnuxqjvhj5nu-hp5s.googlevideo.com — 42 blocked of 45 +- rr9---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 42 blocked of 43 +- rr4---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 39 blocked of 43 +- rr9---sn-uhvcpax0n5-hjvk.googlevideo.com — 38 blocked of 42 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 4,062; blocked: 216; block rate: 5.32%; unique domains: 44. + +Top visited (not blocked): +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- adolforeynaserver — 306 +- acme-v02.api.letsencrypt.org — 244 +- acme-staging-v02.api.letsencrypt.org — 242 +- dns.reynafamily.com — 129 +- ph.n8n.io — 114 +- version.goauthentik.io — 48 +- api.github.com — 48 +- version.immich.cloud — 24 +Top blocked: +- telemetry.n8n.io — 216 blocked of 218 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 2,924; blocked: 2,612; block rate: 89.33%; unique domains: 52. + +Top visited (not blocked): +- www.youtube.com — 63 +- googleads.g.doubleclick.net — 33 +- i.ytimg.com — 30 +- api.roku.com — 28 +- themes-service.sr.roku.com — 24 +- mediaservices.cdn-apple.com — 18 +- yt3.ggpht.com — 12 +- rr7---sn-bvvbaxivnuxqjvhj5nu-hp5s.googlevideo.com — 6 +- www.gstatic.com — 4 +- rr5---sn-bvvbaxivnuxqjvhj5nu-hp5e.googlevideo.com — 4 +Top blocked: +- scribe.logs.roku.com — 2,366 blocked of 2,376 +- liberty.logs.roku.com — 222 blocked of 228 +- cloudservices.roku.com — 18 blocked of 19 +- display.ravm.tv — 4 blocked of 4 +- identity.ads.roku.com — 2 blocked of 2 + +### iPad (192.168.68.131) +Location: Hallway; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 2,652; blocked: 154; block rate: 5.81%; unique domains: 351. + +Top visited (not blocked): +- mask.apple-dns.net — 291 +- sps-media.v.aaplimg.com — 164 +- sps-media.awuse1.sbz.apple.com — 97 +- _dns.resolver.arpa — 59 +- iphone-ld.apple.com — 58 +- ocsp2.apple.com — 56 +- iphone-ld.g.aaplimg.com — 47 +- mask.icloud.com — 42 +- gdmf.apple.com — 42 +- configuration.ls.apple.com — 40 +Top blocked: +- app-analytics-services.com — 31 blocked of 31 +- fbs.smoot.apple.com — 24 blocked of 24 +- dit.whatsapp.net — 20 blocked of 20 +- crashlogs.whatsapp.net — 8 blocked of 8 +- youtubei.googleapis.com — 7 blocked of 22 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- app-measurement.com — 6 blocked of 6 +- redirector.googlevideo.com — 3 blocked of 19 +- rr3---sn-bvvbaxivnuxqjvhj5nu-hp5l.googlevideo.com — 3 blocked of 10 + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 2,302; blocked: 2,232; block rate: 96.96%; unique domains: 15. + +Top visited (not blocked): +- api.roku.com — 27 +- themes-service.sr.roku.com — 24 +- api2.sr.roku.com — 5 +- configsvc.cs.roku.com — 3 +- mediaservices.cdn-apple.com — 2 +- sw-update.cs.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- austin.sb.roku.com — 1 +- api-g2.rokutime.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,008 blocked of 2,010 +- liberty.logs.roku.com — 196 blocked of 198 +- cloudservices.roku.com — 25 blocked of 25 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,170; blocked: 0; block rate: 0.00%; unique domains: 18. + +Top visited (not blocked): +- api.telegram.org — 1,077 +- chatgpt.com — 796 +- herdr.dev — 182 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- ec2-89-192-235-227.compute-1.amazonaws.com — 11 +- api.snapcraft.io — 8 +- motd.ubuntu.com — 4 +- cluster0-shard-00-02.yyalx.mongodb.net — 4 +- us.i.posthog.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,069; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,168 +- chatgpt.com — 541 +- herdr.dev — 201 +- cloud.reynafamily.com — 94 +- 126.68.168.192.in-addr.arpa — 18 +- 116.68.168.192.in-addr.arpa — 17 +- api.snapcraft.io — 12 +- cdn.fwupd.org — 10 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: multiple_identities_seen. +Queries: 2,041; blocked: 0; block rate: 0.00%; unique domains: 14. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,168 +- chatgpt.com — 541 +- herdr.dev — 176 +- cloud.reynafamily.com — 94 +- 126.68.168.192.in-addr.arpa — 18 +- 116.68.168.192.in-addr.arpa — 17 +- api.snapcraft.io — 12 +- cdn.fwupd.org — 6 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +Top blocked: +- none + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,606; blocked: 448; block rate: 27.90%; unique domains: 206. + +Top visited (not blocked): +- mask.apple-dns.net — 154 +- _dns.resolver.arpa — 52 +- m.sni.global.fastly.net — 50 +- mask.icloud.com — 40 +- ocsp2.apple.com — 38 +- bag.itunes.apple.com — 28 +- ocsp2.g.aaplimg.com — 27 +- bag-cdn.itunes-apple.com.akadns.net — 26 +- xp.g.aaplimg.com — 22 +- kt-prod.ess.apple.com — 18 +Top blocked: +- sdk.iad-01.braze.com — 342 blocked of 342 +- app-measurement.com — 61 blocked of 61 +- cdp.cloud.unity3d.com — 11 blocked of 11 +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- iadsdk.apple.com — 4 blocked of 4 +- firebaselogging-pa.googleapis.com — 4 blocked of 4 +- banner.youversionapi.com — 4 blocked of 4 +- graph.facebook.com — 2 blocked of 4 +- fbs.smoot.apple.com — 2 blocked of 2 + +### Likem-s-S22 (192.168.68.133) +Location: Casita; MAC: 36-5A-26-0E-C0-E8; mapping: historical_snapshot. +Queries: 1,462; blocked: 1,063; block rate: 72.71%; unique domains: 115. + +Top visited (not blocked): +- www.google.com — 171 +- web.facebook.com — 17 +- connectivitycheck.gstatic.com — 14 +- socialuserlocation.googleapis.com — 7 +- www.gstatic.com — 6 +- o1129.ingest.sentry.io — 6 +- graph.facebook.com — 6 +- dataman.youversionapi.com — 6 +- api.getatoms.app — 6 +- lh3.googleusercontent.com — 5 +Top blocked: +- mobile.events.data.microsoft.com — 665 blocked of 665 +- mobile.pipe.aria.microsoft.com — 274 blocked of 274 +- sdk.iad-01.braze.com — 74 blocked of 74 +- stats-proto.pandora.com — 19 blocked of 19 +- stats.pandora.com — 18 blocked of 18 +- app-measurement.com — 7 blocked of 7 +- firebaselogging.googleapis.com — 2 blocked of 2 +- dls-udc.dqa.samsung.com — 2 blocked of 2 +- orsdls.di.runestone.samsung.com — 1 blocked of 1 +- collect.ureca-lab.com — 1 blocked of 1 + +### Alicia-2022-2 (192.168.68.106) +Location: WashMachine; MAC: 5E-70-4F-3B-BE-09; mapping: multiple_identities_seen. +Queries: 835; blocked: 95; block rate: 11.38%; unique domains: 196. + +Top visited (not blocked): +- time.cloudflare.com — 55 +- ms-cam-u011.immedia-semi.com — 33 +- mmx-ds.cdn.whatsapp.net — 31 +- www.google.com — 25 +- mask.apple-dns.net — 25 +- mask-api.icloud.com — 13 +- flag.lab.amplitude.com — 12 +- get-bx.g.aaplimg.com — 11 +- apple.com — 11 +- ocsp2.apple.com — 10 +Top blocked: +- app-analytics-services.com — 32 blocked of 32 +- app-measurement.com — 23 blocked of 23 +- dit.whatsapp.net — 19 blocked of 19 +- sdk.iad-01.braze.com — 8 blocked of 8 +- csp.withgoogle.com — 4 blocked of 4 +- browser-intake-datadoghq.com — 3 blocked of 3 +- tr.iadsdk.apple.com — 2 blocked of 2 +- ogads-pa.clients6.google.com — 2 blocked of 2 +- in.appcenter.ms — 2 blocked of 2 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 780; blocked: 0; block rate: 0.00%; unique domains: 49. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 140.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 131.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 127.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### Adolfo-i16 (192.168.68.118) +Location: Hallway; MAC: 24-FD-FA-03-53-0C; mapping: multiple_identities_seen. +Queries: 694; blocked: 114; block rate: 16.43%; unique domains: 56. + +Top visited (not blocked): +- aic-ngfts.lge.com — 56 +- eu.tectonic.remarkable.com — 44 +- tkacr613.alphonso.tv — 43 +- discovery.meethue.com — 34 +- cdn-0.nflximg.com — 34 +- us.lgtvsdp.com — 33 +- nrdp51-appboot.netflix.com — 33 +- api-global.netflix.com — 32 +- uiboot.netflix.com — 30 +- ping.remarkable.com — 28 +Top blocked: +- us.rdx2.lgtvsdp.com — 42 blocked of 42 +- ichnaea.netflix.com — 34 blocked of 34 +- customerevents.netflix.com — 34 blocked of 34 +- us.info.lgsmartad.com — 4 blocked of 4 + +### iPhone (192.168.68.121) +Location: Hallway; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 668; blocked: 18; block rate: 2.69%; unique domains: 110. + +Top visited (not blocked): +- iphone-ld.apple.com — 50 +- _dns.resolver.arpa — 49 +- ocsp2.apple.com — 44 +- iphone-ld.g.aaplimg.com — 37 +- www.subalert.com — 32 +- subalert.com — 27 +- mask.icloud.com — 24 +- mask.apple-dns.net — 22 +- ocsp2.g.aaplimg.com — 20 +- gsp-ssl.ls.apple.com — 16 +Top blocked: +- partiality.itunes.apple.com — 7 blocked of 7 +- cf.iadsdk.apple.com — 7 blocked of 7 +- fbs.smoot.apple.com — 2 blocked of 2 +- experiments.apple.com — 2 blocked of 2 + +### phone (192.168.68.142) +Location: Casita; MAC: 46-5B-26-9C-55-A1; mapping: historical_snapshot. +Queries: 664; blocked: 68; block rate: 10.24%; unique domains: 197. + +Top visited (not blocked): +- chat.cdn.whatsapp.net — 36 +- mmx-ds.cdn.whatsapp.net — 25 +- mask.apple-dns.net — 21 +- www.google.com — 18 +- ocsp2.apple.com — 12 +- cf-st.sc-cdn.net — 10 +- scontent.cdninstagram.com — 8 +- iphone-ld.g.aaplimg.com — 8 +- gs-loc-new.ls-apple.com.akadns.net — 8 +- apple.com — 8 +Top blocked: +- dit.whatsapp.net — 51 blocked of 51 +- app-analytics-v2.snapchat.com — 9 blocked of 9 +- notes-analytics-events.apple.com — 2 blocked of 2 +- measure.chase.com — 2 blocked of 2 +- c.go-mpulse.net — 2 blocked of 2 +- analytics.chase.com — 2 blocked of 2 + +### Adolfos-iPad (192.168.68.129) +Location: Office; MAC: 5C-62-5A-F5-3F-BA; mapping: multiple_identities_seen. +Queries: 596; blocked: 46; block rate: 7.72%; unique domains: 175. + +Top visited (not blocked): +- mask.apple-dns.net — 36 +- www.google.com — 18 +- mmx-ds.cdn.whatsapp.net — 15 +- _dns.resolver.arpa — 13 +- imageproxy.youversionapi.com — 8 +- guzzoni.apple.com — 8 +- chat.cdn.whatsapp.net — 8 +- static.whatsapp.net — 6 +- podcast.emmint.com — 6 +- pancake.apple.com — 6 +Top blocked: +- dit.whatsapp.net — 19 blocked of 19 +- graph.instagram.com — 7 blocked of 7 +- weather-analytics-events.apple.com — 6 blocked of 6 +- sdk.iad-01.braze.com — 6 blocked of 6 +- app-analytics-services.com — 4 blocked of 4 +- app-measurement.com — 2 blocked of 2 +- adserver.pandora.com — 2 blocked of 2 + +### espressif (192.168.68.117) +Location: Casita; MAC: 14-C1-9F-D1-56-90; mapping: multiple_identities_seen. +Queries: 485; blocked: 4; block rate: 0.82%; unique domains: 89. + +Top visited (not blocked): +- time.cloudflare.com — 102 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 49 +- lb._dns-sd._udp.2.0.0.192.in-addr.arpa — 46 +- mask.apple-dns.net — 19 +- mmx-ds.cdn.whatsapp.net — 11 +- ocsp2.apple.com — 10 +- gcs-us-00003.content-storage-upload.googleapis.com — 10 +- api.whatsapp.net — 9 +- _dns.resolver.arpa — 9 +- www.google.com — 8 +Top blocked: +- dit.whatsapp.net — 4 blocked of 4 + +### espressif (192.168.68.113) +Location: Office; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 314; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 314 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 281; blocked: 0; block rate: 0.00%; unique domains: 69. + +Top visited (not blocked): +- 44-courier.push.apple.com — 11 +- atm.outlook.mira.tm.svc.cloud.microsoft — 9 +- 30-courier.push.apple.com — 9 +- 11.courier-push-apple.com.akadns.net — 9 +- fs.outlook.mira.tm.svc.cloud.microsoft — 8 +- shed.outlook.acdc.tm.svc.cloud.microsoft — 7 +- 7-courier.push.apple.com — 6 +- 48-courier.push.apple.com — 6 +- 43-courier.push.apple.com — 6 +- 40.courier-push-apple.com.akadns.net — 6 +Top blocked: +- none + +### espressif (192.168.68.127) +Location: Hallway; MAC: 28-84-85-85-10-BC; mapping: historical_snapshot. +Queries: 279; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 279 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 227; blocked: 0; block rate: 0.00%; unique domains: 46. + +Top visited (not blocked): +- 130.68.168.192.in-addr.arpa — 30 +- fs.outlook.mira.tm.svc.cloud.microsoft — 22 +- atm.outlook.mira.tm.svc.cloud.microsoft — 12 +- api.telegram.org — 12 +- shed.outlook.acdc.tm.svc.cloud.microsoft — 10 +- e6858.dsce9.akamaiedge.net — 7 +- contacts.fe2.apple-dns.net — 7 +- www.apple.com — 6 +- weatherkit.apple.com.akadns.net — 6 +- weatherkit.apple.com — 6 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 181; blocked: 42; block rate: 23.20%; unique domains: 8. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 80 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 44 +- www.amazon.com — 6 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- 7a6e3418b2b39c5852077c212b8b75b4.00155507000024.kindle-perf.com — 2 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 42 blocked of 44 + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 165; blocked: 8; block rate: 4.85%; unique domains: 42. + +Top visited (not blocked): +- time-ios.apple.com — 36 +- gateway.icloud.com — 17 +- gateway.fe2.apple-dns.net — 16 +- ocsp.apple.com — 9 +- gsp64-ssl.ls.apple.com — 9 +- gsp-ssl.ls.apple.com — 8 +- p189-keyvalueservice.icloud.com — 4 +- iphonesubmissions.apple.com — 4 +- gsp10-ssl.apple.com — 4 +- xp.apple.com — 3 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### espressif (192.168.68.147) +Location: Office; MAC: 14-C1-9F-D1-A7-90; mapping: historical_snapshot. +Queries: 153; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 152 +- cdn.tactilityproject.org — 1 +Top blocked: +- none + +### El-senor-iPhone-2 (192.168.68.136) +Location: Casita; MAC: EE-BB-31-45-BA-10; mapping: historical_snapshot. +Queries: 108; blocked: 0; block rate: 0.00%; unique domains: 34. + +Top visited (not blocked): +- mask.apple-dns.net — 34 +- gdmf.apple.com — 7 +- _dns.resolver.arpa — 6 +- mask.icloud.com — 4 +- mask-api.icloud.com — 4 +- mask-api.fe2.apple-dns.net — 4 +- iphone-ld.apple.com — 4 +- gs-loc.apple.com — 4 +- gs-loc.ls-apple.com.akadns.net — 3 +- netcts.cdn-apple.com — 2 +Top blocked: +- none + +### espressif (192.168.68.144) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: historical_snapshot. +Queries: 70; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 70 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 54; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 52 +- litedev.us.ezvizlife.com — 2 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 38; blocked: 0; block rate: 0.00%; unique domains: 11. + +Top visited (not blocked): +- prod-proxy.wdckeystone.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod.wdckeystone.com — 4 +- prod-15ce3e0b80af991.wdckeystone.com — 4 +- google.com — 4 +- download.wdc.com — 4 +- prod-gateway.wdckeystone.com — 2 +- prod-cdd1bbf7f41b200.wdckeystone.com — 2 +- downloads.mycloud.com — 2 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 27; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- time.cloudflare.com — 25 +- api.bambulab.com — 2 +Top blocked: +- none + +### espressif (192.168.68.151) +Location: Study; MAC: 14-C1-9F-D1-56-90; mapping: historical_snapshot. +Queries: 19; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 19 +Top blocked: +- none + +### Watch (192.168.68.143) +Location: Casita; MAC: CE-67-81-F7-BF-34; mapping: historical_snapshot. +Queries: 11; blocked: 0; block rate: 0.00%; unique domains: 5. + +Top visited (not blocked): +- guzzoni.apple.com — 4 +- guzzoni-apple-com.v.aaplimg.com — 2 +- captive.apple.com — 2 +- _dns.resolver.arpa — 2 +- captive.g.aaplimg.com — 1 +Top blocked: +- none + +### Watch (192.168.68.132) +Location: Casita; MAC: 6A-B7-42-EB-00-FE; mapping: historical_snapshot. +Queries: 11; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 7 +- captive.apple.com — 2 +- captive.g.aaplimg.com — 1 +- _dns.resolver.arpa — 1 +Top blocked: +- none + +### Watch (192.168.68.141) +Location: Casita; MAC: 12-56-B3-70-09-39; mapping: historical_snapshot. +Queries: 7; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- this-url-does-not-exist-c0a1f90a-a752-4d9b-a4f8-9b7f585e5682.invalid — 2 +- captive.apple.com — 2 +- _dns.resolver.arpa — 2 +- captive.g.aaplimg.com — 1 +Top blocked: +- none + +### espressif (192.168.68.148) +Location: Office; MAC: 7C-E8-B1-B2-92-40; mapping: historical_snapshot. +Queries: 6; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 6 +Top blocked: +- none + +### Unknown device (192.168.68.145) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 6; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 6 +Top blocked: +- none + +### cloud.reynafamily.com (172.22.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 4; blocked: 0; block rate: 0.00%; unique domains: 2. + +Top visited (not blocked): +- portainer-io-assets.sfo2.digitaloceanspaces.com — 2 +- api.github.com — 2 +Top blocked: +- none + +### Unknown device (192.168.68.149) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 3; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 3 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 1; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 1 +Top blocked: +- none + diff --git a/projects/network_usage/reports/2026-09-13.json b/projects/network_usage/reports/2026-09-13.json new file mode 100644 index 0000000..0c026cd --- /dev/null +++ b/projects/network_usage/reports/2026-09-13.json @@ -0,0 +1,3854 @@ +{ + "schema_version": 2, + "day": "2026-09-13", + "timezone": "America/New_York", + "generated_at": "2026-09-14T00:15:22.862787-04:00", + "deco_mapping_source": "historical Deco snapshots plus live fallback", + "window": { + "start_local": "2026-09-13T00:00:00-04:00", + "end_local": "2026-09-14T00:00:00-04:00", + "start_epoch": 1789272000, + "end_epoch": 1789358400 + }, + "pihole": { + "server": "adolforeyna@192.168.68.110", + "database": "/home/adolforeyna/pihole/etc-pihole/pihole-FTL.db", + "blocked_statuses": [ + 1, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 18 + ], + "status_names": { + "1": "gravity", + "4": "regex", + "5": "denylist", + "6": "external-blocked-ip", + "7": "external-blocked-null", + "8": "external-blocked-nxra", + "9": "gravity-cname", + "10": "regex-cname", + "11": "denylist-cname", + "18": "external-blocked-ede15" + }, + "status_counts": [ + { + "status": 1, + "queries": 12536 + }, + { + "status": 2, + "queries": 9507 + }, + { + "status": 3, + "queries": 26135 + }, + { + "status": 4, + "queries": 815 + }, + { + "status": 5, + "queries": 8 + }, + { + "status": 9, + "queries": 2449 + }, + { + "status": 10, + "queries": 430 + }, + { + "status": 12, + "queries": 8 + }, + { + "status": 14, + "queries": 796 + }, + { + "status": 16, + "queries": 454 + }, + { + "status": 17, + "queries": 24931 + } + ] + }, + "storage": { + "database": "/Users/adolforeyna/brain/projects/network_usage/network_usage.sqlite3", + "historical_snapshot_client_ips": 41, + "live_deco_client_count": 0 + }, + "deco_live_client_count": 0, + "devices": [ + { + "ip": "192.168.68.140", + "pihole_name": "", + "queries": 9776, + "blocked_queries": 1711, + "block_rate_percent": 17.5, + "unique_domains": 404, + "last_query_epoch": 1789358015.0814555, + "deco": { + "ip": "192.168.68.140", + "mac": "0E-A4-E4-20-5C-1C", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.140", + "domain": "ssl.gstatic.com", + "queries": 530, + "blocked": 0, + "allowed": 530 + }, + { + "ip": "192.168.68.140", + "domain": "usc-word-edit.officeapps.live.com", + "queries": 378, + "blocked": 0, + "allowed": 378 + }, + { + "ip": "192.168.68.140", + "domain": "optimizationguide-pa.googleapis.com", + "queries": 326, + "blocked": 0, + "allowed": 326 + }, + { + "ip": "192.168.68.140", + "domain": "www.google.com", + "queries": 301, + "blocked": 0, + "allowed": 301 + }, + { + "ip": "192.168.68.140", + "domain": "waa-pa.clients6.google.com", + "queries": 222, + "blocked": 0, + "allowed": 222 + }, + { + "ip": "192.168.68.140", + "domain": "play.google.com", + "queries": 217, + "blocked": 0, + "allowed": 217 + }, + { + "ip": "192.168.68.140", + "domain": "signaler-pa.clients6.google.com", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.140", + "domain": "oauth.officeapps.live.com", + "queries": 177, + "blocked": 0, + "allowed": 177 + }, + { + "ip": "192.168.68.140", + "domain": "www.apple.com", + "queries": 164, + "blocked": 0, + "allowed": 164 + }, + { + "ip": "192.168.68.140", + "domain": "common.online.office.com", + "queries": 159, + "blocked": 0, + "allowed": 159 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.140", + "domain": "dit.whatsapp.net", + "queries": 653, + "blocked": 653, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "word-telemetry.officeapps.live.com", + "queries": 352, + "blocked": 352, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "excel-telemetry.officeapps.live.com", + "queries": 254, + "blocked": 254, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "sentry.bga.li", + "queries": 86, + "blocked": 86, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "www.youtube.com", + "queries": 118, + "blocked": 80, + "allowed": 38 + }, + { + "ip": "192.168.68.140", + "domain": "analytics.google.com", + "queries": 66, + "blocked": 66, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "track.capitaloneshopping.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "ogads-pa.clients6.google.com", + "queries": 20, + "blocked": 20, + "allowed": 0 + }, + { + "ip": "192.168.68.140", + "domain": "bam.nr-data.net", + "queries": 42, + "blocked": 16, + "allowed": 26 + }, + { + "ip": "192.168.68.140", + "domain": "ct.pinterest.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.136", + "pihole_name": "", + "queries": 7625, + "blocked_queries": 3116, + "block_rate_percent": 40.87, + "unique_domains": 961, + "last_query_epoch": 1789343361.0249128, + "deco": { + "ip": "192.168.68.136", + "mac": "FE-F3-CD-99-F9-7E", + "hostname": "Gairy-s-S24-Ultra", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T23:41:35.044876+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.136", + "domain": "www.google.com", + "queries": 346, + "blocked": 0, + "allowed": 346 + }, + { + "ip": "192.168.68.136", + "domain": "graph.facebook.com", + "queries": 90, + "blocked": 0, + "allowed": 90 + }, + { + "ip": "192.168.68.136", + "domain": "beacons.gcp.gvt2.com", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.136", + "domain": "play.googleapis.com", + "queries": 53, + "blocked": 0, + "allowed": 53 + }, + { + "ip": "192.168.68.136", + "domain": "clientservices.googleapis.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.136", + "domain": "z-m-gateway.facebook.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.136", + "domain": "ssb-global.smartadserver.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.136", + "domain": "voilatile-pa.googleapis.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.136", + "domain": "ads.yieldmo.com", + "queries": 34, + "blocked": 0, + "allowed": 34 + }, + { + "ip": "192.168.68.136", + "domain": "m.media-amazon.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.136", + "domain": "mobile.events.data.microsoft.com", + "queries": 1269, + "blocked": 1269, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 1154, + "blocked": 1154, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "app-measurement.com", + "queries": 63, + "blocked": 63, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "t.poki.io", + "queries": 58, + "blocked": 58, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "api.assertcom.de", + "queries": 34, + "blocked": 34, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "ts.amazon-adsystem.com", + "queries": 26, + "blocked": 26, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "onetag-sys.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "unagi-na.amazon.com", + "queries": 23, + "blocked": 23, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "analytics.apis.mcafee.com", + "queries": 21, + "blocked": 21, + "allowed": 0 + }, + { + "ip": "192.168.68.136", + "domain": "id5-sync.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.111", + "pihole_name": "", + "queries": 7321, + "blocked_queries": 840, + "block_rate_percent": 11.47, + "unique_domains": 678, + "last_query_epoch": 1789358370.8787796, + "deco": { + "ip": "192.168.68.111", + "mac": "C6-37-18-E7-39-39", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:41:19.863523+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.111", + "domain": "ts01-b.csa.cloudsink.net", + "queries": 397, + "blocked": 0, + "allowed": 397 + }, + { + "ip": "192.168.68.111", + "domain": "mask.apple-dns.net", + "queries": 368, + "blocked": 0, + "allowed": 368 + }, + { + "ip": "192.168.68.111", + "domain": "outlook.office365.com", + "queries": 298, + "blocked": 0, + "allowed": 298 + }, + { + "ip": "192.168.68.111", + "domain": "ts01-b.cloudsink.net", + "queries": 208, + "blocked": 0, + "allowed": 208 + }, + { + "ip": "192.168.68.111", + "domain": "chat.cdn.whatsapp.net", + "queries": 196, + "blocked": 0, + "allowed": 196 + }, + { + "ip": "192.168.68.111", + "domain": "www.google.com", + "queries": 146, + "blocked": 0, + "allowed": 146 + }, + { + "ip": "192.168.68.111", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 144, + "blocked": 0, + "allowed": 144 + }, + { + "ip": "192.168.68.111", + "domain": "mdm-na2.mobileiron.com", + "queries": 128, + "blocked": 0, + "allowed": 128 + }, + { + "ip": "192.168.68.111", + "domain": "oauthaccountmanager.googleapis.com", + "queries": 91, + "blocked": 0, + "allowed": 91 + }, + { + "ip": "192.168.68.111", + "domain": "whatsapp.com", + "queries": 68, + "blocked": 0, + "allowed": 68 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.111", + "domain": "dit.whatsapp.net", + "queries": 330, + "blocked": 330, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-analytics-services.com", + "queries": 118, + "blocked": 118, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 112, + "blocked": 112, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "app-measurement.com", + "queries": 46, + "blocked": 46, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "fbs.smoot.apple.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "ca.iadsdk.apple.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "partiality.itunes.apple.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "cf.iadsdk.apple.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "unagi.amazon.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.111", + "domain": "unagi-na.amazon.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.112", + "pihole_name": "", + "queries": 7285, + "blocked_queries": 1279, + "block_rate_percent": 17.56, + "unique_domains": 274, + "last_query_epoch": 1789357955.4498582, + "deco": { + "ip": "192.168.68.112", + "mac": "06-79-91-73-6F-6A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.112", + "domain": "internalfb.com", + "queries": 161, + "blocked": 0, + "allowed": 161 + }, + { + "ip": "192.168.68.112", + "domain": "www.apple.com", + "queries": 133, + "blocked": 0, + "allowed": 133 + }, + { + "ip": "192.168.68.112", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 131, + "blocked": 0, + "allowed": 131 + }, + { + "ip": "192.168.68.112", + "domain": "lrs.thefacebook.com", + "queries": 130, + "blocked": 0, + "allowed": 130 + }, + { + "ip": "192.168.68.112", + "domain": "lb._dns-sd._udp.0.68.168.192.in-addr.arpa", + "queries": 130, + "blocked": 0, + "allowed": 130 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.fe2.apple-dns.net", + "queries": 125, + "blocked": 0, + "allowed": 125 + }, + { + "ip": "192.168.68.112", + "domain": "apple.com", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.112", + "domain": "mask.apple-dns.net", + "queries": 112, + "blocked": 0, + "allowed": 112 + }, + { + "ip": "192.168.68.112", + "domain": "www.google.com", + "queries": 110, + "blocked": 0, + "allowed": 110 + }, + { + "ip": "192.168.68.112", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 108, + "blocked": 0, + "allowed": 108 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.112", + "domain": "www.internalfb.com", + "queries": 685, + "blocked": 227, + "allowed": 458 + }, + { + "ip": "192.168.68.112", + "domain": "dit.whatsapp.net", + "queries": 168, + "blocked": 168, + "allowed": 0 + }, + { + "ip": "192.168.68.112", + "domain": "tokenservice.edge.x2p.facebook.net", + "queries": 212, + "blocked": 164, + "allowed": 48 + }, + { + "ip": "192.168.68.112", + "domain": "graph.facebook.com", + "queries": 328, + "blocked": 140, + "allowed": 188 + }, + { + "ip": "192.168.68.112", + "domain": "graph.prod.facebook.com", + "queries": 236, + "blocked": 130, + "allowed": 106 + }, + { + "ip": "192.168.68.112", + "domain": "interngraph.internmc.facebook.com", + "queries": 149, + "blocked": 58, + "allowed": 91 + }, + { + "ip": "192.168.68.112", + "domain": "gateway.internalfb.com", + "queries": 140, + "blocked": 48, + "allowed": 92 + }, + { + "ip": "192.168.68.112", + "domain": "www.facebook.com", + "queries": 143, + "blocked": 42, + "allowed": 101 + }, + { + "ip": "192.168.68.112", + "domain": "time1.facebook.com", + "queries": 76, + "blocked": 41, + "allowed": 35 + }, + { + "ip": "192.168.68.112", + "domain": "metamate.internalmeta.com", + "queries": 72, + "blocked": 29, + "allowed": 43 + } + ] + }, + { + "ip": "192.168.68.117", + "pihole_name": "", + "queries": 5108, + "blocked_queries": 533, + "block_rate_percent": 10.43, + "unique_domains": 362, + "last_query_epoch": 1789357953.6901717, + "deco": { + "ip": "192.168.68.117", + "mac": "82-A1-8E-D4-03-7A", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-14T03:41:19.863523+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.117", + "domain": "api.telegram.org", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.117", + "domain": "www.google.com", + "queries": 156, + "blocked": 0, + "allowed": 156 + }, + { + "ip": "192.168.68.117", + "domain": "chatgpt.com", + "queries": 134, + "blocked": 0, + "allowed": 134 + }, + { + "ip": "192.168.68.117", + "domain": "cloud.reynafamily.com", + "queries": 131, + "blocked": 0, + "allowed": 131 + }, + { + "ip": "192.168.68.117", + "domain": "chat.cdn.whatsapp.net", + "queries": 121, + "blocked": 0, + "allowed": 121 + }, + { + "ip": "192.168.68.117", + "domain": "daily-cloudcode-pa.googleapis.com", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.117", + "domain": "brain.reynafamily.com", + "queries": 120, + "blocked": 0, + "allowed": 120 + }, + { + "ip": "192.168.68.117", + "domain": "api.apple-cloudkit.fe2.apple-dns.net", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.117", + "domain": "1.courier-sandbox-push-apple.com.akadns.net", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.117", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 113, + "blocked": 0, + "allowed": 113 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.117", + "domain": "dit.whatsapp.net", + "queries": 418, + "blocked": 418, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "fbs.smoot.apple.com", + "queries": 18, + "blocked": 18, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "unagi-na.amazon.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "partiality.itunes.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "cf.iadsdk.apple.com", + "queries": 12, + "blocked": 12, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "event.bblmw.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "unagi.amazon.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "mobile.events.data.microsoft.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "fls-na.amazon.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.117", + "domain": "ogads-pa.clients6.google.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.106", + "pihole_name": "", + "queries": 4414, + "blocked_queries": 387, + "block_rate_percent": 8.77, + "unique_domains": 777, + "last_query_epoch": 1789358390.7809567, + "deco": { + "ip": "192.168.68.106", + "mac": "62-0F-E1-3A-4C-4B", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.106", + "domain": "mask.apple-dns.net", + "queries": 204, + "blocked": 0, + "allowed": 204 + }, + { + "ip": "192.168.68.106", + "domain": "outlook.office365.com", + "queries": 200, + "blocked": 0, + "allowed": 200 + }, + { + "ip": "192.168.68.106", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 119, + "blocked": 0, + "allowed": 119 + }, + { + "ip": "192.168.68.106", + "domain": "www.google.com", + "queries": 79, + "blocked": 0, + "allowed": 79 + }, + { + "ip": "192.168.68.106", + "domain": "chat.cdn.whatsapp.net", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.106", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.106", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.106", + "domain": "imap.gmail.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.106", + "domain": "fs.outlook.mira.tm.svc.cloud.microsoft", + "queries": 40, + "blocked": 0, + "allowed": 40 + }, + { + "ip": "192.168.68.106", + "domain": "ocsp2.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.106", + "domain": "dit.whatsapp.net", + "queries": 102, + "blocked": 102, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-analytics-services.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "collector-pxuarm9b04.perimeterx.net", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ogads-pa.clients6.google.com", + "queries": 17, + "blocked": 17, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "app-measurement.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "analytics.google.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "sdk.iad-08.braze.com", + "queries": 8, + "blocked": 8, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "cdn.doubleverify.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "api.assertcom.de", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.106", + "domain": "ups.analytics.yahoo.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.110", + "pihole_name": "cloud.reynafamily.com", + "queries": 4299, + "blocked_queries": 224, + "block_rate_percent": 5.21, + "unique_domains": 38, + "last_query_epoch": 1789358365.0767446, + "deco": { + "ip": "192.168.68.110", + "mac": "18-60-24-78-DB-E8", + "hostname": "adolforeynaserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.110", + "domain": "herdr.dev", + "queries": 2016, + "blocked": 0, + "allowed": 2016 + }, + { + "ip": "192.168.68.110", + "domain": "media.reynafamily.com", + "queries": 570, + "blocked": 0, + "allowed": 570 + }, + { + "ip": "192.168.68.110", + "domain": "dns.reynafamily.com", + "queries": 312, + "blocked": 0, + "allowed": 312 + }, + { + "ip": "192.168.68.110", + "domain": "adolforeynaserver", + "queries": 296, + "blocked": 0, + "allowed": 296 + }, + { + "ip": "192.168.68.110", + "domain": "acme-v02.api.letsencrypt.org", + "queries": 248, + "blocked": 0, + "allowed": 248 + }, + { + "ip": "192.168.68.110", + "domain": "acme-staging-v02.api.letsencrypt.org", + "queries": 242, + "blocked": 0, + "allowed": 242 + }, + { + "ip": "192.168.68.110", + "domain": "ph.n8n.io", + "queries": 114, + "blocked": 0, + "allowed": 114 + }, + { + "ip": "192.168.68.110", + "domain": "cdn.fwupd.org", + "queries": 72, + "blocked": 0, + "allowed": 72 + }, + { + "ip": "192.168.68.110", + "domain": "api.github.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.110", + "domain": "version.goauthentik.io", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.110", + "domain": "telemetry.n8n.io", + "queries": 224, + "blocked": 224, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.105", + "pihole_name": "", + "queries": 4090, + "blocked_queries": 344, + "block_rate_percent": 8.41, + "unique_domains": 926, + "last_query_epoch": 1789343435.637613, + "deco": { + "ip": "192.168.68.105", + "mac": "F8-B9-5A-E0-78-52", + "hostname": "LGwebOSTV", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-14T02:41:08.065294+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.105", + "domain": "mask.apple-dns.net", + "queries": 140, + "blocked": 0, + "allowed": 140 + }, + { + "ip": "192.168.68.105", + "domain": "outlook.office365.com", + "queries": 124, + "blocked": 0, + "allowed": 124 + }, + { + "ip": "192.168.68.105", + "domain": "www.google.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.105", + "domain": "imap.gmail.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.105", + "domain": "gdmf.apple.com", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.105", + "domain": "bag-cdn.itunes-apple.com.akadns.net", + "queries": 38, + "blocked": 0, + "allowed": 38 + }, + { + "ip": "192.168.68.105", + "domain": "ocsp2.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.105", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 30, + "blocked": 0, + "allowed": 30 + }, + { + "ip": "192.168.68.105", + "domain": "ocsp2.g.aaplimg.com", + "queries": 29, + "blocked": 0, + "allowed": 29 + }, + { + "ip": "192.168.68.105", + "domain": "google.com", + "queries": 28, + "blocked": 0, + "allowed": 28 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.105", + "domain": "us.rdx2.lgtvsdp.com", + "queries": 29, + "blocked": 29, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "g2.gumgum.com", + "queries": 15, + "blocked": 15, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "us.info.lgsmartad.com", + "queries": 14, + "blocked": 14, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "dit.whatsapp.net", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "cdn.doubleverify.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "app-analytics-services.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "trk.pinterest.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "choices.truste.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.105", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.131", + "pihole_name": "", + "queries": 3796, + "blocked_queries": 412, + "block_rate_percent": 10.85, + "unique_domains": 416, + "last_query_epoch": 1789358280.7822104, + "deco": { + "ip": "192.168.68.131", + "mac": "A2-10-C6-24-C2-0A", + "hostname": "iPad", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.131", + "domain": "mask.apple-dns.net", + "queries": 258, + "blocked": 0, + "allowed": 258 + }, + { + "ip": "192.168.68.131", + "domain": "whatsapp.com", + "queries": 221, + "blocked": 0, + "allowed": 221 + }, + { + "ip": "192.168.68.131", + "domain": "abf4d3zfbtw7.na.api.amazonvideo.com", + "queries": 198, + "blocked": 0, + "allowed": 198 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.v.aaplimg.com", + "queries": 184, + "blocked": 0, + "allowed": 184 + }, + { + "ip": "192.168.68.131", + "domain": "9171f26e5c1fc238b809d6415de0a3ac9a002131321c2231afe4d46dcb0ab14.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 143, + "blocked": 0, + "allowed": 143 + }, + { + "ip": "192.168.68.131", + "domain": "sps-media.awuse1.sbz.apple.com", + "queries": 101, + "blocked": 0, + "allowed": 101 + }, + { + "ip": "192.168.68.131", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 87, + "blocked": 0, + "allowed": 87 + }, + { + "ip": "192.168.68.131", + "domain": "us-east-1-3.telemetry.insights.video.a2z.com", + "queries": 71, + "blocked": 0, + "allowed": 71 + }, + { + "ip": "192.168.68.131", + "domain": "abq9rtydqf28.na.api.amazonvideo.com", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.131", + "domain": "_dns.resolver.arpa", + "queries": 59, + "blocked": 0, + "allowed": 59 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.131", + "domain": "dit.whatsapp.net", + "queries": 313, + "blocked": 313, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "fbs.smoot.apple.com", + "queries": 22, + "blocked": 22, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "youtubei.googleapis.com", + "queries": 15, + "blocked": 7, + "allowed": 8 + }, + { + "ip": "192.168.68.131", + "domain": "unagi.amazon.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-analytics-services.com", + "queries": 7, + "blocked": 7, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "app-measurement.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "unagi-na.amazon.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.131", + "domain": "fls-na.amazon.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.133", + "pihole_name": "", + "queries": 3413, + "blocked_queries": 1622, + "block_rate_percent": 47.52, + "unique_domains": 224, + "last_query_epoch": 1789338677.410213, + "deco": { + "ip": "192.168.68.133", + "mac": "CE-72-39-0E-BF-1B", + "hostname": "Christina-s-Note10", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T22:31:42.592132+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.133", + "domain": "google.com", + "queries": 253, + "blocked": 0, + "allowed": 253 + }, + { + "ip": "192.168.68.133", + "domain": "graph.facebook.com", + "queries": 215, + "blocked": 0, + "allowed": 215 + }, + { + "ip": "192.168.68.133", + "domain": "www.google.com", + "queries": 211, + "blocked": 0, + "allowed": 211 + }, + { + "ip": "192.168.68.133", + "domain": "api.segment.io", + "queries": 71, + "blocked": 0, + "allowed": 71 + }, + { + "ip": "192.168.68.133", + "domain": "doordash.mobile.prod.cmtelematics.com", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.133", + "domain": "opcode", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.133", + "domain": "216.58.202.4.in-addr.arpa", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.133", + "domain": "app.abcmouse.com", + "queries": 32, + "blocked": 0, + "allowed": 32 + }, + { + "ip": "192.168.68.133", + "domain": "api.aofl.com", + "queries": 31, + "blocked": 0, + "allowed": 31 + }, + { + "ip": "192.168.68.133", + "domain": "youtubei.googleapis.com", + "queries": 27, + "blocked": 0, + "allowed": 27 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.133", + "domain": "mobile.pipe.aria.microsoft.com", + "queries": 1040, + "blocked": 1040, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "iguazu.doordash.com", + "queries": 123, + "blocked": 123, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "otel-mobile.doordash.com", + "queries": 108, + "blocked": 108, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "stats-proto.pandora.com", + "queries": 78, + "blocked": 78, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "api.iterable.com", + "queries": 68, + "blocked": 68, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "observability.target.com", + "queries": 57, + "blocked": 57, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "stats.pandora.com", + "queries": 32, + "blocked": 32, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "unagi-na.amazon.com", + "queries": 16, + "blocked": 16, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "mobile.events.data.microsoft.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + }, + { + "ip": "192.168.68.133", + "domain": "firebaselogging.googleapis.com", + "queries": 10, + "blocked": 10, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.108", + "pihole_name": "", + "queries": 3258, + "blocked_queries": 461, + "block_rate_percent": 14.15, + "unique_domains": 182, + "last_query_epoch": 1789358202.1093624, + "deco": { + "ip": "192.168.68.108", + "mac": "14-C1-9F-D1-56-90", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-14T03:41:19.863523+00:00", + "mapping_identity_count": 3 + }, + "top_visited": [ + { + "ip": "192.168.68.108", + "domain": "whatsapp.com", + "queries": 218, + "blocked": 0, + "allowed": 218 + }, + { + "ip": "192.168.68.108", + "domain": "api.telegram.org", + "queries": 104, + "blocked": 0, + "allowed": 104 + }, + { + "ip": "192.168.68.108", + "domain": "cloud.reynafamily.com", + "queries": 92, + "blocked": 0, + "allowed": 92 + }, + { + "ip": "192.168.68.108", + "domain": "chatgpt.com", + "queries": 89, + "blocked": 0, + "allowed": 89 + }, + { + "ip": "192.168.68.108", + "domain": "mask.apple-dns.net", + "queries": 77, + "blocked": 0, + "allowed": 77 + }, + { + "ip": "192.168.68.108", + "domain": "antigravity-unleash.goog", + "queries": 68, + "blocked": 0, + "allowed": 68 + }, + { + "ip": "192.168.68.108", + "domain": "daily-cloudcode-pa.googleapis.com", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.108", + "domain": "ssl.gstatic.com", + "queries": 56, + "blocked": 0, + "allowed": 56 + }, + { + "ip": "192.168.68.108", + "domain": "mmx-ds.cdn.whatsapp.net", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.108", + "domain": "graph.whatsapp.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.108", + "domain": "dit.whatsapp.net", + "queries": 292, + "blocked": 292, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi-na.amazon.com", + "queries": 66, + "blocked": 66, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "unagi.amazon.com", + "queries": 64, + "blocked": 64, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "fbs.smoot.apple.com", + "queries": 36, + "blocked": 36, + "allowed": 0 + }, + { + "ip": "192.168.68.108", + "domain": "experiments.apple.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.114", + "pihole_name": "", + "queries": 2981, + "blocked_queries": 2915, + "block_rate_percent": 97.79, + "unique_domains": 11, + "last_query_epoch": 1789358349.6025977, + "deco": { + "ip": "192.168.68.114", + "mac": "DC-72-23-B1-13-BE", + "hostname": "50CasitaTv", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-E7-1C", + "linkedDecoName": "Casita", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.114", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "api.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.114", + "domain": "mediaservices.cdn-apple.com", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.114", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "longview.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.114", + "domain": "api2.sr.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.114", + "domain": "scribe.logs.roku.com", + "queries": 2720, + "blocked": 2720, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "liberty.logs.roku.com", + "queries": 192, + "blocked": 192, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.114", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.119", + "pihole_name": "", + "queries": 2333, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 19, + "last_query_epoch": 1789358278.247242, + "deco": { + "ip": "192.168.68.119", + "mac": "C8-5A-CF-0A-7A-A7", + "hostname": "emiserver", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.119", + "domain": "api.telegram.org", + "queries": 1065, + "blocked": 0, + "allowed": 1065 + }, + { + "ip": "192.168.68.119", + "domain": "chatgpt.com", + "queries": 912, + "blocked": 0, + "allowed": 912 + }, + { + "ip": "192.168.68.119", + "domain": "herdr.dev", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.119", + "domain": "cdn.fwupd.org", + "queries": 58, + "blocked": 0, + "allowed": 58 + }, + { + "ip": "192.168.68.119", + "domain": "version.goauthentik.io", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.119", + "domain": "version.immich.cloud", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.119", + "domain": "api.snapcraft.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.119", + "domain": "motd.ubuntu.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.119", + "domain": "security.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.119", + "domain": "esm.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.100", + "pihole_name": "", + "queries": 2268, + "blocked_queries": 2207, + "block_rate_percent": 97.31, + "unique_domains": 14, + "last_query_epoch": 1789358383.3965826, + "deco": { + "ip": "192.168.68.100", + "mac": "84-3E-1D-4F-4A-1D", + "hostname": "50LivingRoom", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.100", + "domain": "api.roku.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.100", + "domain": "themes-service.sr.roku.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.100", + "domain": "api2.sr.roku.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.100", + "domain": "mediaservices.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.100", + "domain": "sw-update.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "lat-services.api.data.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "hints.voice.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "configsvc.cs.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.100", + "domain": "austin.sb.roku.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.100", + "domain": "scribe.logs.roku.com", + "queries": 1990, + "blocked": 1990, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "liberty.logs.roku.com", + "queries": 190, + "blocked": 190, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "cloudservices.roku.com", + "queries": 24, + "blocked": 24, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "display.ravm.tv", + "queries": 2, + "blocked": 2, + "allowed": 0 + }, + { + "ip": "192.168.68.100", + "domain": "identity.ads.roku.com", + "queries": 1, + "blocked": 1, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.126", + "pihole_name": "", + "queries": 2048, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1789358379.3627908, + "deco": { + "ip": "192.168.68.126", + "mac": "2C-CF-67-95-2B-F8", + "hostname": "aeropi5", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.126", + "domain": "connectivity-check.ubuntu.com", + "queries": 1169, + "blocked": 0, + "allowed": 1169 + }, + { + "ip": "192.168.68.126", + "domain": "chatgpt.com", + "queries": 486, + "blocked": 0, + "allowed": 486 + }, + { + "ip": "192.168.68.126", + "domain": "herdr.dev", + "queries": 201, + "blocked": 0, + "allowed": 201 + }, + { + "ip": "192.168.68.126", + "domain": "cloud.reynafamily.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.126", + "domain": "cdn.fwupd.org", + "queries": 61, + "blocked": 0, + "allowed": 61 + }, + { + "ip": "192.168.68.126", + "domain": "api.snapcraft.io", + "queries": 13, + "blocked": 0, + "allowed": 13 + }, + { + "ip": "192.168.68.126", + "domain": "git.reynafamily.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.126", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.126", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.116", + "pihole_name": "", + "queries": 2038, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 16, + "last_query_epoch": 1789358379.358321, + "deco": { + "ip": "192.168.68.116", + "mac": "2C-CF-67-95-2B-F9", + "hostname": "aeropi5", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T01:52:02.292700+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.116", + "domain": "connectivity-check.ubuntu.com", + "queries": 1169, + "blocked": 0, + "allowed": 1169 + }, + { + "ip": "192.168.68.116", + "domain": "chatgpt.com", + "queries": 486, + "blocked": 0, + "allowed": 486 + }, + { + "ip": "192.168.68.116", + "domain": "herdr.dev", + "queries": 190, + "blocked": 0, + "allowed": 190 + }, + { + "ip": "192.168.68.116", + "domain": "cloud.reynafamily.com", + "queries": 96, + "blocked": 0, + "allowed": 96 + }, + { + "ip": "192.168.68.116", + "domain": "cdn.fwupd.org", + "queries": 65, + "blocked": 0, + "allowed": 65 + }, + { + "ip": "192.168.68.116", + "domain": "api.snapcraft.io", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.116", + "domain": "git.reynafamily.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.116", + "domain": "ports.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "packages.microsoft.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.116", + "domain": "motd.ubuntu.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.121", + "pihole_name": "", + "queries": 1783, + "blocked_queries": 70, + "block_rate_percent": 3.93, + "unique_domains": 186, + "last_query_epoch": 1789357708.7777314, + "deco": { + "ip": "192.168.68.121", + "mac": "A6-B0-E1-AF-2F-75", + "hostname": "iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.121", + "domain": "mask.apple-dns.net", + "queries": 150, + "blocked": 0, + "allowed": 150 + }, + { + "ip": "192.168.68.121", + "domain": "iphone-ld.apple.com", + "queries": 68, + "blocked": 0, + "allowed": 68 + }, + { + "ip": "192.168.68.121", + "domain": "ocsp2.apple.com", + "queries": 62, + "blocked": 0, + "allowed": 62 + }, + { + "ip": "192.168.68.121", + "domain": "_dns.resolver.arpa", + "queries": 59, + "blocked": 0, + "allowed": 59 + }, + { + "ip": "192.168.68.121", + "domain": "www.subalert.com", + "queries": 54, + "blocked": 0, + "allowed": 54 + }, + { + "ip": "192.168.68.121", + "domain": "swallow.apple.com", + "queries": 52, + "blocked": 0, + "allowed": 52 + }, + { + "ip": "192.168.68.121", + "domain": "configuration.ls.apple.com", + "queries": 50, + "blocked": 0, + "allowed": 50 + }, + { + "ip": "192.168.68.121", + "domain": "mask.icloud.com", + "queries": 48, + "blocked": 0, + "allowed": 48 + }, + { + "ip": "192.168.68.121", + "domain": "gdmf.apple.com", + "queries": 46, + "blocked": 0, + "allowed": 46 + }, + { + "ip": "192.168.68.121", + "domain": "subalert.com", + "queries": 39, + "blocked": 0, + "allowed": 39 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.121", + "domain": "fbs.smoot.apple.com", + "queries": 56, + "blocked": 56, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "partiality.itunes.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "cf.iadsdk.apple.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.121", + "domain": "experiments.apple.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.107", + "pihole_name": "", + "queries": 1390, + "blocked_queries": 76, + "block_rate_percent": 5.47, + "unique_domains": 281, + "last_query_epoch": 1789357785.1215441, + "deco": { + "ip": "192.168.68.107", + "mac": "DA-77-C3-CE-4D-01", + "hostname": "iPad-4", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.107", + "domain": "mask.apple-dns.net", + "queries": 170, + "blocked": 0, + "allowed": 170 + }, + { + "ip": "192.168.68.107", + "domain": "_dns.resolver.arpa", + "queries": 55, + "blocked": 0, + "allowed": 55 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.apple.com", + "queries": 44, + "blocked": 0, + "allowed": 44 + }, + { + "ip": "192.168.68.107", + "domain": "mask.icloud.com", + "queries": 42, + "blocked": 0, + "allowed": 42 + }, + { + "ip": "192.168.68.107", + "domain": "ocsp2.g.aaplimg.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.107", + "domain": "gdmf.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.107", + "domain": "bag.itunes.apple.com", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "192.168.68.107", + "domain": "xp.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "init-p01md.apple.com", + "queries": 22, + "blocked": 0, + "allowed": 22 + }, + { + "ip": "192.168.68.107", + "domain": "xp.g.aaplimg.com", + "queries": 21, + "blocked": 0, + "allowed": 21 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.107", + "domain": "sdk.iad-01.braze.com", + "queries": 19, + "blocked": 19, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-measurement.com", + "queries": 11, + "blocked": 11, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "firebaselogging-pa.googleapis.com", + "queries": 6, + "blocked": 6, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cdp.cloud.unity3d.com", + "queries": 5, + "blocked": 5, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "banner.youversionapi.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "app-analytics-services.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "config.inmobi.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "cl.canva.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + }, + { + "ip": "192.168.68.107", + "domain": "graph.facebook.com", + "queries": 4, + "blocked": 2, + "allowed": 2 + } + ] + }, + { + "ip": "127.0.0.1", + "pihole_name": "localhost", + "queries": 712, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 44, + "last_query_epoch": 1789354801.4120717, + "deco": { + "hostname": null, + "mac": null, + "linkedDecoName": null, + "active": false, + "mapping_status": "not_in_snapshot_or_live_deco_list" + }, + "top_visited": [ + { + "ip": "127.0.0.1", + "domain": "8.8.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "4.4.8.8.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "150.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "140.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "135.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "134.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "131.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "128.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "127.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + }, + { + "ip": "127.0.0.1", + "domain": "126.68.168.192.in-addr.arpa", + "queries": 24, + "blocked": 0, + "allowed": 24 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.104", + "pihole_name": "", + "queries": 437, + "blocked_queries": 3, + "block_rate_percent": 0.69, + "unique_domains": 21, + "last_query_epoch": 1789358257.927353, + "deco": { + "ip": "192.168.68.104", + "mac": "14-C1-9F-D0-5C-5C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "multiple_identities_seen", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00", + "mapping_identity_count": 2 + }, + "top_visited": [ + { + "ip": "192.168.68.104", + "domain": "time.cloudflare.com", + "queries": 297, + "blocked": 0, + "allowed": 297 + }, + { + "ip": "192.168.68.104", + "domain": "todo-ta-g7g.amazon.com", + "queries": 76, + "blocked": 0, + "allowed": 76 + }, + { + "ip": "192.168.68.104", + "domain": "device-messaging-na.amazon.com", + "queries": 21, + "blocked": 0, + "allowed": 21 + }, + { + "ip": "192.168.68.104", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 11, + "blocked": 0, + "allowed": 11 + }, + { + "ip": "192.168.68.104", + "domain": "s3.amazonaws.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "podcast.emmint.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.104", + "domain": "pins.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "dcape-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "api.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.104", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.104", + "domain": "unagi-na.amazon.com", + "queries": 3, + "blocked": 3, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.127", + "pihole_name": "macm1.reynafamily.com", + "queries": 358, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789358094.8289528, + "deco": { + "ip": "192.168.68.127", + "mac": "28-84-85-85-10-BC", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.127", + "domain": "time.cloudflare.com", + "queries": 358, + "blocked": 0, + "allowed": 358 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.118", + "pihole_name": "", + "queries": 307, + "blocked_queries": 2, + "block_rate_percent": 0.65, + "unique_domains": 57, + "last_query_epoch": 1789350383.6461327, + "deco": { + "ip": "192.168.68.118", + "mac": "EE-BB-31-45-BA-10", + "hostname": "El-senor-iPhone-2", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T21:11:16.642967+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.118", + "domain": "mask.apple-dns.net", + "queries": 103, + "blocked": 0, + "allowed": 103 + }, + { + "ip": "192.168.68.118", + "domain": "mesu-cdn.origin-apple.com.akadns.net", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.118", + "domain": "_dns.resolver.arpa", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.118", + "domain": "mesu.g.aaplimg.com", + "queries": 12, + "blocked": 0, + "allowed": 12 + }, + { + "ip": "192.168.68.118", + "domain": "mask-api.icloud.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.118", + "domain": "gdmf.apple.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.118", + "domain": "mask-api.fe2.apple-dns.net", + "queries": 9, + "blocked": 0, + "allowed": 9 + }, + { + "ip": "192.168.68.118", + "domain": "mesu.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.118", + "domain": "iphone-ld.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.118", + "domain": "a1744.dscw154.akamai.net", + "queries": 7, + "blocked": 0, + "allowed": 7 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.118", + "domain": "ic3.events.data.microsoft.com", + "queries": 2, + "blocked": 2, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.113", + "pihole_name": "", + "queries": 261, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789358118.7305844, + "deco": { + "ip": "192.168.68.113", + "mac": "14-C1-9F-D0-59-1C", + "hostname": "espressif", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.113", + "domain": "time.cloudflare.com", + "queries": 261, + "blocked": 0, + "allowed": 261 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.134", + "pihole_name": "", + "queries": 172, + "blocked_queries": 28, + "block_rate_percent": 16.28, + "unique_domains": 10, + "last_query_epoch": 1789357551.4186828, + "deco": { + "ip": "192.168.68.134", + "mac": "A0-D2-B1-A6-EC-BD", + "hostname": "Amazon", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.134", + "domain": "dogvgb9ujhybx.cloudfront.net", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.134", + "domain": "ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com", + "queries": 60, + "blocked": 0, + "allowed": 60 + }, + { + "ip": "192.168.68.134", + "domain": "www.amazon.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.134", + "domain": "m.media-amazon.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.134", + "domain": "todo-ta-g7g.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "device-messaging-na.amazon.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.134", + "domain": "s3.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "s3-us-west-1.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.134", + "domain": "d18os95hu8sz6h.cloudfront.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.134", + "domain": "unagi-na.amazon.com", + "queries": 28, + "blocked": 28, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.132", + "pihole_name": "", + "queries": 162, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 41, + "last_query_epoch": 1789333833.7886858, + "deco": { + "ip": "192.168.68.132", + "mac": "22-95-36-9C-E1-45", + "hostname": "El-senor-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T21:11:16.642967+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.132", + "domain": "mask.apple-dns.net", + "queries": 67, + "blocked": 0, + "allowed": 67 + }, + { + "ip": "192.168.68.132", + "domain": "_dns.resolver.arpa", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.132", + "domain": "mask.icloud.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.132", + "domain": "iphone-ld.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.132", + "domain": "mask-api.icloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.132", + "domain": "iphone-ld.g.aaplimg.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.132", + "domain": "gdmf.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.132", + "domain": "xp.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.132", + "domain": "time.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.132", + "domain": "netcts.cdn-apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.150", + "pihole_name": "", + "queries": 155, + "blocked_queries": 8, + "block_rate_percent": 5.16, + "unique_domains": 36, + "last_query_epoch": 1789357134.2945428, + "deco": { + "ip": "192.168.68.150", + "mac": "30-35-AD-68-A3-AB", + "hostname": "Adolfos-iPhone", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.150", + "domain": "time-ios.apple.com", + "queries": 36, + "blocked": 0, + "allowed": 36 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.icloud.com", + "queries": 17, + "blocked": 0, + "allowed": 17 + }, + { + "ip": "192.168.68.150", + "domain": "gateway.fe2.apple-dns.net", + "queries": 14, + "blocked": 0, + "allowed": 14 + }, + { + "ip": "192.168.68.150", + "domain": "ocsp.apple.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.150", + "domain": "gsp64-ssl.ls.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.150", + "domain": "gsp-ssl.ls.apple.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.150", + "domain": "p189-keyvalueservice.icloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.150", + "domain": "bag.itunes.apple.com", + "queries": 5, + "blocked": 0, + "allowed": 5 + }, + { + "ip": "192.168.68.150", + "domain": "xp.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.150", + "domain": "mesu.apple.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [ + { + "ip": "192.168.68.150", + "domain": "partiality.itunes.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + }, + { + "ip": "192.168.68.150", + "domain": "cf.iadsdk.apple.com", + "queries": 4, + "blocked": 4, + "allowed": 0 + } + ] + }, + { + "ip": "192.168.68.137", + "pihole_name": "", + "queries": 54, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 13, + "last_query_epoch": 1789341758.9834073, + "deco": { + "ip": "192.168.68.137", + "mac": "00-00-C0-3C-B8-FF", + "hostname": "MyCloudEX2Ultra", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.137", + "domain": "prod-proxy.wdckeystone.com", + "queries": 10, + "blocked": 0, + "allowed": 10 + }, + { + "ip": "192.168.68.137", + "domain": "prod.wdckeystone.com", + "queries": 8, + "blocked": 0, + "allowed": 8 + }, + { + "ip": "192.168.68.137", + "domain": "config.mycloud.com", + "queries": 6, + "blocked": 0, + "allowed": 6 + }, + { + "ip": "192.168.68.137", + "domain": "time.windows.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "time.mycloud.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-gateway.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-701f05f7a9a5fda.wdckeystone.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "google.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.137", + "domain": "prod-fc14d21a5887149.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.137", + "domain": "prod-31cdfc8017b5028.wdckeystone.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.128", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789357233.4157584, + "deco": { + "ip": "192.168.68.128", + "mac": "80-9F-9B-45-9A-FF", + "hostname": "E31868152", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.128", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.125", + "pihole_name": "", + "queries": 48, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789357218.353657, + "deco": { + "ip": "192.168.68.125", + "mac": "C0-E7-BF-DD-C8-2A", + "hostname": "F49758774", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.125", + "domain": "0.amazon.pool.ntp.org", + "queries": 48, + "blocked": 0, + "allowed": 48 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.130", + "pihole_name": "", + "queries": 34, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 12, + "last_query_epoch": 1789354520.7844942, + "deco": { + "ip": "192.168.68.130", + "mac": "D0-11-E5-73-96-5A", + "hostname": "Mac-mini-M4", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.130", + "domain": "p146-contacts.icloud.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "atm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "acdcatm.outlook.mira.tm.svc.cloud.microsoft", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "7-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "41-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "39-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "38-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "34-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "26-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + }, + { + "ip": "192.168.68.130", + "domain": "25-courier.push.apple.com", + "queries": 3, + "blocked": 0, + "allowed": 3 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.135", + "pihole_name": "", + "queries": 31, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 4, + "last_query_epoch": 1789358312.6402335, + "deco": { + "ip": "192.168.68.135", + "mac": "A0-85-E3-FB-35-5C", + "hostname": "iot_device", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.135", + "domain": "time.cloudflare.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + }, + { + "ip": "192.168.68.135", + "domain": "api.bambulab.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.135", + "domain": "us-d-master-71spctnsfa8p5xvgkssa.iotcplatform.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.135", + "domain": "or-cloud-upload-prod.s3.us-west-2.amazonaws.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.142", + "pihole_name": "", + "queries": 25, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789332991.5615404, + "deco": { + "ip": "192.168.68.142", + "mac": "84-28-59-E8-42-80", + "hostname": "Blink-Device", + "connection": "wired", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-43-E0", + "linkedDecoName": "WashMachine", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T20:01:19.200804+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.142", + "domain": "ms-cam-u011.immedia-semi.com", + "queries": 25, + "blocked": 0, + "allowed": 25 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.141", + "pihole_name": "", + "queries": 15, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 3, + "last_query_epoch": 1789329294.8844001, + "deco": { + "ip": "192.168.68.141", + "mac": "F0-23-AE-27-E2-F6", + "hostname": "AMPAK Technology,Inc.", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "8C-86-DD-9A-37-D8", + "linkedDecoName": "Study", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T21:11:16.642967+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.141", + "domain": "connectivitycheck.gstatic.com", + "queries": 7, + "blocked": 0, + "allowed": 7 + }, + { + "ip": "192.168.68.141", + "domain": "device.supernote.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.141", + "domain": "device-wss-file.supernote.com", + "queries": 4, + "blocked": 0, + "allowed": 4 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.102", + "pihole_name": "", + "queries": 14, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 9, + "last_query_epoch": 1789354520.005582, + "deco": { + "ip": "192.168.68.102", + "mac": "5A-D2-AA-CB-96-08", + "hostname": "Mac", + "connection": "band5", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-CE-C8", + "linkedDecoName": "Office", + "linkedDecoRole": "master", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.102", + "domain": "130.68.168.192.in-addr.arpa", + "queries": 4, + "blocked": 0, + "allowed": 4 + }, + { + "ip": "192.168.68.102", + "domain": "wss-primary.slack.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "1.courier-push-apple.com.akadns.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.102", + "domain": "us-sandbox-courier-4.push-apple.com.akadns.net", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "slack.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "local", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "api.telegram.org", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "_dns.resolver.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.102", + "domain": "102.68.168.192.in-addr.arpa", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.129", + "pihole_name": "", + "queries": 8, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 5, + "last_query_epoch": 1789329621.8307204, + "deco": { + "ip": "192.168.68.129", + "mac": "12-56-B3-70-09-39", + "hostname": "Adolfos-iPad", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "C0-C9-E3-8C-8D-E8", + "linkedDecoName": "Hallway", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-13T20:31:19.278662+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.129", + "domain": "guzzoni.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "captive.apple.com", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "_dns.resolver.arpa", + "queries": 2, + "blocked": 0, + "allowed": 2 + }, + { + "ip": "192.168.68.129", + "domain": "guzzoni-apple-com.v.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + }, + { + "ip": "192.168.68.129", + "domain": "captive.g.aaplimg.com", + "queries": 1, + "blocked": 0, + "allowed": 1 + } + ], + "top_blocked": [] + }, + { + "ip": "192.168.68.139", + "pihole_name": "", + "queries": 2, + "blocked_queries": 0, + "block_rate_percent": 0.0, + "unique_domains": 1, + "last_query_epoch": 1789355932.347312, + "deco": { + "ip": "192.168.68.139", + "mac": "24-18-C6-B5-4A-DC", + "hostname": "FN-LINK", + "connection": "band2_4", + "interface": "main", + "active": true, + "linkedDecoMac": "6C-4C-BC-9D-2E-5C", + "linkedDecoName": "Barn", + "linkedDecoRole": "slave", + "mapping_status": "historical_snapshot", + "snapshot_captured_at": "2026-09-14T03:51:16.731348+00:00" + }, + "top_visited": [ + { + "ip": "192.168.68.139", + "domain": "portal-ww.ecouser.net", + "queries": 2, + "blocked": 0, + "allowed": 2 + } + ], + "top_blocked": [] + } + ] +} diff --git a/projects/network_usage/reports/2026-09-13.md b/projects/network_usage/reports/2026-09-13.md new file mode 100644 index 0000000..44674e9 --- /dev/null +++ b/projects/network_usage/reports/2026-09-13.md @@ -0,0 +1,727 @@ +# Pi-hole DNS usage — 2026-09-13 + +Window: 2026-09-13T00:00:00-04:00 to 2026-09-14T00:00:00-04:00 (America/New_York) +Generated: 2026-09-14T00:15:22.862787-04:00 +Pi-hole: adolforeyna@192.168.68.110 (FTL database, read-only) +Deco mapping source: historical Deco snapshots plus live fallback + +Blocked status codes counted: 1=gravity, 4=regex, 5=denylist, 6=external-blocked-ip, 7=external-blocked-null, 8=external-blocked-nxra, 9=gravity-cname, 10=regex-cname, 11=denylist-cname, 18=external-blocked-ede15 + +## Device summary + +| Device | IP | Deco/location | Queries | Blocked | Block rate | Top visited | Top blocked | +|---|---|---|---:|---:|---:|---|---| +| Mac | 192.168.68.140 | Hallway | 9,776 | 1,711 | 17.50% | `ssl.gstatic.com` | `dit.whatsapp.net` | +| Gairy-s-S24-Ultra | 192.168.68.136 | Hallway | 7,625 | 3,116 | 40.87% | `www.google.com` | `mobile.events.data.microsoft.com` | +| iPhone | 192.168.68.111 | Hallway | 7,321 | 840 | 11.47% | `ts01-b.csa.cloudsink.net` | `dit.whatsapp.net` | +| Mac | 192.168.68.112 | Office | 7,285 | 1,279 | 17.56% | `internalfb.com` | `www.internalfb.com` | +| Mac | 192.168.68.117 | Hallway | 5,108 | 533 | 10.43% | `api.telegram.org` | `dit.whatsapp.net` | +| iPhone | 192.168.68.106 | Hallway | 4,414 | 387 | 8.77% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| adolforeynaserver | 192.168.68.110 | Office | 4,299 | 224 | 5.21% | `herdr.dev` | `telemetry.n8n.io` | +| LGwebOSTV | 192.168.68.105 | Study | 4,090 | 344 | 8.41% | `mask.apple-dns.net` | `us.rdx2.lgtvsdp.com` | +| iPad | 192.168.68.131 | Hallway | 3,796 | 412 | 10.85% | `mask.apple-dns.net` | `dit.whatsapp.net` | +| Christina-s-Note10 | 192.168.68.133 | Study | 3,413 | 1,622 | 47.52% | `google.com` | `mobile.pipe.aria.microsoft.com` | +| espressif | 192.168.68.108 | Casita | 3,258 | 461 | 14.15% | `whatsapp.com` | `dit.whatsapp.net` | +| 50CasitaTv | 192.168.68.114 | Casita | 2,981 | 2,915 | 97.79% | `themes-service.sr.roku.com` | `scribe.logs.roku.com` | +| emiserver | 192.168.68.119 | Office | 2,333 | 0 | 0.00% | `api.telegram.org` | `—` | +| 50LivingRoom | 192.168.68.100 | Office | 2,268 | 2,207 | 97.31% | `api.roku.com` | `scribe.logs.roku.com` | +| aeropi5 | 192.168.68.126 | Office | 2,048 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| aeropi5 | 192.168.68.116 | Office | 2,038 | 0 | 0.00% | `connectivity-check.ubuntu.com` | `—` | +| iPhone | 192.168.68.121 | Hallway | 1,783 | 70 | 3.93% | `mask.apple-dns.net` | `fbs.smoot.apple.com` | +| iPad-4 | 192.168.68.107 | WashMachine | 1,390 | 76 | 5.47% | `mask.apple-dns.net` | `sdk.iad-01.braze.com` | +| localhost | 127.0.0.1 | not mapped | 712 | 0 | 0.00% | `8.8.8.8.in-addr.arpa` | `—` | +| espressif | 192.168.68.104 | Office | 437 | 3 | 0.69% | `time.cloudflare.com` | `unagi-na.amazon.com` | +| espressif | 192.168.68.127 | Office | 358 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| El-senor-iPhone-2 | 192.168.68.118 | Study | 307 | 2 | 0.65% | `mask.apple-dns.net` | `ic3.events.data.microsoft.com` | +| espressif | 192.168.68.113 | Office | 261 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Amazon | 192.168.68.134 | Office | 172 | 28 | 16.28% | `dogvgb9ujhybx.cloudfront.net` | `unagi-na.amazon.com` | +| El-senor-iPhone | 192.168.68.132 | Hallway | 162 | 0 | 0.00% | `mask.apple-dns.net` | `—` | +| Adolfos-iPhone | 192.168.68.150 | Office | 155 | 8 | 5.16% | `time-ios.apple.com` | `partiality.itunes.apple.com` | +| MyCloudEX2Ultra | 192.168.68.137 | Office | 54 | 0 | 0.00% | `prod-proxy.wdckeystone.com` | `—` | +| E31868152 | 192.168.68.128 | Barn | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| F49758774 | 192.168.68.125 | Hallway | 48 | 0 | 0.00% | `0.amazon.pool.ntp.org` | `—` | +| Mac-mini-M4 | 192.168.68.130 | Office | 34 | 0 | 0.00% | `p146-contacts.icloud.com` | `—` | +| iot_device | 192.168.68.135 | Office | 31 | 0 | 0.00% | `time.cloudflare.com` | `—` | +| Blink-Device | 192.168.68.142 | WashMachine | 25 | 0 | 0.00% | `ms-cam-u011.immedia-semi.com` | `—` | +| AMPAK Technology,Inc. | 192.168.68.141 | Study | 15 | 0 | 0.00% | `connectivitycheck.gstatic.com` | `—` | +| Mac | 192.168.68.102 | Office | 14 | 0 | 0.00% | `130.68.168.192.in-addr.arpa` | `—` | +| Adolfos-iPad | 192.168.68.129 | Hallway | 8 | 0 | 0.00% | `guzzoni.apple.com` | `—` | +| FN-LINK | 192.168.68.139 | Barn | 2 | 0 | 0.00% | `portal-ww.ecouser.net` | `—` | + +## Per-device detail + +### Mac (192.168.68.140) +Location: Hallway; MAC: 0E-A4-E4-20-5C-1C; mapping: historical_snapshot. +Queries: 9,776; blocked: 1,711; block rate: 17.50%; unique domains: 404. + +Top visited (not blocked): +- ssl.gstatic.com — 530 +- usc-word-edit.officeapps.live.com — 378 +- optimizationguide-pa.googleapis.com — 326 +- www.google.com — 301 +- waa-pa.clients6.google.com — 222 +- play.google.com — 217 +- signaler-pa.clients6.google.com — 204 +- oauth.officeapps.live.com — 177 +- www.apple.com — 164 +- common.online.office.com — 159 +Top blocked: +- dit.whatsapp.net — 653 blocked of 653 +- word-telemetry.officeapps.live.com — 352 blocked of 352 +- excel-telemetry.officeapps.live.com — 254 blocked of 254 +- sentry.bga.li — 86 blocked of 86 +- www.youtube.com — 80 blocked of 118 +- analytics.google.com — 66 blocked of 66 +- track.capitaloneshopping.com — 46 blocked of 46 +- ogads-pa.clients6.google.com — 20 blocked of 20 +- bam.nr-data.net — 16 blocked of 42 +- ct.pinterest.com — 12 blocked of 12 + +### Gairy-s-S24-Ultra (192.168.68.136) +Location: Hallway; MAC: FE-F3-CD-99-F9-7E; mapping: historical_snapshot. +Queries: 7,625; blocked: 3,116; block rate: 40.87%; unique domains: 961. + +Top visited (not blocked): +- www.google.com — 346 +- graph.facebook.com — 90 +- beacons.gcp.gvt2.com — 67 +- play.googleapis.com — 53 +- clientservices.googleapis.com — 48 +- z-m-gateway.facebook.com — 36 +- ssb-global.smartadserver.com — 36 +- voilatile-pa.googleapis.com — 34 +- ads.yieldmo.com — 34 +- m.media-amazon.com — 32 +Top blocked: +- mobile.events.data.microsoft.com — 1,269 blocked of 1,269 +- mobile.pipe.aria.microsoft.com — 1,154 blocked of 1,154 +- app-measurement.com — 63 blocked of 63 +- t.poki.io — 58 blocked of 58 +- api.assertcom.de — 34 blocked of 34 +- ts.amazon-adsystem.com — 26 blocked of 26 +- onetag-sys.com — 24 blocked of 24 +- unagi-na.amazon.com — 23 blocked of 23 +- analytics.apis.mcafee.com — 21 blocked of 21 +- id5-sync.com — 15 blocked of 15 + +### iPhone (192.168.68.111) +Location: Hallway; MAC: C6-37-18-E7-39-39; mapping: historical_snapshot. +Queries: 7,321; blocked: 840; block rate: 11.47%; unique domains: 678. + +Top visited (not blocked): +- ts01-b.csa.cloudsink.net — 397 +- mask.apple-dns.net — 368 +- outlook.office365.com — 298 +- ts01-b.cloudsink.net — 208 +- chat.cdn.whatsapp.net — 196 +- www.google.com — 146 +- mmx-ds.cdn.whatsapp.net — 144 +- mdm-na2.mobileiron.com — 128 +- oauthaccountmanager.googleapis.com — 91 +- whatsapp.com — 68 +Top blocked: +- dit.whatsapp.net — 330 blocked of 330 +- app-analytics-services.com — 118 blocked of 118 +- firebaselogging-pa.googleapis.com — 112 blocked of 112 +- app-measurement.com — 46 blocked of 46 +- fbs.smoot.apple.com — 24 blocked of 24 +- ca.iadsdk.apple.com — 17 blocked of 17 +- partiality.itunes.apple.com — 16 blocked of 16 +- cf.iadsdk.apple.com — 16 blocked of 16 +- unagi.amazon.com — 14 blocked of 14 +- unagi-na.amazon.com — 14 blocked of 14 + +### Mac (192.168.68.112) +Location: Office; MAC: 06-79-91-73-6F-6A; mapping: historical_snapshot. +Queries: 7,285; blocked: 1,279; block rate: 17.56%; unique domains: 274. + +Top visited (not blocked): +- internalfb.com — 161 +- www.apple.com — 133 +- 1.courier-push-apple.com.akadns.net — 131 +- lrs.thefacebook.com — 130 +- lb._dns-sd._udp.0.68.168.192.in-addr.arpa — 130 +- gateway.fe2.apple-dns.net — 125 +- apple.com — 120 +- mask.apple-dns.net — 112 +- www.google.com — 110 +- 1.courier-sandbox-push-apple.com.akadns.net — 108 +Top blocked: +- www.internalfb.com — 227 blocked of 685 +- dit.whatsapp.net — 168 blocked of 168 +- tokenservice.edge.x2p.facebook.net — 164 blocked of 212 +- graph.facebook.com — 140 blocked of 328 +- graph.prod.facebook.com — 130 blocked of 236 +- interngraph.internmc.facebook.com — 58 blocked of 149 +- gateway.internalfb.com — 48 blocked of 140 +- www.facebook.com — 42 blocked of 143 +- time1.facebook.com — 41 blocked of 76 +- metamate.internalmeta.com — 29 blocked of 72 + +### Mac (192.168.68.117) +Location: Hallway; MAC: 82-A1-8E-D4-03-7A; mapping: multiple_identities_seen. +Queries: 5,108; blocked: 533; block rate: 10.43%; unique domains: 362. + +Top visited (not blocked): +- api.telegram.org — 190 +- www.google.com — 156 +- chatgpt.com — 134 +- cloud.reynafamily.com — 131 +- chat.cdn.whatsapp.net — 121 +- daily-cloudcode-pa.googleapis.com — 120 +- brain.reynafamily.com — 120 +- api.apple-cloudkit.fe2.apple-dns.net — 114 +- 1.courier-sandbox-push-apple.com.akadns.net — 114 +- mmx-ds.cdn.whatsapp.net — 113 +Top blocked: +- dit.whatsapp.net — 418 blocked of 418 +- fbs.smoot.apple.com — 18 blocked of 18 +- unagi-na.amazon.com — 12 blocked of 12 +- partiality.itunes.apple.com — 12 blocked of 12 +- cf.iadsdk.apple.com — 12 blocked of 12 +- event.bblmw.com — 11 blocked of 11 +- unagi.amazon.com — 10 blocked of 10 +- mobile.events.data.microsoft.com — 10 blocked of 10 +- fls-na.amazon.com — 8 blocked of 8 +- ogads-pa.clients6.google.com — 6 blocked of 6 + +### iPhone (192.168.68.106) +Location: Hallway; MAC: 62-0F-E1-3A-4C-4B; mapping: historical_snapshot. +Queries: 4,414; blocked: 387; block rate: 8.77%; unique domains: 777. + +Top visited (not blocked): +- mask.apple-dns.net — 204 +- outlook.office365.com — 200 +- mmx-ds.cdn.whatsapp.net — 119 +- www.google.com — 79 +- chat.cdn.whatsapp.net — 72 +- bag-cdn.itunes-apple.com.akadns.net — 54 +- atm.outlook.mira.tm.svc.cloud.microsoft — 50 +- imap.gmail.com — 48 +- fs.outlook.mira.tm.svc.cloud.microsoft — 40 +- ocsp2.apple.com — 36 +Top blocked: +- dit.whatsapp.net — 102 blocked of 102 +- app-analytics-services.com — 32 blocked of 32 +- collector-pxuarm9b04.perimeterx.net — 19 blocked of 19 +- ogads-pa.clients6.google.com — 17 blocked of 17 +- app-measurement.com — 14 blocked of 14 +- analytics.google.com — 11 blocked of 11 +- sdk.iad-08.braze.com — 8 blocked of 8 +- cdn.doubleverify.com — 7 blocked of 7 +- api.assertcom.de — 7 blocked of 7 +- ups.analytics.yahoo.com — 6 blocked of 6 + +### adolforeynaserver (192.168.68.110) +Location: Office; MAC: 18-60-24-78-DB-E8; mapping: historical_snapshot. +Queries: 4,299; blocked: 224; block rate: 5.21%; unique domains: 38. + +Top visited (not blocked): +- herdr.dev — 2,016 +- media.reynafamily.com — 570 +- dns.reynafamily.com — 312 +- adolforeynaserver — 296 +- acme-v02.api.letsencrypt.org — 248 +- acme-staging-v02.api.letsencrypt.org — 242 +- ph.n8n.io — 114 +- cdn.fwupd.org — 72 +- api.github.com — 52 +- version.goauthentik.io — 48 +Top blocked: +- telemetry.n8n.io — 224 blocked of 224 + +### LGwebOSTV (192.168.68.105) +Location: Study; MAC: F8-B9-5A-E0-78-52; mapping: multiple_identities_seen. +Queries: 4,090; blocked: 344; block rate: 8.41%; unique domains: 926. + +Top visited (not blocked): +- mask.apple-dns.net — 140 +- outlook.office365.com — 124 +- www.google.com — 46 +- imap.gmail.com — 42 +- gdmf.apple.com — 38 +- bag-cdn.itunes-apple.com.akadns.net — 38 +- ocsp2.apple.com — 36 +- iphone-ld.g.aaplimg.com — 30 +- ocsp2.g.aaplimg.com — 29 +- google.com — 28 +Top blocked: +- us.rdx2.lgtvsdp.com — 29 blocked of 29 +- fbs.smoot.apple.com — 22 blocked of 22 +- g2.gumgum.com — 15 blocked of 15 +- us.info.lgsmartad.com — 14 blocked of 14 +- dit.whatsapp.net — 11 blocked of 11 +- cdn.doubleverify.com — 11 blocked of 11 +- app-analytics-services.com — 11 blocked of 11 +- trk.pinterest.com — 10 blocked of 10 +- choices.truste.com — 10 blocked of 10 +- partiality.itunes.apple.com — 6 blocked of 6 + +### iPad (192.168.68.131) +Location: Hallway; MAC: A2-10-C6-24-C2-0A; mapping: historical_snapshot. +Queries: 3,796; blocked: 412; block rate: 10.85%; unique domains: 416. + +Top visited (not blocked): +- mask.apple-dns.net — 258 +- whatsapp.com — 221 +- abf4d3zfbtw7.na.api.amazonvideo.com — 198 +- sps-media.v.aaplimg.com — 184 +- 9171f26e5c1fc238b809d6415de0a3ac9a002131321c2231afe4d46dcb0ab14.us-east-1.prod.service.minerva.devices.a2z.com — 143 +- sps-media.awuse1.sbz.apple.com — 101 +- mmx-ds.cdn.whatsapp.net — 87 +- us-east-1-3.telemetry.insights.video.a2z.com — 71 +- abq9rtydqf28.na.api.amazonvideo.com — 67 +- _dns.resolver.arpa — 59 +Top blocked: +- dit.whatsapp.net — 313 blocked of 313 +- fbs.smoot.apple.com — 22 blocked of 22 +- youtubei.googleapis.com — 7 blocked of 15 +- unagi.amazon.com — 7 blocked of 7 +- app-analytics-services.com — 7 blocked of 7 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- app-measurement.com — 6 blocked of 6 +- unagi-na.amazon.com — 4 blocked of 4 +- fls-na.amazon.com — 4 blocked of 4 + +### Christina-s-Note10 (192.168.68.133) +Location: Study; MAC: CE-72-39-0E-BF-1B; mapping: historical_snapshot. +Queries: 3,413; blocked: 1,622; block rate: 47.52%; unique domains: 224. + +Top visited (not blocked): +- google.com — 253 +- graph.facebook.com — 215 +- www.google.com — 211 +- api.segment.io — 71 +- doordash.mobile.prod.cmtelematics.com — 61 +- opcode — 54 +- 216.58.202.4.in-addr.arpa — 36 +- app.abcmouse.com — 32 +- api.aofl.com — 31 +- youtubei.googleapis.com — 27 +Top blocked: +- mobile.pipe.aria.microsoft.com — 1,040 blocked of 1,040 +- iguazu.doordash.com — 123 blocked of 123 +- otel-mobile.doordash.com — 108 blocked of 108 +- stats-proto.pandora.com — 78 blocked of 78 +- api.iterable.com — 68 blocked of 68 +- observability.target.com — 57 blocked of 57 +- stats.pandora.com — 32 blocked of 32 +- unagi-na.amazon.com — 16 blocked of 16 +- mobile.events.data.microsoft.com — 10 blocked of 10 +- firebaselogging.googleapis.com — 10 blocked of 10 + +### espressif (192.168.68.108) +Location: Casita; MAC: 14-C1-9F-D1-56-90; mapping: multiple_identities_seen. +Queries: 3,258; blocked: 461; block rate: 14.15%; unique domains: 182. + +Top visited (not blocked): +- whatsapp.com — 218 +- api.telegram.org — 104 +- cloud.reynafamily.com — 92 +- chatgpt.com — 89 +- mask.apple-dns.net — 77 +- antigravity-unleash.goog — 68 +- daily-cloudcode-pa.googleapis.com — 62 +- ssl.gstatic.com — 56 +- mmx-ds.cdn.whatsapp.net — 54 +- graph.whatsapp.com — 54 +Top blocked: +- dit.whatsapp.net — 292 blocked of 292 +- unagi-na.amazon.com — 66 blocked of 66 +- unagi.amazon.com — 64 blocked of 64 +- fbs.smoot.apple.com — 36 blocked of 36 +- experiments.apple.com — 3 blocked of 3 + +### 50CasitaTv (192.168.68.114) +Location: Casita; MAC: DC-72-23-B1-13-BE; mapping: historical_snapshot. +Queries: 2,981; blocked: 2,915; block rate: 97.79%; unique domains: 11. + +Top visited (not blocked): +- themes-service.sr.roku.com — 24 +- api.roku.com — 24 +- mediaservices.cdn-apple.com — 14 +- sw-update.cs.roku.com — 1 +- longview.sb.roku.com — 1 +- hints.voice.roku.com — 1 +- api2.sr.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 2,720 blocked of 2,720 +- liberty.logs.roku.com — 192 blocked of 192 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### emiserver (192.168.68.119) +Location: Office; MAC: C8-5A-CF-0A-7A-A7; mapping: historical_snapshot. +Queries: 2,333; blocked: 0; block rate: 0.00%; unique domains: 19. + +Top visited (not blocked): +- api.telegram.org — 1,065 +- chatgpt.com — 912 +- herdr.dev — 190 +- cdn.fwupd.org — 58 +- version.goauthentik.io — 50 +- version.immich.cloud — 24 +- api.snapcraft.io — 10 +- motd.ubuntu.com — 8 +- security.ubuntu.com — 2 +- esm.ubuntu.com — 2 +Top blocked: +- none + +### 50LivingRoom (192.168.68.100) +Location: Office; MAC: 84-3E-1D-4F-4A-1D; mapping: historical_snapshot. +Queries: 2,268; blocked: 2,207; block rate: 97.31%; unique domains: 14. + +Top visited (not blocked): +- api.roku.com — 25 +- themes-service.sr.roku.com — 24 +- api2.sr.roku.com — 5 +- mediaservices.cdn-apple.com — 2 +- sw-update.cs.roku.com — 1 +- lat-services.api.data.roku.com — 1 +- hints.voice.roku.com — 1 +- configsvc.cs.roku.com — 1 +- austin.sb.roku.com — 1 +Top blocked: +- scribe.logs.roku.com — 1,990 blocked of 1,990 +- liberty.logs.roku.com — 190 blocked of 190 +- cloudservices.roku.com — 24 blocked of 24 +- display.ravm.tv — 2 blocked of 2 +- identity.ads.roku.com — 1 blocked of 1 + +### aeropi5 (192.168.68.126) +Location: Office; MAC: 2C-CF-67-95-2B-F8; mapping: historical_snapshot. +Queries: 2,048; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,169 +- chatgpt.com — 486 +- herdr.dev — 201 +- cloud.reynafamily.com — 96 +- cdn.fwupd.org — 61 +- api.snapcraft.io — 13 +- git.reynafamily.com — 8 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +Top blocked: +- none + +### aeropi5 (192.168.68.116) +Location: Office; MAC: 2C-CF-67-95-2B-F9; mapping: historical_snapshot. +Queries: 2,038; blocked: 0; block rate: 0.00%; unique domains: 16. + +Top visited (not blocked): +- connectivity-check.ubuntu.com — 1,169 +- chatgpt.com — 486 +- herdr.dev — 190 +- cloud.reynafamily.com — 96 +- cdn.fwupd.org — 65 +- api.snapcraft.io — 10 +- git.reynafamily.com — 8 +- ports.ubuntu.com — 2 +- packages.microsoft.com — 2 +- motd.ubuntu.com — 2 +Top blocked: +- none + +### iPhone (192.168.68.121) +Location: Hallway; MAC: A6-B0-E1-AF-2F-75; mapping: historical_snapshot. +Queries: 1,783; blocked: 70; block rate: 3.93%; unique domains: 186. + +Top visited (not blocked): +- mask.apple-dns.net — 150 +- iphone-ld.apple.com — 68 +- ocsp2.apple.com — 62 +- _dns.resolver.arpa — 59 +- www.subalert.com — 54 +- swallow.apple.com — 52 +- configuration.ls.apple.com — 50 +- mask.icloud.com — 48 +- gdmf.apple.com — 46 +- subalert.com — 39 +Top blocked: +- fbs.smoot.apple.com — 56 blocked of 56 +- partiality.itunes.apple.com — 6 blocked of 6 +- cf.iadsdk.apple.com — 6 blocked of 6 +- experiments.apple.com — 2 blocked of 2 + +### iPad-4 (192.168.68.107) +Location: WashMachine; MAC: DA-77-C3-CE-4D-01; mapping: historical_snapshot. +Queries: 1,390; blocked: 76; block rate: 5.47%; unique domains: 281. + +Top visited (not blocked): +- mask.apple-dns.net — 170 +- _dns.resolver.arpa — 55 +- ocsp2.apple.com — 44 +- mask.icloud.com — 42 +- ocsp2.g.aaplimg.com — 25 +- gdmf.apple.com — 24 +- bag.itunes.apple.com — 24 +- xp.apple.com — 22 +- init-p01md.apple.com — 22 +- xp.g.aaplimg.com — 21 +Top blocked: +- sdk.iad-01.braze.com — 19 blocked of 19 +- app-measurement.com — 11 blocked of 11 +- firebaselogging-pa.googleapis.com — 6 blocked of 6 +- cdp.cloud.unity3d.com — 5 blocked of 5 +- iadsdk.apple.com — 4 blocked of 4 +- banner.youversionapi.com — 4 blocked of 4 +- app-analytics-services.com — 4 blocked of 4 +- config.inmobi.com — 3 blocked of 3 +- cl.canva.com — 3 blocked of 3 +- graph.facebook.com — 2 blocked of 4 + +### localhost (127.0.0.1) +Location: not mapped; MAC: unknown; mapping: not_in_snapshot_or_live_deco_list. +Queries: 712; blocked: 0; block rate: 0.00%; unique domains: 44. + +Top visited (not blocked): +- 8.8.8.8.in-addr.arpa — 24 +- 4.4.8.8.in-addr.arpa — 24 +- 150.68.168.192.in-addr.arpa — 24 +- 140.68.168.192.in-addr.arpa — 24 +- 135.68.168.192.in-addr.arpa — 24 +- 134.68.168.192.in-addr.arpa — 24 +- 131.68.168.192.in-addr.arpa — 24 +- 128.68.168.192.in-addr.arpa — 24 +- 127.68.168.192.in-addr.arpa — 24 +- 126.68.168.192.in-addr.arpa — 24 +Top blocked: +- none + +### espressif (192.168.68.104) +Location: Office; MAC: 14-C1-9F-D0-5C-5C; mapping: multiple_identities_seen. +Queries: 437; blocked: 3; block rate: 0.69%; unique domains: 21. + +Top visited (not blocked): +- time.cloudflare.com — 297 +- todo-ta-g7g.amazon.com — 76 +- device-messaging-na.amazon.com — 21 +- dogvgb9ujhybx.cloudfront.net — 11 +- s3.amazonaws.com — 4 +- podcast.emmint.com — 4 +- pins.amazon.com — 2 +- dcape-na.amazon.com — 2 +- api.amazon.com — 2 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 2 +Top blocked: +- unagi-na.amazon.com — 3 blocked of 3 + +### espressif (192.168.68.127) +Location: Office; MAC: 28-84-85-85-10-BC; mapping: historical_snapshot. +Queries: 358; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 358 +Top blocked: +- none + +### El-senor-iPhone-2 (192.168.68.118) +Location: Study; MAC: EE-BB-31-45-BA-10; mapping: historical_snapshot. +Queries: 307; blocked: 2; block rate: 0.65%; unique domains: 57. + +Top visited (not blocked): +- mask.apple-dns.net — 103 +- mesu-cdn.origin-apple.com.akadns.net — 14 +- _dns.resolver.arpa — 14 +- mesu.g.aaplimg.com — 12 +- mask-api.icloud.com — 10 +- gdmf.apple.com — 10 +- mask-api.fe2.apple-dns.net — 9 +- mesu.apple.com — 8 +- iphone-ld.apple.com — 8 +- a1744.dscw154.akamai.net — 7 +Top blocked: +- ic3.events.data.microsoft.com — 2 blocked of 2 + +### espressif (192.168.68.113) +Location: Office; MAC: 14-C1-9F-D0-59-1C; mapping: historical_snapshot. +Queries: 261; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- time.cloudflare.com — 261 +Top blocked: +- none + +### Amazon (192.168.68.134) +Location: Office; MAC: A0-D2-B1-A6-EC-BD; mapping: historical_snapshot. +Queries: 172; blocked: 28; block rate: 16.28%; unique domains: 10. + +Top visited (not blocked): +- dogvgb9ujhybx.cloudfront.net — 67 +- ahu5vu98zzyil.us-east-1.prod.service.minerva.devices.a2z.com — 60 +- www.amazon.com — 7 +- m.media-amazon.com — 3 +- todo-ta-g7g.amazon.com — 2 +- device-messaging-na.amazon.com — 2 +- s3.amazonaws.com — 1 +- s3-us-west-1.amazonaws.com — 1 +- d18os95hu8sz6h.cloudfront.net — 1 +Top blocked: +- unagi-na.amazon.com — 28 blocked of 28 + +### El-senor-iPhone (192.168.68.132) +Location: Hallway; MAC: 22-95-36-9C-E1-45; mapping: historical_snapshot. +Queries: 162; blocked: 0; block rate: 0.00%; unique domains: 41. + +Top visited (not blocked): +- mask.apple-dns.net — 67 +- _dns.resolver.arpa — 10 +- mask.icloud.com — 8 +- iphone-ld.apple.com — 8 +- mask-api.icloud.com — 6 +- iphone-ld.g.aaplimg.com — 4 +- gdmf.apple.com — 4 +- xp.apple.com — 2 +- time.apple.com — 2 +- netcts.cdn-apple.com — 2 +Top blocked: +- none + +### Adolfos-iPhone (192.168.68.150) +Location: Office; MAC: 30-35-AD-68-A3-AB; mapping: historical_snapshot. +Queries: 155; blocked: 8; block rate: 5.16%; unique domains: 36. + +Top visited (not blocked): +- time-ios.apple.com — 36 +- gateway.icloud.com — 17 +- gateway.fe2.apple-dns.net — 14 +- ocsp.apple.com — 8 +- gsp64-ssl.ls.apple.com — 7 +- gsp-ssl.ls.apple.com — 7 +- p189-keyvalueservice.icloud.com — 6 +- bag.itunes.apple.com — 5 +- xp.apple.com — 4 +- mesu.apple.com — 4 +Top blocked: +- partiality.itunes.apple.com — 4 blocked of 4 +- cf.iadsdk.apple.com — 4 blocked of 4 + +### MyCloudEX2Ultra (192.168.68.137) +Location: Office; MAC: 00-00-C0-3C-B8-FF; mapping: historical_snapshot. +Queries: 54; blocked: 0; block rate: 0.00%; unique domains: 13. + +Top visited (not blocked): +- prod-proxy.wdckeystone.com — 10 +- prod.wdckeystone.com — 8 +- config.mycloud.com — 6 +- time.windows.com — 4 +- time.mycloud.com — 4 +- prod-gateway.wdckeystone.com — 4 +- prod-701f05f7a9a5fda.wdckeystone.com — 4 +- google.com — 4 +- prod-fc14d21a5887149.wdckeystone.com — 2 +- prod-31cdfc8017b5028.wdckeystone.com — 2 +Top blocked: +- none + +### E31868152 (192.168.68.128) +Location: Barn; MAC: 80-9F-9B-45-9A-FF; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### F49758774 (192.168.68.125) +Location: Hallway; MAC: C0-E7-BF-DD-C8-2A; mapping: historical_snapshot. +Queries: 48; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- 0.amazon.pool.ntp.org — 48 +Top blocked: +- none + +### Mac-mini-M4 (192.168.68.130) +Location: Office; MAC: D0-11-E5-73-96-5A; mapping: historical_snapshot. +Queries: 34; blocked: 0; block rate: 0.00%; unique domains: 12. + +Top visited (not blocked): +- p146-contacts.icloud.com — 3 +- atm.outlook.mira.tm.svc.cloud.microsoft — 3 +- acdcatm.outlook.mira.tm.svc.cloud.microsoft — 3 +- 7-courier.push.apple.com — 3 +- 41-courier.push.apple.com — 3 +- 39-courier.push.apple.com — 3 +- 38-courier.push.apple.com — 3 +- 34-courier.push.apple.com — 3 +- 26-courier.push.apple.com — 3 +- 25-courier.push.apple.com — 3 +Top blocked: +- none + +### iot_device (192.168.68.135) +Location: Office; MAC: A0-85-E3-FB-35-5C; mapping: historical_snapshot. +Queries: 31; blocked: 0; block rate: 0.00%; unique domains: 4. + +Top visited (not blocked): +- time.cloudflare.com — 25 +- api.bambulab.com — 4 +- us-d-master-71spctnsfa8p5xvgkssa.iotcplatform.com — 1 +- or-cloud-upload-prod.s3.us-west-2.amazonaws.com — 1 +Top blocked: +- none + +### Blink-Device (192.168.68.142) +Location: WashMachine; MAC: 84-28-59-E8-42-80; mapping: historical_snapshot. +Queries: 25; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- ms-cam-u011.immedia-semi.com — 25 +Top blocked: +- none + +### AMPAK Technology,Inc. (192.168.68.141) +Location: Study; MAC: F0-23-AE-27-E2-F6; mapping: historical_snapshot. +Queries: 15; blocked: 0; block rate: 0.00%; unique domains: 3. + +Top visited (not blocked): +- connectivitycheck.gstatic.com — 7 +- device.supernote.com — 4 +- device-wss-file.supernote.com — 4 +Top blocked: +- none + +### Mac (192.168.68.102) +Location: Office; MAC: 5A-D2-AA-CB-96-08; mapping: historical_snapshot. +Queries: 14; blocked: 0; block rate: 0.00%; unique domains: 9. + +Top visited (not blocked): +- 130.68.168.192.in-addr.arpa — 4 +- wss-primary.slack.com — 2 +- 1.courier-push-apple.com.akadns.net — 2 +- us-sandbox-courier-4.push-apple.com.akadns.net — 1 +- slack.com — 1 +- local — 1 +- api.telegram.org — 1 +- _dns.resolver.arpa — 1 +- 102.68.168.192.in-addr.arpa — 1 +Top blocked: +- none + +### Adolfos-iPad (192.168.68.129) +Location: Hallway; MAC: 12-56-B3-70-09-39; mapping: historical_snapshot. +Queries: 8; blocked: 0; block rate: 0.00%; unique domains: 5. + +Top visited (not blocked): +- guzzoni.apple.com — 2 +- captive.apple.com — 2 +- _dns.resolver.arpa — 2 +- guzzoni-apple-com.v.aaplimg.com — 1 +- captive.g.aaplimg.com — 1 +Top blocked: +- none + +### FN-LINK (192.168.68.139) +Location: Barn; MAC: 24-18-C6-B5-4A-DC; mapping: historical_snapshot. +Queries: 2; blocked: 0; block rate: 0.00%; unique domains: 1. + +Top visited (not blocked): +- portal-ww.ecouser.net — 2 +Top blocked: +- none + diff --git a/projects/paseo_deep_research_2026-08-17.md b/projects/paseo_deep_research_2026-08-17.md new file mode 100644 index 0000000..cab4faf --- /dev/null +++ b/projects/paseo_deep_research_2026-08-17.md @@ -0,0 +1,289 @@ +--- +Date: 2026-08-17 +Author: Adolfo Reyna + Hermes +Status: research verified against FamReynaServer `.110` and current upstream documentation +Tags: [paseo, agents, orchestration, workspaces, software-factory, research] +--- + +# Paseo Deep Research — Agents, Options, and Factory Design + +## Bottom line + +Paseo is a **local-first agent execution control plane**. A daemon runs on each machine that should execute coding agents. Desktop, mobile, web, CLI, and agent-to-agent orchestration are clients of that daemon. It does not itself supply an AI model; it launches and supervises authenticated provider CLIs such as Codex, OpenCode, Claude Code, and Pi. + +For the family software factory, the useful model is: + +```text +Paseo Desktop on laptop (interactive control client) + │ encrypted relay pairing + ▼ +FamReynaServer .110 Paseo daemon (shared execution/control node) + │ local process supervision + project workspaces + ▼ +Codex / OpenCode / Pi agents, worktrees, terminals, scripts, schedules +``` + +Other servers become execution nodes only when they independently run compatible Paseo daemons and are paired or securely targeted. A link to `.110` gives the laptop control over `.110`; it does not automatically turn every LAN host into a worker. + +## 1. Live verification: FamReynaServer `.110` + +All statements in this table were checked through SSH on 2026-08-17. + +| Capability | Verified result | Meaning | +|---|---|---| +| Paseo CLI + daemon | `0.4.0` | Current server control plane is real, not a proposed install | +| Health | `GET 127.0.0.1:6767/api/health` → `{"status":"ok"}` | daemon is listening locally and healthy | +| Listener | `127.0.0.1:6767` only | good default: no LAN exposure | +| Relay | enabled; connected to `wss://relay.paseo.sh:443` | laptop connection can remain outbound/E2E encrypted | +| Laptop connection | one active external relay client, Paseo app version `0.4.0` | attached client has fetched agent/workspace/project state | +| Current agents/workspaces/terminals | all empty | clean factory starting point, not a hidden active fleet | +| Current schedules / pending permissions | both empty | no autonomous or blocked work is running | +| Hub relationship | `not_connected` | normal; Hub is optional and distinct from Desktop/relay pairing | +| Ready providers | Codex `0.141.0`, OpenCode `1.18.13`, Pi | usable local agent runners; Claude currently unavailable | + +The CLI status output contains a misleading daemon-detail note despite the direct health endpoint, live local CLI requests, and relay session all succeeding. Treat the actual health endpoint and live command results as the source of truth until that display inconsistency is resolved. + +## 2. Architecture: what belongs to what + +### Daemon + +The daemon owns: + +- agent lifecycle, persistence, timelines, provider subprocesses, and permissions; +- workspaces and managed Git worktrees; +- supervised terminals and `paseo.json` scripts/services; +- schedules/heartbeats; and +- relay/direct client connections. + +A daemon may run on a laptop, Mac mini, Linux server, VPS, or container. It must be installed and authenticated separately on every host intended to execute work. + +### Client + +Paseo Desktop, a mobile app, a terminal CLI, a web UI, and an orchestrating agent are all clients. They do not execute the coding work themselves unless they are also attached to a local daemon that launches it. + +### Project → workspace → session + +```text +Project (repository or directory on the daemon host) + └── Workspace (stable task container; local directory or Git worktree) + ├── Agent session(s) + ├── Managed terminal(s) + ├── named paseo.json scripts/services + └── browser session(s), when enabled and a host is present +``` + +A **workspace** decides *where* work happens. **Agent parentage** decides *who owns* delegated work. These are independent: a subagent can be placed in another workspace while remaining its parent agent's child. + +## 3. The installed v0.4.0 command surface + +This is the command surface exposed by the actual CLI on `.110`, not an assumed older version. Most commands accept `--host`, `--json`, and the documented host target can be a direct daemon endpoint or a pairing offer URL. + +| Area | Commands verified locally | Factory relevance | +|---|---|---| +| Top-level agent operations | `ls`, `run`, `import`, `clone`, `attach`, `logs`, `stop`, `delete`, `send`, `inspect`, `wait`, `archive` | core task execution and evidence | +| Advanced agent operations | `agent ls/run/import/attach/logs/open/stop/delete/send/inspect/wait/mode/archive/reload/detach/update` | lifecycle, recovery, provider mode, cross-client ownership | +| Workspaces | `workspace create/ls/rename/archive` | local vs worktree task boundaries | +| Managed terminals | `terminal ls/create/kill/capture/send-keys` | inspect and control daemon-host shell sessions | +| Workspace scripts | `script ls/start/stop` | repeatable test/build/dev/health commands in `paseo.json` | +| Recurrence | `schedule create/ls/inspect/logs/pause/resume/delete/run-once/update`; `heartbeat create/update/delete` | fresh-agent cron jobs vs same-agent continuation | +| Providers | `provider ls/models/diagnostic` | discover real models/modes, not guessed names | +| Permission checkpoints | `permit ls/allow/deny` | explicit approval of provider permission requests | +| Daemon / connectivity | `daemon start/pair/status/stop/restart/set-password`; `status`, `start`, `restart` aliases | lifecycle and remote pairing | +| Hub | `hub login/init/connect/status/disconnect/projects/deploy/logout` | optional hosted/self-hosted event/workflow product, not required for the pilot | +| Other | `hooks`, `speech` | present in help; no subcommands exposed by the installed build | + +### Critical version caveat + +Upstream current docs describe additional CLI namespaces including `project`, `plugin`, `reload`, and a newer CLI reference. They also document an agent loop pattern. **Those are not exposed by the installed 0.4.0 CLI on `.110`**: `paseo project`, `paseo plugin`, `paseo reload`, `paseo loop`, and `paseo chat` currently fall back to top-level help rather than providing a command. + +Therefore: + +1. Use `paseo --help` on the target host as the operational truth. +2. Do not write factory automation around upstream-only commands until an upgrade has been tested. +3. The pilot can still use all essential primitives: worktrees, agents, scripts, schedules, terminals, permissions, and provider diagnostics. + +## 4. Agent model — how agents actually work + +### Lifecycle + +```text +initializing → idle → running → idle + └────→ error → closed +``` + +- `idle` means an agent has finished its current turn and can receive a follow-up. +- `closed` is durable and resumable: provider runtime resources are released, but the agent ID, timeline, workspace, labels, and parent relationship remain. +- `archive` is a global **soft delete**: it closes the runtime and removes the agent from active lists but preserves its record/history. +- `delete` is a CLI hard-delete operation; do not use it for factory audit trails. +- `reload` restarts the agent's provider process; it is a recovery action, not a normal “continue” mechanism. + +### Root agents, Paseo subagents, and provider-native subagents + +| Kind | Provider | Lifecycle owner | Best use | +|---|---|---|---| +| Root Paseo agent | any configured provider | Paseo daemon | a discrete plan, implement, review, or release task | +| Paseo subagent | any configured provider; may differ from parent | Paseo daemon | cross-provider delegation and explicit workspace placement | +| Native provider subagent | same provider as parent | provider CLI | short provider-native decomposition inside a single session | + +When a Paseo agent runs `paseo run` or uses `create_agent` without specifying a workspace, the child defaults to the **parent's workspace and subagent track**. Supplying a workspace changes placement but not parentage. + +`paseo agent detach ` is intentionally explicit: it makes a child independent without stopping, moving, restarting, or archiving it. It should be a human operator decision, not a routine agent action. + +### Consequences for a software factory + +- Use one short-lived **root orchestration agent** for a change lane only when it adds value; do not create a forever-parent that accumulates unbounded children. +- Use **Paseo subagents** for planner → implementer → reviewer roles when cross-provider separation matters. +- Use **native subagents** only as the implementation provider's internal tactic; they are not interchangeable with independently controllable Paseo agents. +- Archive finished task agents after their evidence is recorded. Preserve the worktree/branch until review and merge/rejection are complete. +- Never infer that `idle` means provider background jobs are still alive. Provider runtime crashes can strand background work; require explicit command evidence for builds/tests. + +## 5. Starting agents safely + +A top-level `paseo run` starts an agent; from a normal human shell it creates a new local workspace for the current directory unless placement is specified. + +The high-value options are: + +| Option | What it controls | Factory policy | +|---|---|---| +| `--provider`, `--model`, `--thinking`, `--mode` | actual execution model and permission mode | discover available values with `provider ls/models` first | +| `--new-workspace worktree` | task isolation | default for source-changing work | +| `--worktree-mode branch-off` + `--new-branch` + `--base origin/main` | branch origin | use for new changes; prefer `origin/main`, not stale local `main` | +| `--workspace ` | existing task container | use to add review/test agents to a known worktree | +| `--background` | immediate return while task runs | use only when the orchestrator can later `wait`, inspect, or attach | +| `--output-schema` | structured final JSON | use for narrow, machine-consumable plan/review verdicts; cannot combine with `--background` | +| `--cwd` | daemon-local working directory | always explicit for server automation / remote targets | +| `--env` | agent process environment | avoid secrets in prompts/logs; prefer approved node credential stores | +| `--label` | traceability metadata | label tasks with project, lane, change ID, and role | +| `--host` | remote daemon or pairing offer target | use pairing offers/relay or a secured direct path; never open an unauthenticated LAN port casually | + +## 6. Workspaces, worktrees, scripts, and services + +### Isolation + +- **Local workspace**: uses an existing directory. Good for read-only audits, planning, or one carefully coordinated task on a main checkout. +- **Worktree workspace**: creates/opens a managed Git worktree on its own branch. Use for every source-changing factory change, parallel agent, or review requiring clean context. + +Worktrees are stored under `$PASEO_HOME/worktrees/` by default. Paseo removes the managed worktree only after its final workspace reference is archived. The factory must not archive a worktree before review/merge evidence is retained. + +### `paseo.json` + +A committed root `paseo.json` can define: + +- one-time worktree `setup` and `teardown` commands; +- plain scripts such as `lint`, `typecheck`, `test`, `build`, and `health`; and +- long-running service scripts with supervised terminals, a distinct `$PASEO_PORT`, proxy URL, and health metadata. + +This file is a factory contract: it turns “run whatever seems right” into stable project commands. Important caveat: setup/teardown scripts execute with the permissions of the daemon user and can copy `.env` files or run migrations. Keep them minimal and audited; do not copy production secrets into general-purpose worktrees. + +## 7. Recurrence: schedules versus heartbeats + +| Mechanism | Target | Agent state | Use | Safety pattern | +|---|---|---|---|---| +| **Schedule** | a fresh agent each run | no retained chat context | nightly CI audit, daily issue triage, dependency check | explicit `--cwd`, provider, `--max-runs` and/or `--expires-in`; start read-only | +| **Heartbeat** | the current existing agent | continues same conversation | bounded CI babysitting or deployment observation | only inside an agent (`PASEO_AGENT_ID` required); raw cron; stop condition and expiry | + +Schedules support inspect/logs/pause/resume/update/run-once. Heartbeats in the installed CLI support create/update/delete; their prompt and target are fixed after creation. A heartbeat is **not** a global cron worker. + +The older Paseo `loop` helper is not exposed in the installed server CLI. For now, use a bounded agent workflow with explicit test scripts, a fresh verifier agent, or a finite schedule. Do not create an unbounded shell loop or self-healing scheduled agent as the first factory experiment. + +## 8. Permissions and human gates + +Paseo surfaces permission requests via `paseo permit ls`; an operator can allow or deny a particular request, or all pending requests for an agent. Permissions are a checkpoint, not proof that the original task completed. + +Factory policy: + +1. Planning/review agents run no-edit and no-side-effect instructions. +2. Implementation agents may edit **only their isolated worktree**. +3. Testing/build scripts may run only predeclared local commands. +4. Merge, deployment, service restart, outbound publish/send, credential changes, and data migrations always stop for explicit human approval. +5. `permit allow --all` is not a standing policy; inspect a pending request and its scope first. + +## 9. Connectivity and security choices + +### Recommended: existing relay pairing + +Relay pairing allows the daemon to stay at `127.0.0.1:6767`; the daemon makes an outbound connection and the laptop/client meets it through the relay. Paseo documents Curve25519 ECDH setup and XSalsa20-Poly1305 authenticated encryption for subsequent traffic. Pairing links/QR codes are trust anchors and must be treated like passwords. + +### Other supported options + +| Transport | Appropriate use | Required guardrails | +|---|---|---| +| loopback | CLI and agents running on same node | current `.110` default; safest local baseline | +| relay | laptop/mobile/remote control | protect offer link; revoke/rotate if exposed | +| Tailscale/VPN direct path | controlled private-network access | bind only to VPN address and configure password auth | +| LAN / `0.0.0.0` | avoid for family factory | only with firewall, hostname allowlist, password auth, and a specific reason | +| Docker | contained per-project agent executor | restrict repo mounts and protect `PASEO_HOME`; container isolation does not protect mounted credentials | + +A standalone Hub is a separate product: it supports organization login, daemon enrollment, and Hub workflow bundles. Desktop multi-host management and relay pairing do **not** require a Hub. Current `.110` Hub state is intentionally `not_connected`. + +## 10. Provider inventory and routing + +The daemon's provider diagnostics prove what the daemon process can actually execute: + +| Provider | Live status | Models exposed | Recommended role now | +|---|---|---|---| +| Codex | Ready; CLI `0.141.0` | GPT-5.5, GPT-5.4, GPT-5.4-Mini | implementation, deep review, structured planning | +| OpenCode | Ready; CLI `1.18.13` | 7 configured models | contrasting implementation/review, lower-cost experiments | +| Pi | Available | multiple GPT-5.1–5.4 configurations | lightweight tasks and exploration | +| Claude | unavailable | none | do not select until diagnostic reports Ready | +| Copilot / OMP | unavailable / disabled | none | no factory role today | + +Before every dispatch, the orchestrator should query the target's `paseo provider ls` and `paseo provider models `. A model that is visible on the Mac mini does not imply it is authenticated or available on `.110`. + +## 11. Recommended first software-factory operating procedure + +### Pilot scope + +Pick one low-risk repository that already has deterministic tests. It must reside on `.110` or be explicitly cloned/registered there; a remote `--host` command interprets `--cwd` on the **target daemon host**, not on the laptop. + +### Change lane + +1. **Register/prepare** the source checkout and add an audited `paseo.json` with `lint`, `typecheck`, `test`, and `build` scripts. +2. **Plan**: launch a no-edit planner agent that identifies acceptance criteria, files, risks, and exact test commands. +3. **Isolate**: create a worktree from `origin/main` and name the branch for the change. +4. **Implement**: launch a Codex or OpenCode agent in that workspace with allowed paths, predeclared scripts, and explicit no-merge/no-deploy limits. +5. **Verify**: run the named scripts, then launch a different-provider review agent in the same workspace to examine the diff and evidence. +6. **Approval**: present branch/diff, command exit outcomes, review findings, and rollback notes to the human. +7. **After approval only**: merge/deploy through the project-specific release path. Use a bounded read-only schedule only after the manual lane has proven useful. + +### Agent prompt contract + +Every executable factory task should contain: + +```text +Goal and acceptance criteria +Confirmed workspace path and branch +Allowed files/directories and commands +Named paseo.json checks to run +Forbidden actions: merge, deploy, restart, publish, send, credential changes +Expected final evidence: changed files, commands, exit status, unresolved risks +``` + +## 12. Direct answers to likely operating questions + +- **Can the laptop control `.110` now?** Yes. A verified encrypted relay client is attached to the live `.110` daemon. +- **Can `.110` run agents itself?** Yes: Codex, OpenCode, and Pi are ready. +- **Can that one link control every server?** No. Each execution host needs a daemon/pairing or a deliberately secured remote target. +- **Should we enable Hub now?** No. It is not needed for the first factory lane and adds organizational/workflow infrastructure. +- **Should we enable automatic repair schedules now?** No. First prove a manual, bounded worktree/verify/review lane; start schedules as read-only quality checks. +- **Should agents share the main checkout?** Only for read-only exploration or deliberate single-task coordination. Source changes should use worktree isolation. + +## Sources + +Official current documentation consulted: + +- [CLI reference](https://paseo.sh/docs/cli) +- [Orchestration](https://paseo.sh/docs/orchestration) +- [Agent lifecycle source documentation](https://github.com/getpaseo/paseo/blob/main/docs/agent-lifecycle.md) +- [Workspaces](https://paseo.sh/docs/workspaces) +- [Git worktrees and `paseo.json`](https://paseo.sh/docs/worktrees) +- [Schedules from the CLI](https://paseo.sh/docs/schedules-cli) +- [MCP reference](https://paseo.sh/docs/mcp) +- [Configuration](https://paseo.sh/docs/configuration) +- [Connectivity](https://paseo.sh/docs/connectivity) +- [Security](https://paseo.sh/docs/security) +- [Providers](https://paseo.sh/docs/providers) +- [Supported providers](https://paseo.sh/docs/supported-providers) +- [Orchestration skills](https://paseo.sh/docs/skills) + +The report additionally uses live, read-only CLI, health, provider-diagnostic, relay-session, and configuration evidence gathered from FamReynaServer `.110` on 2026-08-17. diff --git a/projects/paseo_relay_and_lan_transport_reference_2026-08-17.md b/projects/paseo_relay_and_lan_transport_reference_2026-08-17.md new file mode 100644 index 0000000..c31eff4 --- /dev/null +++ b/projects/paseo_relay_and_lan_transport_reference_2026-08-17.md @@ -0,0 +1,106 @@ +--- +Date: 2026-08-17 +Status: architecture reference — no LAN listener enabled by this document +Tags: [paseo, relay, lan, transport, security, software-factory] +--- + +# Paseo Transport Reference — Relay for People, Secured LAN for Automation + +## Decision + +Use a hybrid transport model: + +```text +Human interactive access — laptop, phone, off-LAN + Paseo Desktop/mobile/CLI + │ E2E-encrypted relay pairing + ▼ + Paseo daemon on each enrolled execution node + +Internal automation — controller and worker daemons on trusted infrastructure + Factory controller / SDK / CLI + │ authenticated, encrypted, firewall-restricted private path + ▼ + Paseo worker daemons +``` + +## Responsibilities + +| Transport | Purpose | Default users | +|---|---|---| +| Paseo relay | interactive control on a laptop/phone, including outside the home LAN | family operators and remote clients | +| Local loopback | same-host CLI, provider processes, and local SDK controller | daemon host itself | +| Secured private LAN / VPN path | machine-to-machine factory orchestration once each worker node is enrolled | FamReynaServer controller and dedicated worker daemons | + +## Security baseline + +- Retain relay for interactive remote access; pairing offers are trust anchors and are never stored in project files, terminal history, logs, or task prompts. +- Do not expose an unauthenticated Paseo daemon on the home LAN. +- A direct private endpoint requires a strict host/listener scope, daemon password authentication, firewall policy restricted to controller nodes, and encrypted transport (WSS behind an authenticated reverse proxy or a private VPN such as Tailscale). +- Keep the public Web UI separate from direct worker control: browser access is behind Authentik; worker endpoints remain non-public. +- Each server still needs its own Paseo daemon and locally available providers. A relay/Desktop link does not make an arbitrary LAN device an execution worker. + +## Our-project / server / Paseo-project / workspace model + +Our **projects** are the top-level family/software records. A Paseo **project** is only one local implementation unit because it names a directory or Git checkout on one daemon host. Therefore each of our projects is a collection of server-scoped Paseo projects: + +```text +Our project: EMI + ├── Mac mini `.102` + │ ├── Paseo project: EMI mobile/client repo A + │ ├── Paseo project: EMI web/admin repo B + │ └── Paseo project: EMI shared/content repo C + ├── EMI server `.119` + │ └── Paseo project: EMI API/backend repository + └── Coordinated cross-server work + ├── worktree workspace + agents on `.102` + ├── worktree/test workspace + agents on `.119` + └── human approval before deploy/restart +``` + +So **EMI is our project**, while each `[server, repository]` pair is one concrete native Paseo project inside it. Each feature, review, incident, or release is a workspace beneath that server-scoped Paseo project. A cross-server change gets a coordinator task plus separate node-local workspaces; it is not one shared filesystem workspace. + +### Ownership boundary + +Paseo Desktop and the hosted Web UI are **execution-node views**. They accurately show the agents, workspaces, terminals, and schedules known to one selected daemon (plus any hosts manually added to that client), but they are not the authoritative whole-project model. + +**We manage the full picture of each of our projects**: its purpose, server placements, repositories, Paseo projects, workspaces, services, deployment relationships, cross-server dependencies, and approval state. Paseo is one of the operational systems that reports into and executes parts of that project picture. + +**Live inventory check:** Mac mini currently has one registered `EMI` workspace at `~/Projects/EMI`; EMI server `.119` does not yet have a Paseo daemon, so its backend cannot yet be a native Paseo project. Enrol `.119` before creating backend workspaces or allowing backend deployment tasks. + +## Paseo status → project-manager trigger model + +`paseo status` is a **pull** command. A Paseo schedule or heartbeat can wake a Paseo agent on the same daemon, but it does not natively wake Hermes/the project manager when an arbitrary daemon status changes. + +Use two modes: + +1. **Near-term, low-complexity change monitor:** a deterministic Hermes monitor script polls the enrolled daemon(s) on a bounded cadence, normalizes only meaningful fields (daemon reachability, providers, agents needing permission/error, workspaces, schedules), and emits stable sorted JSON. Hermes `monitor_script` hashing suppresses runs when output is unchanged and wakes a reasoning run only on a diff. This is not a wasteful unconditional status cron. +2. **Long-term, event-driven factory bridge:** a small controller service on each execution node (or one controller with secured connections to every node) uses `@getpaseo/client` SDK subscriptions for agent/workspace/provider/timeline events. On a meaningful transition it POSTs an HMAC-signed event to a Hermes webhook subscription. Hermes then updates the full project record and decides whether to notify, create a task, or request approval. + +The bridge must never turn a status transition directly into merge/deploy/restart authority. Events become project-manager input; cross-server policy and human gates remain outside Paseo. + +## Planned rollout + +1. Keep the working relay configuration unchanged. +2. Publish the FamReynaServer Web UI only through `paseo.reynafamily.com` behind Authentik. +3. Prove a read-only local controller-to-daemon operation. +4. Add a secured private endpoint for the first worker only after its authentication, firewall, and provider readiness are verified. +5. Use direct transport for service automation; keep all merge, deploy, restart, publish, and permission decisions human-gated. + +## Web UI deployment — completed 2026-08-17 + +`https://paseo.reynafamily.com` serves the FamReynaServer Paseo Web UI through Authentik. + +```text +Browser + → Cloudflare/Caddy HTTPS + → Authentik Embedded Outpost (login/authorization) + → Caddy bridge bound only to 172.25.0.1:6768 + → Paseo daemon at 127.0.0.1:6767 +``` + +The Paseo daemon remains loopback-only. Its Web UI is enabled with `features.webUi.enabled: true` and accepts the public host `paseo.reynafamily.com`. The Caddy bridge is bound only to the Authentik Docker network gateway, not the home LAN. Authentik's `Paseo Web UI` ProxyProvider uses `mode=proxy`, `cookie_domain=reynafamily.com`, and the embedded outpost. Its OAuth callback and grant configuration was verified against the working Hermes Dashboard pattern. + +## Operational guidance + +The Paseo Desktop host roster is app-local state, not a central CLI registry. For an ad-hoc remote CLI command, use a pairing offer only in the process environment for that single command. For durable software-factory automation, use a managed private endpoint and an explicit inventory of enrolled worker nodes. diff --git a/projects/paseo_software_factory_blueprint_2026-08-17.md b/projects/paseo_software_factory_blueprint_2026-08-17.md new file mode 100644 index 0000000..f61a85e --- /dev/null +++ b/projects/paseo_software_factory_blueprint_2026-08-17.md @@ -0,0 +1,228 @@ +--- +Date: 2026-08-17 +Author: Adolfo Reyna + Hermes +Status: superseded for day-to-day operation by `paseo_software_factory_working_model_2026-08-17.md`; retained as verified discovery/history +Tags: [paseo, software-factory, continuous-development, orchestration, home-infra] +Supersedes: the implementation approach (not history) in `paseo_centralized_agents_2026.md` +--- + +# Paseo Software Factory — Continuous Development Blueprint + +## Executive decision + +Use **Paseo as the agent/workspace control plane**, not as a new custom FastAPI task server. The prior design proposed building a separate service at `.110`; Paseo already has the essential primitives: durable workspaces, agents, isolated worktrees, provider routing, terminal/script supervision, iterative verifier loops, recurring schedules, and a Desktop control surface. + +The factory should be **Git-first and project-scoped**: + +```text +Intake → triage/plan → isolated implementation → automated verification + → independent review → human approval → merge/deploy → monitored follow-up +``` + +Paseo coordinates the agents in that flow. Git/Gitea remains the source of truth for code, pull requests, and release history. Hermes is the human-facing dispatcher and policy layer. + +## What is actually available today + +Discovery on 2026-08-17 found: + +| Host | Intended role | Paseo state | Factory use now | +|---|---|---|---| +| Mac mini M4 `.102` | control plane, coding, image work, native Paseo browser | **Paseo 0.2.5 daemon healthy**; relay connected; Codex, OpenCode, Pi, Hermes available; browser tools enabled | **Ready** | +| iMac `.124` | persistent Chrome / browser fallback | Paseo 0.2.3 CLI exists, but daemon is **stale/unreachable** | Re-enrol before use | +| FamReynaServer `.110` | Docker, Compose, Ollama, build/deploy; shared Paseo control host | **Paseo 0.4.0 daemon healthy on loopback**, relay connected, and an external Paseo Desktop/laptop client is attached; Codex, OpenCode, and Pi are available | **Ready for a local pilot**; add project/workspace policy before production work | +| EMI server `.119` | EMI APIs | reachable by SSH; Paseo CLI absent | Install/enrol before use | +| AeroPi5 `.126` | light checks and low-impact cron | reachable by SSH; Paseo CLI absent | Install/enrol before use | + +### Important correction to the initial assumption + +The Mac mini CLI can target a daemon with `--host`, but it does **not** automatically gain execution access to every LAN server. Each worker must run a reachable, paired Paseo daemon (or be deliberately reached through a secured SSH tunnel). Today, only the Mac mini is an operational Paseo execution node. + +All observed daemons use loopback `127.0.0.1:6767`; that is the right security default. Do **not** expose this port to the LAN. Remote CLI access should use an SSH local-forward, e.g. a local endpoint forwarding to the target's `127.0.0.1:6767`, rather than binding a Paseo daemon publicly. + +## Operating model + +### 1. Stable roles + +| Factory role | Responsibility | Paseo primitive | Default placement | +|---|---|---|---| +| **Dispatcher** | converts an approved request into a bounded task and picks a project/worker | Hermes + `paseo run` | Mac mini `.102` | +| **Planner** | reads the repo, states acceptance criteria, risks, and test plan; makes no edits | analysis agent | Mac mini initially | +| **Implementer** | changes code only in an isolated branch/worktree | `workspace create --isolation worktree`, agent | capability-matched node | +| **Verifier** | executes deterministic tests/builds and checks acceptance criteria | `paseo loop --verify-check` | distinct provider/node where practical | +| **Reviewer** | independently reviews diff, tests, migrations, and deployment risk; makes no edits | audit agent | different model family/provider | +| **Release steward** | prepares deployment evidence and awaits explicit human approval | agent + project scripts | target deploy node | +| **Monitor** | runs bounded post-merge/build checks and reports regressions | `schedule` or `heartbeat` | lightweight node after enrolment | + +No agent receives authority to merge, deploy, restart a production service, publish, or send external communication merely because it completed implementation. Those are explicit approval gates. + +### 1a. Agent, session, and workspace model + +The factory treats these as distinct operational objects: + +| Object | Factory meaning | +|---|---| +| **Our project** | The complete cross-server system, such as EMI. It owns server placements, repositories, services, dependencies, and approval state. | +| **Paseo project** | One repository/directory on one daemon host. | +| **Workspace** | One task place within that server-local Paseo project: a main checkout or isolated worktree. | +| **Agent** | A durable Paseo worker identity with a provider/model, workspace placement, timeline, parentage, labels, lifecycle, and archive record. | +| **Session** | The active provider conversation/runtime used by that agent. Paseo can close/release it while retaining the durable agent record for later resume. | +| **Tab** | A per-client UI view. Closing a tab is not a reliable project-lifecycle signal. | + +Example: + +```text +Our project: EMI + └── Paseo project: EMI client repository on Mac mini + └── Workspace: feature/prayer-reminders (isolated worktree) + ├── Agent: Planner → active provider session: plan/context + ├── Agent: Implementer → active provider session: code/test context + └── Agent: Reviewer → active provider session: diff/risk context +``` + +Use separate durable agents for the planner, implementer, verifier/reviewer, and release steward when their responsibilities or provider constraints differ. Preserve their final evidence in the project record, then archive completed temporary agents deliberately. Do not confuse an `idle` agent with a completed project change, or a closed provider session with a deleted agent. + +### 2. Project contract + +Each factory-enabled repository should add these versioned files: + +```text +AGENTS.md # project safety boundaries and local conventions +paseo.json # named scripts: test, lint, typecheck, build, dev, health +.docs/factory.md # architecture, release and verification contract +.github/ or forge CI config # independent server-side checks when applicable +``` + +`paseo.json` should provide stable, non-interactive commands. Example policy, not a pasted configuration: + +| Script | Required behavior | +|---|---| +| `lint` | exits non-zero for style/static failures | +| `typecheck` | exits non-zero for type failures | +| `test` | deterministic automated test suite | +| `build` | production build without publishing/deploying | +| `health` | read-only service health check, when applicable | + +The factory uses those names rather than improvising commands in every task. + +### 3. Per-change lifecycle + +1. **Intake / classify** — Hermes records goal, project, constraints, acceptance tests, and side-effect boundaries. Small changes may skip a separate planner; ambiguous/high-risk work gets a planner or two-agent committee. +2. **Plan** — planner produces a concise implementation and verification plan. No edits. +3. **Isolate** — create a Paseo worktree from the confirmed base branch. One worktree/branch per change. +4. **Implement** — implementation agent changes only its worktree, runs project scripts, and reports exact files/tests/results. +5. **Verify** — a bounded Paseo loop runs objective checks plus an independent verifier. It is capped by both iterations and wall-clock time; failures create a clear handoff, never an endless loop. +6. **Review** — a different provider/model family checks the diff against the original acceptance criteria and flags security, migration, regression, and scope drift. +7. **Approval gate** — Hermes presents the evidence: diff/PR, commands and results, review verdict, rollout/rollback notes. The human decides whether to merge/deploy. +8. **Release / monitor** — after explicit approval, the target-specific release agent performs the requested action. A bounded post-release monitor verifies health and reports only changes/failures. + +## Routing policy + +Start with explicit routing rather than autonomous hardware selection. The dispatcher must name the workspace and worker node in every task. + +| Work type | Primary node after enrolment | Fallback | Notes | +|---|---|---|---| +| ordinary code, planning, review | Mac mini `.102` | local Mac mini second provider | current ready path | +| UI/visual design | Mac mini `.102` | provider selected for design | browser/image support available locally | +| browser tasks | Paseo Desktop native browser on `.102` | iMac `.124` after daemon recovery | workspace-scoped browser; iMac only when persistent Chrome profile is required | +| Docker/Compose/image builds | FamReynaServer `.110` | Mac mini when safe | segregate from production deployment | +| EMI API changes | EMI server `.119` | Mac mini test clone | deploy only with explicit approval | +| light scheduled checks | AeroPi5 `.126` | Mac mini | keep workload/memory caps low | +| heavy local models | FamReynaServer `.110` | Mac mini provider | isolate model workloads from control plane | + +Provider choices must be read from `~/.paseo/orchestration-preferences.json` at dispatch time, then validated against `paseo provider ls` on the actual target. Current preferences name OpenCode for implementation/audit and Claude models for planning/UI, but Claude is not currently available on the Mac mini daemon; routing must fall back to an actually available provider or surface the gap. + +## Continuous-development lanes + +Do not start with a single open-ended agent. Operate three deliberately bounded lanes: + +### A. Change lane — event driven + +Used for a user-approved feature, bug, or maintenance item. + +- Creates a plan + isolated implementation worktree. +- Verifies with project scripts and an independent review. +- Ends at an approval gate. + +### B. Quality lane — scheduled, read-only by default + +Runs on a sensible cadence per repository (for example, nightly or on weekdays), with a fixed prompt: + +- fetch/read current main branch only; +- run `lint`, `typecheck`, `test`, and `build` where supported; +- summarize deltas and failures; +- create **no edits, PRs, releases, or restarts**. + +A failing quality run creates a proposed remediation task for review; it does not self-deploy a fix. + +### C. Dependency/security lane — scheduled, review-first + +Checks dependencies, CI failures, stale branches, and service-health evidence. It may prepare a worktree and a proposed patch, but it does not merge or deploy. Use a shorter cadence only for projects with low-cost, reliable checks. + +## Paseo primitives to standardize + +| Need | Standard primitive | Guardrail | +|---|---|---| +| isolated change | `paseo workspace create --isolation worktree --mode branch-off` | confirm base branch and project first | +| implementation/review task | `paseo run --workspace …` | prompt includes acceptance criteria, scripts, and side-effect limits | +| follow-up to same agent | `paseo send …` | retain continuity only for the same change | +| test-fix iteration | `paseo loop run` | include `--verify-check`, cross-provider verifier, `--max-iterations`, `--max-time`, and `--archive` | +| fresh periodic quality run | `paseo schedule create` | bounded prompt; explicit `--cwd`, provider, timezone, expiry/max runs | +| status nudge for a current agent | `paseo heartbeat create` | not a replacement for a schedule; finite lifetime | +| project servers/tests | `paseo script` backed by `paseo.json` | scripts must be safe to start/stop and observable | + +## Remote-node enrolment order + +This is a proposed rollout, not yet executed. + +1. **Prove the factory locally on Mac mini.** Select one low-risk repository; establish its scripts and complete one change lane manually. +2. **Recover iMac `.124`.** Inspect why its existing Paseo PID is stale; only then start/upgrade its daemon and pair it to Paseo Desktop. Verify browser-specific work in a new workspace. +3. **Enrol FamReynaServer `.110`.** Install a compatible Paseo CLI/daemon, run as its service user, pair to Desktop, and verify a harmless Docker/build task. +4. **Enrol EMI `.119`.** First define application-specific deployment/restart permissions and a read-only health script. Then install/pair Paseo and prove a test-only task. +5. **Enrol AeroPi5 `.126`.** Add only low-memory monitoring/cron tasks after resource limits and cleanup behavior are defined. + +For each node, require this evidence before it joins a production lane: + +```text +paseo status --json # daemon reachable and relay healthy +paseo provider ls --json # actual provider availability +paseo workspace create … # isolated workspace works +one read-only/build task # result and logs verified +one policy test # agent refuses/halts at forbidden side effect +``` + +## Security and reliability policy + +- Keep all daemons on loopback. Pair through the relay/Desktop or use authenticated SSH forwards; never open `6767` on the LAN. +- Keep credentials in the node's approved credential store; prompts, logs, PRs, and task summaries must never contain secrets. +- A task prompt always declares allowed directories, allowed commands, forbidden side effects, expected output, and verification commands. +- Production has separate **test**, **prepare**, and **execute** tasks. The execute task is created only after the user approves the prepared evidence. +- Use worktrees, short-lived branches, server-side CI, and rollback notes. Do not let a scheduled agent modify `main` directly. +- Prefer a different provider/model family for review or verification when available. A same-provider verifier is a temporary fallback, not the target architecture. +- Never blindly restart a Desktop-managed Paseo daemon; restart interrupts active work. Diagnose first and get approval. +- Each remote execution role has a resource budget: max concurrent agents, max runtime, and permitted script list. + +## First pilot: definition of done + +Pilot one repository on the Mac mini before enabling continuous schedules: + +- [ ] Project `AGENTS.md`, `paseo.json`, and factory verification contract are committed. +- [ ] A planning agent produces a testable plan without edits. +- [ ] An implementation agent completes one isolated-worktree change. +- [ ] `lint`, `typecheck`, `test`, and `build` run with recorded exit status. +- [ ] A separate review agent evaluates the diff. +- [ ] Human reviews/approves the merge or deliberately rejects it. +- [ ] A finite, read-only quality schedule is created, run once, and its output is useful. +- [ ] The schedule has a documented owner, cadence, stop condition, and cost/resource cap. + +Only after that pilot should the factory add remote worker nodes or an autonomous remediation loop. + +## Decisions requested before implementation + +1. Choose the pilot repository (recommended: a low-risk, testable project on the Mac mini rather than an active production service). +2. Choose the human approval point: PR merge only, or merge plus deployment. +3. Confirm whether remote nodes should be paired directly in Paseo Desktop, managed through secure SSH forwards, or both. +4. Approve the enrolment order and the maximum autonomy tier for each node. + +## Immediate next action once approved + +Create the pilot project's factory contract and run one complete **plan → worktree → implement → verify → review → approval** change lane. Do not create a recurring schedule until that lane has produced trustworthy evidence. diff --git a/projects/paseo_software_factory_working_model_2026-08-17.md b/projects/paseo_software_factory_working_model_2026-08-17.md new file mode 100644 index 0000000..8b22cec --- /dev/null +++ b/projects/paseo_software_factory_working_model_2026-08-17.md @@ -0,0 +1,219 @@ +--- +Date: 2026-08-17 +Status: working plan — inventory started; no new Paseo workspaces, agents, schedules, or remote daemons created by this document +Supersedes: `paseo_software_factory_blueprint_2026-08-17.md` as the day-to-day operating model +Related: + - paseo_relay_and_lan_transport_reference_2026-08-17.md + - paseo_deep_research_2026-08-17.md +Tags: [paseo, software-factory, projects, personas, workspaces, continuous-development] +--- + +# Paseo Software Factory — Consolidated Working Model + +## 1. Decision: what owns the full picture + +**Our projects are the authoritative units of work.** Each is a cross-server system with a purpose, repositories, services, dependencies, approvals, and history. + +Paseo is the execution layer inside a project. A native Paseo project is only one repository/directory on one daemon host; a workspace is a task place beneath it; an agent is a durable worker; its session is the currently loaded provider runtime. + +```text +Our project: EMI + ├── Server + Paseo project: Mac mini / EMI Expo app + │ └── Workspace: feature/prayer-reminders worktree + │ ├── Planner agent → planning session + │ ├── Implementer agent → coding/test session + │ └── Reviewer agent → risk/diff session + ├── Server + Paseo project: Mac mini / EMI website + ├── Server + Paseo project: Mac mini / EMI Backend checkout + └── Server + Paseo project: EMI server / deployed API checkout +``` + +Paseo Desktop and the Paseo Web UI are daemon/client views. They are useful operational tools, but neither is the authoritative cross-server project manager. + +## 2. Non-negotiable operating rules + +1. **Project record first.** Every task names our project, affected server(s), repository/Paseo project, acceptance criteria, and side-effect boundary. +2. **One source-changing task, one worktree workspace.** Do not let independent agents edit a shared main checkout. +3. **Roles are agents, not vague prompts.** Planner, implementer, verifier, reviewer, release steward, and monitor have distinct duties and permissions. +4. **Evidence before progression.** Test/build results and review evidence move work forward; `idle` only means an agent turn ended. +5. **Human gates own high-impact operations.** Merge, deploy, restart, publish, external send, credential changes, and migrations require explicit approval. +6. **Paseo status feeds our project manager; it does not define project status.** A status event can create a review/notification request, never autonomous production authority. +7. **Target host is the truth.** Provider/model availability, repository path, tests, and scripts must be checked on the daemon that will execute the task. + +## 3. The standard change lane + +```text +Intake + → project mapping + → plan (no edits) + → isolated worktree + → implementation + → deterministic verification + → independent review + → approval + → merge/deploy execution + → bounded monitoring and recorded closeout +``` + +### Required task record + +```text +Our project: +Affected server(s): +Paseo project/repository: +Workspace/branch: +Goal and acceptance criteria: +Allowed paths and commands: +Required checks: +Forbidden side effects: +Evidence required at completion: +Approval gate: +``` + +## 4. Standard agent personas + +These are reusable responsibility templates, not permanent bots that run without a task. Create them in a specified workspace, label them with our project and role, and archive temporary agents after their evidence is recorded. + +| Persona | Default mode | Responsibilities | Must not do | Completion evidence | +|---|---|---|---|---| +| **Project steward** | Hermes/project-manager layer | maps task to our project, servers, repos, dependencies, and approvals; synthesizes evidence | edit a repo by default; impersonate a deployment authority | updated project record and next approved state | +| **Planner** | read-only / no edits | inspect repo and service context; produce a bounded plan, risks, tests, rollback notes | edit, commit, deploy, restart, create credentials | acceptance checklist and named checks | +| **Implementer** | isolated worktree write | make scoped changes; run named project scripts; report exact diff | merge, deploy, alter production config, expand scope | changed files, branch, commands, exit outcomes | +| **Verifier** | objective checks | run lint/typecheck/test/build/health in the workspace; report raw outcomes | silently fix source unless given a separate implementation task | command, exit status, failure excerpts | +| **Reviewer** | no edits; preferably distinct provider/model | inspect diff against plan; identify correctness, security, migration, and scope risk | modify code, approve own implementation, deploy | verdict with blocking/non-blocking findings | +| **Release steward** | prepare-only by default | prepare release checklist, environment delta, rollout/rollback plan, post-release health check | execute merge/deploy/restart without explicit approval | approval-ready release evidence | +| **Deployment executor** | explicit one-shot task | execute only a human-approved, named deployment or restart; verify target health | extend authorization, change unrelated config | exact action/result and health verification | +| **Monitor** | read-only, finite | compare normalized state, CI, health, and scheduled quality results | self-heal production; create unbounded loops | change-only report or silent no-change | +| **Incident triager** | read-only first | collect logs/status, identify blast radius, propose reversible containment | restart/delete/change production by default | incident summary, evidence, proposed next action | + +### Persona prompt contract + +Every agent prompt starts with the task record and ends with explicit constraints. Example labels: + +```text +our-project=emi +paseo-role=implementer +server=macmini-102 +repo=emi-expo +change=feature-prayer-reminders +``` + +Use structured final output for planners/reviewers where practical, for example: summary, acceptance verdict, tests run, blockers, risks, and next required approval. + +## 5. Initial project collection and Paseo setup inventory + +This is an initial verified collection, not a claim that all projects are fully inventoried. + +### A. EMI — active multi-repository ministry application and services + +**Our-project scope:** mobile/client, public website, backend/API operations, ministry/media integrations, and the related human approval/deployment process. `api.emmint.com` is a shared-infrastructure dependency: its Caddy route lives on FamReynaServer `.110`, outside EMI project mutation authority. + +| Server | Verified repository / service | Current state | Proposed Paseo project setup | Initial agent personas | +|---|---|---|---|---| +| Mac mini `.102` | `/Users/adolforeyna/Projects/EMI/expoApp` — GitHub origin; branch `master`; local changes present | existing parent EMI workspace, but no repo-specific factory workspace | `EMI · Expo App` local workspace; worktree per mobile change | planner, Expo implementer, mobile verifier, reviewer | +| Mac mini `.102` | `/Users/adolforeyna/Projects/EMI/website` — GitHub origin; branch `master` | discovered as third EMI repo | `EMI · Website` local workspace; worktree per website change | planner, web implementer, web verifier, reviewer | +| Mac mini `.102` | `/Users/adolforeyna/Projects/EMI/EMI-Backend` — branch `codex/bible-verse-notes`; local changes present; no configured `origin` | local development checkout; backend safety notes live in parent `AGENTS.md` | `EMI · Backend (Mac mini)` workspace for local/repro work only | backend planner, backend implementer, integration verifier | +| EMI server `.119` | documented production EMI API at `:3001`; deployment checkout path still needs discovery | Paseo daemon healthy on loopback; OpenCode installed/detected; Ollama Cloud provider credential/setup remains unverified | after runtime/service discovery: `EMI · Backend Production` local workspace, then worktrees for safe changes | release steward, deployment executor, health monitor | + +**EMI first setup steps:** + +1. Preserve and inspect existing local changes before creating any worktree or agent. +2. Create separate local workspaces for Expo, website, and backend checkout on the Mac mini. Do not use the parent `/Users/adolforeyna/Projects/EMI` directory as the source-changing workspace. +3. Add repo-local `paseo.json` only after discovering each repo's actual lint/typecheck/test/build commands. +4. Enrol `.119` with a read-only discovery task before defining any production backend workspace or deployment persona. +5. First cross-server change uses two workspaces: one Mac mini client workspace and one EMI-server backend/test workspace; release remains approval-gated. + +### B. Reyna CLI / private family operations — active Mac mini service platform + +| Server | Verified repository / service | Current state | Proposed Paseo project setup | Initial agent personas | +|---|---|---|---|---| +| Mac mini `.102` | `/Users/adolforeyna/Projects/reyna-cli`; Gitea origin; branch `main` | active privacy-host migration target; local ignored/untracked device files exist | `Reyna CLI · Main` local workspace; isolated worktree for every code change | planner, privacy-boundary implementer, test verifier, security reviewer, release steward | + +**Special constraint:** this project controls privacy-sensitive macOS capabilities. Default agent tasks are read-only or worktree-scoped; TCC, credentials, LaunchAgents, Apple data access, and LAN service exposure have separate human approval gates. + +### C. Tactility — active ESP32 platform and runtime apps + +| Server / target | Verified repository / service | Current state | Proposed Paseo project setup | Initial agent personas | +|---|---|---|---|---| +| Mac mini `.102` | `/Users/adolforeyna/Projects/electronics/tactility/tactility`; Gitea origin; branch `main` | platform/firmware source | `Tactility · Platform` local workspace; worktree for platform changes | firmware planner, platform implementer, build verifier, hardware reviewer | +| Mac mini `.102` | `/Users/adolforeyna/Projects/electronics/tactility/tactility_apps`; Gitea origin; branch `main` | external app repository; device deploy guidance is versioned in `AGENTS.md` | `Tactility · Apps` local workspace; one app worktree per change | app planner, app implementer, ELF/symbol verifier, device QA agent | +| ESP32 boards | devices `.112`, `.111`, `.123` and related fleet | devices are deployment targets, not Paseo daemon hosts | tracked as project assets / target environments, not Paseo projects | deployment executor only after device-specific approval | + +**Special constraint:** a successful compile is insufficient. A Tactility change requires build evidence, undefined-symbol verification, and approved device deployment plus screenshot/behavior verification. + +### D. Family Voice Context and Speaker Identification — active privacy-first prototype + +| Server | Verified repository / service | Current state | Proposed Paseo project setup | Initial agent personas | +|---|---|---|---|---| +| Mac mini `.102` | `/Users/adolforeyna/Projects/voice-speaker-id`; branch `main` | offline CLI prototype; raw audio excluded from Git; no listener or firmware change enabled | `Family Voice · Speaker ID` local workspace; isolated worktree for code changes | privacy planner, ML experimenter, evaluation verifier, privacy/security reviewer | +| ESP32/iPhone devices | audio inputs | project assets; no always-listening rollout approved | no direct Paseo project | device integration planner only | + +**Special constraint:** agents must not treat cached recordings as approved enrollment data, upload raw audio, or turn speaker recognition into authorization. Human clip review is part of the acceptance criteria. + +### E. reMarkable Hermes Communication — active multi-host device application + +| Server / target | Verified component | Current state | Proposed Paseo project setup | Initial agent personas | +|---|---|---|---|---| +| iMac `.124` | Paper Pro SDK and Qt/cross-compile work documented under `~/remarkable-dev` | Paseo daemon currently stale/unreachable; repo/path discovery required | after recovery: `reMarkable · App` local workspace | app planner, Qt implementer, device deployment verifier | +| AeroPi5 `.126` | logger/poller/UDP listener history | inventory says watcher is currently broken/needs verification | after enrolment: `reMarkable · Watcher` local workspace | incident triager, watcher implementer, service verifier | +| Paper Pro `.132` | device-side sidecar + custom app target | device target, not a Paseo host | tracked as target environment | deployment executor only with explicit device safety approval | + +**Special constraint:** do not restart xochitl, alter device system files, or overwrite documents without an explicit approved task and rollback path. + +## 6. What we set up first — order of work + +### Phase 1: establish our project registry + +1. Maintain one top-level definition per active **our project** under `projects/factory/.md`, indexed by `projects/factory/README.md`. +2. Read `projects/FACTORY_OPERATIONS.md` before cross-server project-management work; repository-local `AGENTS.md` remains authoritative for source changes. +3. Record server placements, repositories, services, target devices, required approvals, and current factory maturity. +4. Add a stable project key, e.g. `emi`, `reyna-cli`, `tactility`, `family-voice`, `remarkable-hermes`. +5. Do not duplicate agent timelines in the brain; store concise task IDs, branches, evidence links, and decisions only. + +### Phase 2: establish native Paseo project/workspace roots on the Mac mini + +For each verified repository, first create or name one local workspace representing its main checkout. Then create worktree workspaces only for approved changes. + +Current installed CLI does not expose the newer upstream `paseo project` namespace. Use `paseo workspace create --isolation local --path --title ` as the compatible registration path, and verify with `paseo workspace ls --json`. + +### Phase 3: add factory contracts repo by repo + +Before first source-changing agent, discover the real commands and add a minimal audited `paseo.json` contract: + +```text +lint static/style checks, if the repo has one +typecheck type/static analysis, if applicable +test deterministic focused/full test suite +build build without deployment/publishing +health read-only service check, if applicable +``` + +No generic `paseo.json` template is copied blindly across Node, Expo, ESP-IDF, Python, and Qt projects. + +### Phase 4: enrol remote execution nodes by project need + +1. **EMI server `.119`** — read-only discovery first: actual backend checkout, runtime, service manager, CI/deploy procedure, health command, and existing permissions. Then install/pair Paseo only after confirming the service-user scope. +2. **iMac `.124`** — recover stale Paseo daemon for reMarkable build/app work and browser fallback. +3. **AeroPi5 `.126`** — enrol only after resource caps and reMarkable watcher ownership are defined. +4. **FamReynaServer `.110`** — use for Docker/build work after a concrete project checkout and policy are identified; do not mistake its empty Web UI node for the Mac mini project workspace. + +### Phase 5: continuous status, then event bridge + +Start with a change-detecting, read-only status monitor that wakes Hermes only when normalized Paseo state changes. After stable project mapping exists, build the SDK event bridge that submits signed events to Hermes webhooks. Neither mode gets deployment authority. + +## 7. Definition of ready for a project collection + +A project is factory-ready only when all applicable conditions are true: + +- [ ] Our project record names all server placements, repositories, services, and target environments. +- [ ] Each relevant host has a healthy Paseo daemon and a verified provider catalog. +- [ ] Each repository has a named local Paseo workspace and an isolated-worktree procedure. +- [ ] `AGENTS.md` and a minimal project-specific `paseo.json` contract are understood and verified. +- [ ] Planner, implementer, verifier, reviewer, and release-steward persona prompts are mapped to the project. +- [ ] Tests/build/health checks are named and reproducible. +- [ ] Approval, rollout, and rollback boundaries are written down. +- [ ] Status monitoring is read-only and change-detecting. + +## 8. Immediate practical next step + +Begin with the **EMI collection** because its three Mac mini repositories and production backend relationship make the model concrete. First perform only read-only repository discovery: determine each repo's scripts/tests/current worktree state, identify the exact `.119` production checkout and health commands, and create the EMI project record. Do not create agents, workspaces, or schedules until that discovery is reviewed. diff --git a/projects/personal-os-wiki-integration-plan_2026-09-03.md b/projects/personal-os-wiki-integration-plan_2026-09-03.md new file mode 100644 index 0000000..d67bd6c --- /dev/null +++ b/projects/personal-os-wiki-integration-plan_2026-09-03.md @@ -0,0 +1,589 @@ +--- +date: 2026-09-03 +author: Hermes +type: workflow-design-plan +status: proposed +tags: [brain, hermes, workflow, work-state, review, herdr, gitea, reminders] +related: + - areas/platform.md + - areas/operations/services_inventory.md + - projects/FACTORY_OPERATIONS.md + - projects/factory/README.md + - projects/para_brain_mcp_server.md + - projects/paseo_software_factory_working_model_2026-08-17.md +--- + +# Personal OS Wiki Integration Implementation Plan + +> **For Hermes:** Treat this as a design and review document. Do not implement any phase until the user approves the relevant decision gates. When implementation is approved, use the `subagent-driven-development` workflow task-by-task for code-bearing work. + +**Goal:** Add an explicit, auditable work-state layer to the existing Reyna family workflow while preserving the Markdown brain, existing project/factory records, Git/Gitea, Hermes, Herdr, and Apple-facing tools as their current authorities. + +**Architecture:** Adopt the useful boundary from `lawyer112/personal-os-wiki`: durable Markdown knowledge is not the same thing as current execution state. Start with a small local structured state ledger plus Markdown evidence links, rather than deploying the upstream Next.js/Postgres/Wiki stack. Hermes and Herdr become controlled clients of that ledger; existing tools remain the places that execute work, store code, publish, send, or notify. + +**Tech Stack (proposed, incremental):** Existing `~/brain` Markdown vault and Gitea backup; Hermes Agent and existing profiles/cron; Herdr as human control surface; repository-local GitHub/Gitea workflows; Reyna CLI native privacy host for Apple adapters; initially a local SQLite/JSON export work-state component only if Phase 1 is approved; optional read-only search/retrieval index later. + +--- + +## 1. Executive Recommendation + +### Recommendation + +Adopt the **operating ideas**, not the upstream application: + +1. Separate **work state** from long-term memory and durable notes. +2. Make every executable task have a concrete `nextAction`, `definitionOfDone`, owner/lease policy, evidence requirements, and an explicit review gate. +3. Use a narrowly scoped structured execution ledger for claims, heartbeats, status transitions, review decisions, and notification delivery records. +4. Keep durable narrative, evidence explanations, decisions, and human-readable handoffs in the existing Markdown brain. +5. Treat Apple Reminders, WhatsApp, desktop notifications, cron, Herdr, Paseo, GitHub, and Gitea as adapters or execution surfaces—not a competing task truth. +6. Keep retrieval keyword/metadata/link-first. Evaluate semantic/vector retrieval only after a real recall benchmark demonstrates a gap. + +The first useful release should be a **small, local, reversible overlay**. It should not introduce a public service, Docker stack, PostgreSQL instance, duplicate Wiki, migration of existing notes, automatic task generation, or autonomous side effects. + +### Decision boundaries + +| Decision | Recommended boundary | +|---|---| +| Durable knowledge | Existing Markdown brain remains authoritative. `areas/platform.md` remains the technical tracker; `areas/operations/services_inventory.md` remains the human-facing service catalog; project/factory documents remain cross-server project records. | +| Work state | A proposed local structured ledger owns only live execution state: task lifecycle, claim leases, heartbeats, review status, notification delivery markers, and links to evidence. It is not a replacement wiki or personal memory store. | +| Stable user context | Hermes persistent memory remains for durable preferences, safety constraints, and stable environment facts—not unfinished work, task status, leases, or approvals. | +| Code and change evidence | Repository Git history, PRs/issues where used, tests, builds, and source `AGENTS.md` remain authoritative for software changes. The ledger links to this evidence; it never substitutes for it. | +| Cross-server project management | `projects/FACTORY_OPERATIONS.md` and `projects/factory/<project-key>.md` remain authoritative. Paseo/Herdr are execution and control views, not a project-record replacement. | +| Notification delivery | Apple Reminders, WhatsApp, desktop notifications, and future adapters only deliver or mirror a nudge. Completing a reminder must never close a work item. | +| High-impact actions | Human approval remains mandatory for merge, deploy, restart, publishing, external send, credential changes, production configuration, TCC/privacy changes, destructive operations, and migrations. A state transition or agent lease does not authorize these effects. | + +### Adoption decision + +Proceed through Phase 0 and Phase 1 only if the user approves the proposed authority model and the initial state vocabulary. Do not evaluate a separately hosted dashboard/service until the local overlay has been used successfully for a limited pilot. + +## 2. Inspected Current State and Planning Assumptions + +This plan is grounded in read-only inspection performed on 2026-09-03. Assertions labeled “needs verification” are intentionally not treated as live facts. + +### Existing workflow facts + +1. The brain is an active PARA-style Markdown vault at `/Users/adolforeyna/brain`. Its index explicitly separates Projects, Areas, Resources, Archives, and Inbox. `brain/rules.md` directs uncertain material to `brain/inbox/`, requires YAML frontmatter for new notes, and uses WikiLinks. +2. The brain’s service inventory calls the brain Markdown source of truth for family, projects, operations, EMI, maintenance, finances, media, and journals. It marks `areas/platform.md` as the canonical technical tracker. +3. `areas/platform.md` identifies the Mac mini private-host layer, Hermes, the Reyna CLI native privacy host, local services, existing cron, and Gitea-backed projects. It records a deliberate migration from MacMiniMCP to Reyna CLI for privacy-sensitive Apple operations. It also says remaining native Reminders coverage must be verified before relying on it. +4. `projects/FACTORY_OPERATIONS.md` already has the strongest applicable safety model: project record first; task record with acceptance criteria, allowed paths/commands, required checks, forbidden effects, evidence, and approval gate; isolated worktrees; deterministic verification; independent review; and explicit human gates for consequential actions. +5. `projects/paseo_software_factory_working_model_2026-08-17.md` already treats “our projects” as the authoritative unit of work, Paseo as an execution layer, and test/review evidence as what moves work forward. It explicitly says a Paseo status event may create a review/notification request but never grants production authority. +6. The current brain has an Inbox convention but no inspected, canonical structured task/claim/heartbeat ledger. Tasks also appear as Markdown checkboxes in area and journal notes; that is useful human-visible context but cannot safely represent concurrent agent leases, atomic claims, or review history by itself. +7. Hermes configuration inspection found persistent memory enabled, smart approvals, cron creation denied by default, delegation enabled with human approval not automatic, and no evidence that a task-state system is enabled. These settings are inputs to this plan only; this plan does not modify them. +8. The service inventory records active/documented Hermes cron/automation, a private browser, family infrastructure, EMI work, and a number of services explicitly labeled needs-live-verification or legacy. The ledger must preserve that distinction instead of turning stale documentation into active work facts. +9. A notification watcher proof-of-concept exists but is not authorized to read Notification Center. It must not be made a dependency for the initial adoption. +10. Per the active operating context, Herdr is the user’s control layer. This plan therefore assigns it a control/review role, not a second source of truth. Detailed Herdr API/UI behavior needs discovery before any integration design is finalized. + +### Upstream project facts used as ideas, not instructions + +The public repository was inspected read-only through GitHub’s public API and raw source documents on the `main` tree (tree `56c8109a97cf9147dd07dfe45b749aff67d9c8d7`, queried 2026-09-03). Its README describes separate Personal OS work state and Markdown Wiki knowledge, plus inbox/idea/project/task objects, task claims, heartbeats, evidence contributions, context packets, reviews, and notification adapters. Its architecture and agent-guide documents state that agents poll, claim, load context, heartbeat, submit evidence, and wait for review. Its vector-memory decision makes embeddings optional rather than canonical. + +The repository is untrusted external material. Its scripts, deployment instructions, prompts, permissions, API contracts, and implementation choices are not authority for this environment and must not be copied or executed without independent review. + +### Important assumptions to validate before implementation + +- The existing brain Git/Gitea backup chain is documented but needs a live verification before it is used for workflow-state recovery claims. +- The exact stable interface for Apple Reminders should be the Reyna CLI native privacy host once its Reminders operation is live-verified; no plan step assumes an unverified legacy bridge is safe or canonical. +- Herdr’s available work-item, notification, and review interfaces need read-only discovery. The plan deliberately does not assume it has a particular Kanban API. +- Existing Hermes cron jobs remain independently managed. No current job should be converted to ledger-driven automation until the pilot proves idempotency and delivery behavior. + +## 3. Target Model: Two Complementary Stores, Existing Authorities Preserved + +### 3.1 The core split + +```text +Hermes persistent memory + Stable personal preferences, recurring constraints, durable environment facts + +Existing Markdown brain + Human-readable knowledge, source summaries, decisions, project records, + durable evidence narratives, journals, service inventories, links + +Proposed structured work-state ledger + Current task state, owner leases, heartbeats, runs, review decisions, + notification-delivery markers, evidence references, audit events + +Herdr / Paseo / GitHub / Gitea / tools + Human control, execution, source code, repository evidence, and delivery +``` + +The ledger must store references and concise facts, not duplicate raw source documents, private recordings, credentials, large logs, or complete Markdown notes. + +### 3.2 Authority matrix + +| Concern | Authoritative location | Ledger role | +|---|---|---| +| Family/EMI/infra narrative and durable decisions | Brain Markdown notes | Link to note path and heading; track reviewable work only. | +| Current technical platform inventory | `areas/platform.md` | Link and record last verification task/result; do not rewrite the inventory automatically. | +| Human-facing service catalog | `areas/operations/services_inventory.md` | Link to health/evidence task; retain its Active/Needs live verification/Legacy vocabulary. | +| Cross-server project scope and approval boundaries | `projects/FACTORY_OPERATIONS.md` and `projects/factory/*.md` | Mirror project key and evidence pointers only. | +| Repository state and code change proof | Git repository, GitHub/Gitea, CI/test output | Store commit/PR/issue/command/evidence references, never synthesize repository truth. | +| Agent execution coordination | Structured ledger | Canonical for claim, lease, run, heartbeat, submit, review, closeout. | +| User-visible work control | Herdr plus approved human surfaces | Read/update ledger through approved adapter; no independent parallel task database. | +| Reminders and messaging | Apple Reminders / WhatsApp / desktop / approved adapters | Delivery-only mirror with idempotency key; never a source of task completion. | + +### 3.3 Proposed minimal storage topology + +Phase 1 should be designed around a **local state ledger**, not a service stack: + +- Primary runtime database: a local, owner-only SQLite ledger under an Application Support location, outside the Markdown vault and outside Git working trees. +- Backup/recovery: transaction-safe backups plus compact, redacted export snapshots that can be reviewed and linked from the brain. The exact backup destination must be approved after the existing Gitea/brain backup chain is live-verified. +- Evidence: Markdown remains where explanations belong. Ledger records point to `brain` paths/headings, Git refs, test command outcomes, file artifacts, URLs, and review decisions. +- Access: begin with one local coordinator/adapter on the Mac mini. Do not expose a LAN or public HTTP API in the pilot. Any later multi-host adapter requires separate authentication, authorization, secret storage, rate limits, and audit design. + +This gives atomic claims and expirations without deploying upstream Postgres, Docker, Next.js, a second Markdown Wiki, or a public dashboard. + +## 4. Concrete Workflow and State Mapping + +### 4.1 Intake classification + +Every inbound item is classified before action; one input may yield multiple linked records. + +| Input category | Create or update | Example | What remains authoritative | +|---|---|---|---| +| Inbox | Raw trace, source metadata, triage state | a voice transcript, link, email summary, reMarkable capture, or user message | Original source and/or brain Inbox note. | +| Idea | Non-committal opportunity needing shaping | “Could a Kindle dashboard show review queue?” | Brain idea/project note; ledger holds only its lifecycle. | +| Project | Bounded outcome/workstream with existing project key | `emi`, `reyna-cli`, `tactility`, `family-voice`, `remarkable-hermes` | Factory project definition and related brain notes. | +| Task | Smallest executable, reviewable unit | “Run read-only discovery of the reMarkable watcher health path” | Ledger for live state; brain/repository for scope and evidence. | +| Evidence | Durable proof or result | test output summary, screenshot path, live health result, source note section | Markdown/repository/original system; ledger stores reference and verification metadata. | +| Notification | A nudge derived from current state | morning Apple Reminder or private WhatsApp summary | Adapter destination; ledger stores delivery marker only. | + +Rules: + +- An Inbox item is not automatically a task. +- An Idea is not automatically promoted; it can remain `captured`, `shaping`, `someday`, or `archived`. +- A Project is not a task queue. It groups tasks, decisions, risks, and evidence. +- A Task must be independently executable and reviewable; vague “advance project” records are rejected at intake. +- The first structured state change never edits the original source. It adds linked work state only. + +### 4.2 Proposed canonical fields + +The exact schema is an implementation decision, but the following fields are the proposed minimum contract. Stable IDs should be opaque and immutable; human-readable titles and paths are not IDs. + +#### Shared work-item fields + +| Field | Meaning | +|---|---| +| `id`, `kind`, `createdAt`, `updatedAt` | Immutable identity and record type (`inbox`, `idea`, `project`, `task`, `notification`). | +| `title`, `summary` | Human-readable, redacted description. | +| `projectKey` | Existing factory/brain project key when applicable; no invented duplicate project registry. | +| `domain` | `family`, `home-infra`, `emi`, `coding`, `tactility`, `remarkable`, `voice`, `personal`, or explicit future value. | +| `sourceRefs` | Original message/file/note/repository references with provenance and access classification. | +| `brainRefs` | Canonical Markdown paths and headings; never copied note bodies by default. | +| `tags` | Retrieval and routing labels, not access control. | +| `sensitivity` | `normal`, `private`, `restricted`, or `highly-restricted`; controls what may enter exports, notifications, and reviewer packets. | +| `createdBy`, `lastChangedBy` | `user`, named human, Hermes profile, Herdr adapter, or named worker. | + +#### Task fields + +| Field | Meaning | +|---|---| +| `status` | `draft`, `ready`, `claimed`, `active`, `waiting`, `blocked`, `submitted`, `accepted`, `closed`, or `cancelled`. `submitted` is distinct from `accepted`. | +| `priority` | `P0` through `P3`; priority does not override approval policy. | +| `nextAction` | One specific physical/digital next action, with an accountable actor. | +| `definitionOfDone` | Observable conditions that a reviewer can check. | +| `requiredEvidence` | Required proof types and references: e.g., command exit/result, screenshot, reviewed Markdown note, human confirmation, or target-system readback. | +| `executionMode` | `human_only`, `agent_suggest`, `agent_prepare`, `agent_execute_low_risk`, `approval_required`, or `blocked_until_user`. | +| `riskLevel` | `low`, `medium`, `high`, or `restricted`; drives claim eligibility and gate requirements. | +| `allowedEffects` / `forbiddenEffects` | Explicit scope from the project/factory task record. | +| `reviewGate` | `none`, `peer`, `human`, `human_before_effect`, or `human_before_and_after_effect`. | +| `dueKind`, `dueAt` | Optional `soft`, `hard`, or `none`; due date does not cause autonomous execution. | +| `contextVersion` | Incremented when scope/policy/DoD changes; invalidates a stale claim. | + +#### Claim, run, and review fields + +| Object | Required fields and rule | +|---|---| +| `Claim` | `claimId`, `taskId`, `agentId`, `leasedAt`, `leaseUntil`, `lastHeartbeatAt`, `state`, `policySnapshot`. Only one active claim per task. | +| `TaskRun` | `runId`, `taskId`, `claimId`, `startedAt`, `endedAt`, `status`, `resultSummary`, `contextVersion`. A retry is a new run, not overwritten history. | +| `EvidenceRef` | `type`, `location`, `description`, `capturedAt`, `capturedBy`, `verificationMethod`, `redactionState`. It points outward; it does not embed secret/raw data. | +| `Review` | `reviewId`, `taskId`, `reviewer`, `decision`, `comment`, `reviewedAt`, `evidenceRefs`, `nextState`. Worker and reviewer must be distinct for medium/high-risk work. | +| `AuditEvent` | Append-only timestamped state change with actor, previous/new state, reason, and correlation ID. | +| `NotificationDelivery` | `adapter`, `destinationClass`, `idempotencyKey`, `payloadClass`, `attemptedAt`, `deliveredAt`, `result`. No reminder completion may alter task status. | + +### 4.3 Task lifecycle and lease policy + +```text +Draft -> Ready -> Claimed -> Active -> Submitted -> Accepted -> Closed + | | | | + v v v v + Waiting Blocked Changes Cancelled/Archived + requested +``` + +1. Only `ready` tasks with a complete `nextAction`, `definitionOfDone`, risk policy, and required evidence can be claimed. +2. A worker reads a current context packet before claiming or immediately after successful claim; it must stop if the packet says policy is stale or incomplete. +3. A claim has a bounded lease. Heartbeats extend it only while the task policy and context version remain valid. +4. Expired claims become `ready` only after the ledger records an expiry event. No second worker may assume the first worker’s unfinished side effects were safe or absent. +5. Policy/scope/DoD changes revoke an active claim, preserve the existing run history, and require a fresh context packet and claim. +6. A worker submits evidence; it does not self-accept its own medium/high-risk work. Acceptance moves the task to `accepted`; closeout is only after linked durable records are updated or explicitly declared unnecessary. +7. `waiting` and `blocked` must include the external dependency, owner if known, last verified time, and smallest release condition. + +### 4.4 Definition of Done templates + +| Work class | Minimum `definitionOfDone` | +|---|---| +| Research/plan | Source references are recorded; recommendation and uncertainty are clear; user decision is identified; no unapproved implementation occurred. | +| Brain/document edit | Required Markdown note is created/updated with frontmatter and wikilinks; source preserved where required; links resolve; reviewer confirms intended scope. | +| Repository change | Isolated worktree/branch is named; required tests/builds run with recorded exit outcomes; independent review passed; no merge/push/deploy without an explicit gate. | +| Family infrastructure | Target identity was verified; approved change/observation and readback are recorded; health check/rollback evidence exists; service inventory update is reviewed. | +| EMI/publication | Required ministry/brand/legal review is recorded; target preview verified; explicit final send/publish approval received; published state read back. | +| Reminder/nudge | Destination/list/channel was verified; idempotency marker recorded; delivery result recorded. This is never the DoD of the underlying task. | + +## 5. Context Packets and Retrieval + +### 5.1 Context packet contract + +Before a worker acts, it receives a bounded, assembled packet rather than searching the entire brain or relying on chat memory. + +Required packet sections: + +1. **Identity:** task ID, title, project key/domain, context version, claim/lease status. +2. **Execution contract:** next action, DoD, required evidence, risk level, execution mode, allowed/forbidden effects, approval gate, stop conditions. +3. **Relevant durable context:** selected brain note paths/headings, project-definition pointers, source references, previous decisions, and known stale/uncertain facts. +4. **Current execution state:** related tasks, prior runs, active blockers, current reviewer comments, notification history when relevant. +5. **Evidence plan:** exact target readbacks/tests/outputs expected; no vague “verify it works.” +6. **Retrieval provenance:** query terms, source selection rationale, unavailable/partial sources, and any access restrictions. +7. **Privacy boundary:** sensitivity label and data that must not enter output, prompts, logs, notifications, or exports. + +Packet design rules: + +- Default to narrow, cited retrieval from the brain, project record, and source system. +- Do not scrape or inject the entire vault, private raw audio, credentials, message archives, or notification database. +- State whether retrieval is `complete`, `partial`, `unavailable`, or `not-needed`; absence of a result is not proof that no knowledge exists. +- Expire/rebuild a packet after material source or policy changes. + +### 5.2 Retrieval strategy: optional semantic layer + +Adopt keyword search, paths, tags, WikiLinks, project keys, task IDs, and recent verified evidence first. This aligns with the existing brain/MCP plan, which already proposes Markdown as source of truth and any indexes/databases as rebuildable cache. + +Do not require embeddings/vector memory in any early phase. Consider hybrid retrieval only when all are true: + +- at least ten real, privacy-safe retrieval questions show repeated keyword/path misses; +- a benchmark compares keyword/metadata retrieval to hybrid retrieval with cited sources; +- results improve recall without degrading provenance, latency, or privacy; +- costs and failure fallback are documented; +- keyword/metadata retrieval still works if the embedding provider is unavailable. + +Vector results, if ever added, are candidates—not authority. Every result must resolve to a source note, task, artifact, or original system record. + +## 6. Notification and Apple Reminders Adapter Plan + +### Adapter boundary + +```text +Ledger decides that a nudge is due and creates a delivery request. +Hermes/Herdr/scheduler decides whether and when to run an adapter. +Reyna CLI or another approved adapter writes to the destination. +The destination confirms delivery only; it never decides task truth. +``` + +### Initial adapter order + +1. **No new adapters in Phase 0–1.** Continue existing manually authorized workflows and existing cron behavior unchanged. +2. **Read-only notification candidate generation in Phase 2.** Produce reviewable proposed payloads only; no sending, task creation, or reminder writes. +3. **Apple Reminders pilot in Phase 3, only after Reyna CLI Reminders operations and list identity are live-verified.** Use the native privacy-host route described as canonical in `areas/platform.md`, not a new unreviewed Apple automation path. +4. **Existing WhatsApp/Hermes delivery in Phase 4.** It remains explicit, privacy-scoped, and idempotent. Use a private DM by default for operational/email-derived content; honor the brain rule that email summaries/notifications do not go to the Family Group unless explicitly requested. +5. **Herdr notification/review adapter only after read-only interface discovery.** Herdr can surface state and approval requests but must not silently turn a status change into a deployment, merge, send, or config change. + +### Adapter requirements + +- Every delivery request has a stable `idempotencyKey`, destination class, sensitivity classification, and expiration time. +- The adapter verifies the configured Apple list/channel/contact before its first write. Duplicate or missing destination identities are a hard stop, not an invitation to guess. +- Reminder content contains no secrets, bearer tokens, private vault paths, raw recordings, private server inventory, or unnecessary family/medical/ministry detail. +- The adapter records a delivery result or failure, but it cannot mark a task accepted/closed. +- Completing an Apple Reminder means only that the nudge was handled. A task closes only through its DoD and review path. +- Adapter failures back off and report a concise blocked delivery; they never create uncontrolled duplicate messages. +- A notification can request a human decision. It cannot grant approval based on a reply parser alone unless the user has separately approved a secure, unambiguous command protocol. + +## 7. Agent Safety, Review, Privacy, and Failure Handling + +### 7.1 Claim eligibility and agent identity + +- Each worker has a stable logical identity (for example, Hermes profile plus role, Herdr worker role, or named review worker); display/model names alone are insufficient. +- Tags and declared capabilities help routing but are not an authorization system. Runtime tool permissions, repository `AGENTS.md`, Hermes approvals, and task policy remain authoritative. +- A worker may claim only a `ready` task whose execution mode/risk level it is allowed to perform and whose required context is accessible. +- No agent claims high-risk or restricted work for execution. It may prepare evidence, analysis, and a review packet only. +- Claims are exclusive, bounded, heartbeat-backed, and auditable. If an agent stops responding, expiry must leave a visible handoff record rather than silently declaring failure or success. + +### 7.2 Review gates + +| Risk / effect | Worker may do | Required gate | +|---|---|---| +| Low-risk read-only research, local analysis, draft plan | Gather sources and prepare evidence | Human review if user-facing decision or durable brain modification is proposed. | +| Medium-risk brain/edit/repository preparation | Work only inside defined scope/worktree; run deterministic checks | Independent reviewer before acceptance; user approval before any external effect. | +| High-impact code/service/publication change | Prepare plan, diff, review packet, rollout/rollback evidence only | Explicit human approval before merge, deploy, restart, publish, send, credential/TCC change, migration, or production configuration. Verify target readback afterward. | +| Restricted family voice, medical, finance, child data, credentials | Perform only explicitly authorized minimal handling | Human-only gate; no raw data in work ledger, generic agent packet, notification, or external service without named approval. | + +The existing factory rule remains controlling: planner and reviewer are read-only; implementers use isolated worktrees; verifiers report exact outcomes; no status transition self-authorizes production. + +### 7.3 Evidence rules + +A task submission must state: + +- what changed or was observed; +- exact authoritative location(s) affected; +- verification command/readback and outcome, including failure or partial result; +- evidence references with timestamps; +- remaining risk, uncertainty, and required human decision; +- whether every DoD clause is met. + +Do not store raw terminal logs by default. Store stable command/result summaries and a pointer to retained local logs when genuinely needed. Evidence that includes secrets, personal data, recordings, private messages, or access tokens must be redacted, classified, or omitted from the ledger. + +### 7.4 Failure policy + +| Failure | Required behavior | +|---|---| +| Context source unavailable | Mark packet `partial`/`unavailable`; do not infer absence; retry or block according to task risk. | +| Claim conflict or expired lease | Stop mutation, refresh state, then re-claim or hand off. Never continue on an expired lease. | +| Scope/policy/DoD changed mid-run | Revoke or abandon claim; preserve work as a contribution; build a new packet. | +| Evidence missing | Submit as incomplete/blocked, not complete. | +| Verification failed | Preserve failure evidence; move to `blocked` or changes-requested; no optimistic closeout. | +| Notification failure | Record delivery failure and retry according to bounded policy; do not alter underlying task state. | +| Service/repository/device identity uncertain | Treat as blocked; perform read-only identity verification before any mutation. | +| Privacy/sensitivity conflict | Stop, minimize retained metadata, and request a human decision. | +| Ledger unavailable/corrupt | Fail closed for claims/reviews/side effects; continue only read-only source inspection; restore from transaction-safe backup after human review. | + +## 8. Phased Adoption Roadmap + +Each phase is intentionally small and has an approval boundary. None of the phases is authorized by this plan alone. + +### Phase 0: Governance, authority, and pilot selection + +**Objective:** Ratify the state/evidence boundary before creating a system. + +**Dependencies:** User review of this plan; no code/config/service changes. + +**Actions:** + +1. Approve or revise the authority matrix and canonical task vocabulary in Sections 3–4. +2. Select one low-risk pilot domain, recommended: read-only software-factory planning/review work in a single existing project. Do not start with family voice, medical/financial items, Apple automation, production EMI, or device deployment. +3. Define named human reviewers and one logical coordinator identity for the pilot. +4. Choose pilot exit metrics: duplicate-work prevention, handoff clarity, evidence completeness, and notification-noise rate. +5. Confirm the recovery/backup owner and require a live check of the existing brain/Gitea backup chain before treating it as a recovery guarantee. + +**Verification and acceptance criteria:** + +- User approves the authority matrix or records explicit deviations. +- Pilot project and task class are named. +- At least one example task has a non-vague next action, DoD, evidence list, risk level, and review gate. +- No existing brain note, Hermes config, cron job, service, repository, task, or notification is modified in this phase. + +**Human gate:** Written approval to begin Phase 1. + +### Phase 1: Local work-state contract and shadow ledger prototype + +**Objective:** Establish the smallest local structured state model without replacing existing tools or emitting external effects. + +**Dependencies:** Phase 0 approval; live backup-chain assessment; approved local storage location and backup policy. + +**Actions:** + +1. Design and test the local ledger schema using the canonical objects above: task, claim, run, evidence reference, review, audit event, and notification delivery. +2. Implement an owner-only local storage and transaction/locking strategy. Prefer a local SQLite ledger with a documented export/recovery procedure; do not introduce Docker, Postgres, a network API, or a second UI. +3. Define strict input validation: only a task with `nextAction`, DoD, required evidence, risk, execution mode, and review gate may enter `ready`. +4. Add a shadow-mode adapter that records state for a small set of manually selected pilot tasks but does not change existing task checkboxes, files, repository state, notifications, or Hermes behavior. +5. Produce a compact human-readable state digest that links to the relevant brain/project records without copying their contents. +6. Create deterministic test cases for: single claim, conflict, heartbeat extension, lease expiry, policy revocation, submission, independent review, evidence omission, export/import recovery, and redaction. + +**Verification and acceptance criteria:** + +- Two concurrent claim attempts produce one winner and one explicit conflict result. +- Expired or policy-revoked claims cannot submit or mutate state. +- Every completed pilot run shows task ID, DoD, evidence refs, reviewer decision, and audit timestamps. +- Ledger backup/export restores into a test location without loss of task/run/review relationships. +- No raw private messages, credentials, recordings, or secret URLs appear in the ledger export/digest. +- Existing brain Markdown remains untouched except for any separately user-approved future evidence note; Phase 1 itself does not backfill or rewrite it. + +**Human gate:** Review pilot ledger evidence and approve Phase 2 read-only context integration. + +### Phase 2: Hermes and Herdr read-only context packets + +**Objective:** Make explicit work state usable without granting new powers. + +**Dependencies:** Phase 1 acceptance; read-only discovery of Herdr interfaces; task-context/redaction policy approved. + +**Actions:** + +1. Define a versioned context-packet serializer that joins the ledger task/claim/review state with narrowly selected brain/project evidence references. +2. Add read-only Hermes workflow guidance: before any pilot task work, request a current packet; after any observed action, capture evidence rather than inferring completion from chat. +3. Design a Herdr read-only representation for project/worker state, review queue, lease health, and blockers. Do not assume a specific UI/API until discovery proves it. +4. Add packet-size limits, sensitivity filters, source availability labels, and a visible “stale since” indicator. +5. Run a handoff exercise: one worker prepares a task, another worker/reviewer resumes solely from the context packet and source links. + +**Verification and acceptance criteria:** + +- A second worker can accurately identify next action, DoD, current owner/lease state, blockers, evidence, and approval gate without reading whole chat history or vault. +- Packets cite source paths/IDs and declare partial/unavailable retrieval rather than fabricating completeness. +- Herdr/Hermes displays cannot update execution state in this phase. +- A restricted-data test confirms prohibited content is excluded from packet and digest. +- The handoff produces no duplicate task execution and no side effect. + +**Human gate:** Approve a controlled write path for low-risk pilot state updates and, separately, approve or decline notification planning. + +### Phase 3: Controlled low-risk claims, review workflow, and Apple Reminders dry run + +**Objective:** Use claims/reviews in real low-risk work while proving notification adapters remain delivery-only. + +**Dependencies:** Phase 2 acceptance; confirmed agent identities; live verification of the approved Reyna CLI Reminders capability and a single destination list; user approval for any Apple write test. + +**Actions:** + +1. Allow a named Hermes/Herdr worker to claim only `low`/`agent_execute_low_risk` pilot tasks under lease/heartbeat rules. +2. Require submission and a distinct reviewer for every pilot task; no self-acceptance. +3. Generate reminder candidates from state in dry-run mode. Review their payload, privacy label, destination class, and idempotency key. +4. After an explicit user decision, write one harmless test reminder through the verified Reyna CLI adapter to one unambiguous list; rerun to confirm update/no duplicate behavior. +5. Confirm that completion of the test Apple Reminder creates no task-state transition. +6. Exercise lease timeout, worker crash/handoff, review request changes, and notification failure paths with harmless pilot data. + +**Verification and acceptance criteria:** + +- One claimed task has periodic heartbeats and a complete submission/review trail. +- A reviewer can request changes and the task returns to `ready`/appropriate rework state with the original evidence preserved. +- The Apple adapter reports created/updated/skipped/error outcome and uses a stable marker. +- Re-running the adapter does not duplicate the reminder. +- Completing the reminder leaves the task state unchanged. +- No external send beyond the separately authorized test occurs. + +**Human gate:** Approve limited operational use and decide whether existing Hermes/WhatsApp reminders should become a later adapter. + +### Phase 4: Project-specific integration for factory, infrastructure, and ministry + +**Objective:** Extend the proven model only where it strengthens existing work, without creating a universal bureaucracy. + +**Dependencies:** Phase 3 acceptance across a sufficient pilot sample; live verification of the target project/repository/service; project-owner review. + +**Actions:** + +1. **GitHub/Gitea and factory work:** Map repository tasks to existing project keys, worktrees, branch/PR/commit evidence, required checks, independent review, and human merge/deploy gate. Keep repository `AGENTS.md` authoritative. +2. **Herdr:** Surface approved ledger views for active leases, review queue, blocked work, and packet links. Herdr remains the control plane; it does not replace project records or auto-authorize effects. +3. **Family infrastructure:** Use the existing service-inventory vocabulary. A service verification task must include target identity, read-only health evidence, last verified time, and no service mutation unless separately approved. +4. **EMI:** Separate ministry research/drafts from public, governance, financial, or publication changes. Public sends/publishing require the existing explicit approval and target readback; email-derived information defaults to private handling. +5. **Family work:** Use the system for ordinary, low-sensitivity household follow-through only after privacy rules are proven. Exclude raw voice, child/private health, financial, and credentials from generic work state. +6. Add only approved notification adapters, starting with private summaries and always retaining delivery-only semantics. + +**Verification and acceptance criteria:** + +- One software change record references project definition, isolated worktree, tests, reviewer verdict, and explicit merge/deploy gate without claiming those effects occurred. +- One infrastructure read-only verification task preserves Active/Needs live verification/Legacy distinctions. +- One EMI draft/review task demonstrates a public-send gate and does not send or publish without approval. +- One adapter delivery failure is visible but cannot change project/task truth. +- Project leads find the state digest/context packet clearer than the prior status-only approach; otherwise scope is reduced. + +**Human gate:** Review whether a dedicated local dashboard/adapter service is justified by sustained usage, not novelty. + +### Phase 5: Optional operational hardening and retrieval evaluation + +**Objective:** Decide whether the small overlay should remain local or earn a more durable multi-client implementation. + +**Dependencies:** At least several weeks of useful Phase 4 usage, no unresolved privacy/duplicate-notification defects, and demonstrated recovery tests. + +**Actions:** + +1. Audit contention, lease expiry, recovery, backup, evidence quality, review latency, adapter duplicates, and user burden. +2. Decide whether a local read-only dashboard, authenticated internal API, or Herdr-native view is worth building. Do not deploy a service merely to imitate upstream architecture. +3. Run the retrieval benchmark described in Section 5 before introducing vector embeddings. +4. If multi-host access is justified, design authentication, least privilege, secret storage, audit retention, backup, revocation, and outage behavior before any LAN exposure. +5. Re-evaluate scope: archive fields/processes that were not used; preserve only the minimal proven contract. + +**Verification and acceptance criteria:** + +- Recovery drill restores structured state and preserves ledger-to-Markdown/repository references. +- Metrics show fewer duplicate efforts, clearer review handoffs, and acceptable notification noise compared with the baseline. +- Any hosted/LAN service proposal has a written threat model, rollback plan, owner, health check, backup, and approval boundary. +- Vector retrieval is adopted only if benchmarked hybrid retrieval improves real cited recall and keyword fallback remains functional. + +**Human gate:** Separate approval required for any LAN/public service, non-local credential, vector provider, new database host, or production automation. + +## 9. Migration and Rollout Strategy + +### Non-disruption principles + +1. **No bulk migration.** Do not parse/rewrite existing brain notes, Markdown checkboxes, journals, project documents, or archives into the ledger. +2. **Forward-only pilot.** Begin with manually selected new pilot tasks. Legacy work is linked only when a human explicitly asks to track it. +3. **No automatic closure.** Existing checked boxes, completed reminders, Git commits, agent chats, or idle statuses may be evidence but never automatically become ledger acceptance. +4. **No source replacement.** The brain, project records, service inventory, repository history, and existing reminder paths remain authoritative throughout rollout. +5. **Reversible overlay.** Disabling the ledger must leave original Markdown and existing workflows intact. The ledger can be archived/exported without data loss or source mutation. +6. **One-way evidence references first.** Start by linking state to existing sources. Only after review may an approved workflow append a concise evidence section to a brain/project note, following brain formatting rules. +7. **No service dependency at launch.** The first version must work while the notification watcher, reMarkable watcher, remote nodes, or optional semantic index are absent/unavailable. + +### Suggested rollout cohort + +- Start with 5–10 low-risk, non-sensitive, read-only or plan/review tasks in one factory project. +- Use at most one coordinator and one reviewer in the first cohort. +- Do not use scheduled claims, automatic task intake, WhatsApp sending, Apple Reminder writes, remote agent dispatch, or production hosts in the initial cohort. +- Review every task manually. Measure clarity and burden before expanding. + +### Legacy linking protocol + +When the user wants to incorporate an existing note/task: + +1. Create one new ledger record that contains the existing Markdown path/heading and source provenance. +2. Mark it `draft` until the user or project steward supplies a current `nextAction`, DoD, risk, evidence, and gate. +3. Record “legacy source; current state not yet verified” instead of carrying old prose forward as fact. +4. Preserve the original note exactly. Do not rewrite historical journals or archives to match a new state vocabulary. +5. If a later durable note update is approved, append/revise according to `brain/rules.md` and link back to the ledger task ID. + +## 10. Measures of Success and Operating Metrics + +Track these only after consent and with privacy-safe aggregate data: + +| Metric | Desired signal | Guardrail | +|---|---|---| +| Claim conflicts/duplicate work | Fewer duplicated agent efforts | Do not inflate task count to improve metric. | +| Context handoff completeness | A reviewer can resume work from packet/source links | Do not solve by dumping the full vault. | +| Evidence completeness | Submitted work has verifiable refs and explicit uncertainty | Do not store raw secrets/logs to increase completeness. | +| Review latency | Clear gate ownership and fewer ambiguous “done” claims | Do not bypass human review for speed. | +| Lease health | Expired/revoked work is visible and safely recoverable | No unbounded heartbeats. | +| Notification noise | Useful nudges with few duplicates | Delivery never changes task truth. | +| Recovery success | Ledger backup/restore preserves links and audit trail | Do not represent backup as verified until drill succeeds. | +| Retrieval quality | Cited relevant sources, including known partial results | Embeddings are not adopted on anecdote alone. | + +## 11. Explicit Open Decisions for User Review + +1. **Pilot domain:** Is the recommended first pilot a low-risk software-factory planning/review workflow, or should it be another bounded domain? +2. **State authority:** Approve the proposed local ledger as authoritative for live task/lease/review state while the brain remains authoritative for knowledge/evidence narrative? +3. **Status vocabulary:** Approve the proposed lifecycle (`draft`, `ready`, `claimed`, `active`, `waiting`, `blocked`, `submitted`, `accepted`, `closed`, `cancelled`), or map it to a preferred simpler vocabulary? +4. **Review standard:** Must every low-risk agent task have a distinct human reviewer in the pilot, or can a named independent reviewer agent approve selected non-side-effect work? +5. **Storage and backup:** May the initial ledger be local-only with transaction-safe backups pending a live Gitea backup-chain verification, or should the first phase wait for verified private backup integration? +6. **Herdr scope:** Should Herdr initially be read-only state/review visibility, or should a later phase permit it to submit approved low-risk ledger transitions? +7. **Apple Reminders:** Which single list should be used for an eventual pilot, and should it receive only summary nudges or selected P0/P1 task-specific reminders? No adapter will be written until the native Reyna CLI capability and list identity are verified. +8. **Messaging:** Should future operational nudges default to private DM only, with the Family Group used only for explicitly family-safe requests? This plan recommends yes. +9. **Retention:** How long should detailed ledger runs/audit events be retained, and what redacted digest belongs in the Markdown brain, if any? +10. **Semantic retrieval trigger:** What threshold of demonstrated keyword-search misses is sufficient to authorize a benchmark? This plan recommends a documented set of at least ten real retrieval queries before considering embeddings. + +## 12. Ideas Deliberately Rejected or Deferred + +| Idea | Decision | Why | +|---|---|---| +| Deploy the upstream Personal OS + Personal Wiki stack unchanged | Reject for now | It adds Next.js, PostgreSQL, Docker, another UI, tokens, operations, and a duplicate Wiki when the existing brain/Herdr/Hermes/factory records already cover much of that terrain. The valuable missing piece is narrow execution state, not a wholesale replacement. | +| Replace the Markdown brain with database records | Reject | The brain is the established human-readable, linked, Gitea-backed knowledge base. Markdown is better for durable narrative, review, portability, and editorial work. | +| Treat Hermes memory as the task database | Reject | Persistent memory is suited to stable preferences and constraints, not current claims, approvals, evidence, review decisions, or recovery-safe status. | +| Treat Apple Reminders/WhatsApp/desktop notifications as task truth | Reject | They are delivery surfaces. A dismissed/checked nudge proves neither task completion nor DoD verification. | +| Mandatory vector memory/RAG from day one | Reject | Keyword/metadata/links/context packets are cheaper, more inspectable, and match the current brain MCP direction. Add semantics only after a measured recall benefit. | +| Automatic intake of every message/note into tasks | Reject | It would create noise, misclassify sensitive material, and violate the existing Inbox/idea-shaping distinction. Capture may be proposed; promotion requires clear action/DoD. | +| Autonomous “autodrive” across merges, deploys, sends, restarts, and production config | Reject | It conflicts with the current factory operating rules and Hermes approval boundaries. Claims prove ownership, not authority. | +| Store raw logs, recordings, credentials, private notification data, or large artifacts in the ledger | Reject | Privacy, sync, audit, and backup risk. Store redacted metadata and source pointers only. | +| Make service inventory status auto-updated from agent assertions | Reject | Existing inventory correctly differentiates documented status from live verification. Only verified target readback plus review may update durable service records. | +| Build a new dashboard before proving behavior | Defer | Herdr and existing surfaces may be sufficient. A dashboard must earn its operational cost through proven pilot use. | + +## 13. Final Review Checklist + +Before approving any implementation phase, confirm: + +- [ ] The existing Markdown brain, factory records, repository rules, and platform/service inventories remain authoritative as defined here. +- [ ] The new component is a small local overlay, not a second personal OS platform. +- [ ] Every task has `nextAction`, DoD, risk, allowed/forbidden effects, evidence, and review gate before it can be claimed. +- [ ] Claims are exclusive, leased, heartbeat-backed, revocable on policy change, and auditable. +- [ ] Agents submit evidence; they do not self-authorize high-impact effects or self-accept their own high-risk work. +- [ ] Context packets are bounded, cited, privacy-filtered, and explicitly label unavailable/partial retrieval. +- [ ] Apple Reminders and messaging adapters are idempotent delivery-only mirrors. +- [ ] No legacy brain data is bulk-migrated, rewritten, or made dependent on a new service. +- [ ] Retrieval remains keyword/metadata-first until a cited benchmark justifies a hybrid layer. +- [ ] Every later network/service/deployment step has its own explicit human approval, backup/rollback plan, and target readback verification. + +## Source Notes + +- Local sources inspected: `brain/rules.md`, `brain/index.md`, `areas/platform.md`, `areas/operations/services_inventory.md`, `areas/emi_things_to_do.md`, `projects/FACTORY_OPERATIONS.md`, `projects/factory/README.md`, `projects/para_brain_mcp_server.md`, `projects/paseo_software_factory_working_model_2026-08-17.md`, `projects/paseo_centralized_agents_2026.md`, and `projects/macos-notification-watcher-poc.md`. +- Hermes configuration inspected read-only: agent, memory, approvals, delegation, checkpoints, and curator sections. +- External inspiration inspected as untrusted public reference: `https://github.com/lawyer112/personal-os-wiki`, its README, `docs/ARCHITECTURE.md`, `docs/AGENT_GUIDE.md`, `docs/WHY_NOT_LONG_TERM_MEMORY.md`, `docs/VECTOR_MEMORY_DECISION.md`, `docs/MAC_AGENT_ADAPTER.md`, and `personal-os-app/docs/HERMES_API.md`. +- This document proposes no code, configuration, service, repository, task, cron, reminder, or message changes. It is a plan only. diff --git a/projects/pipecatvoice_kanban_postmortem_2026-08-10.md b/projects/pipecatvoice_kanban_postmortem_2026-08-10.md new file mode 100644 index 0000000..639df9c --- /dev/null +++ b/projects/pipecatvoice_kanban_postmortem_2026-08-10.md @@ -0,0 +1,488 @@ +# Executive summary + +The PipecatVoice work produced two useful technical outcomes: a source-backed **NO-GO** for putting Pipecat SmallWebRTC directly into the current Tactility external ELF, and a simpler protocol-v1 LAN WebSocket adapter/client architecture with passing deterministic tests and successful ESP32-S3 builds. However, the final hardware/runtime gate is still open: the strongest recorded device evidence is an installed app showing **RECONNECTING / Gateway unavailable**, with no accepted board WebSocket session, no board-originated PCM/VAD proof, no downstream device-playback proof, and no full STT → Hermes → TTS proof. + +Most observed board transitions were normal Hermes Kanban behavior. The orchestration failure was that the work graph, task text, evidence gates, and action permissions were not kept aligned after the architecture pivot. Repeatedly unblocking the same permission-gated task correctly triggered Hermes's block-loop breaker and moved it to `triage`; comments and dispatcher nudges could not make a triage or dependency-gated task runnable. Tomorrow's work should use one canonical, dependency-correct chain and separate credential-independent transport/audio proof from credential-dependent STT/Hermes/TTS proof. + +**No voice-app implementation changes were made during this postmortem.** No firmware, adapter, runtime service, configuration, device, or Kanban implementation was changed, built, flashed, installed, started, stopped, restarted, dispatched, unblocked, or archived. The only file written was this report. + +## 1. Scope, method, and evidence labels + +This report is read-only research based on: + +- Hermes official/local documentation: + - https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban + - https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban-tutorial + - https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban-worker-lanes + - `/Users/adolforeyna/.hermes/hermes-agent/website/docs/user-guide/features/kanban.md` + - `/Users/adolforeyna/.hermes/hermes-agent/website/docs/user-guide/features/kanban-worker-lanes.md` + - `/Users/adolforeyna/.hermes/hermes-agent/hermes_cli/kanban_db.py` +- The live default-board task records, comments, events, and run histories returned by `kanban_show` for the PipecatVoice graph. +- Worker logs under `/Users/adolforeyna/.hermes/kanban/logs/`. +- Repository evidence: + - `/Users/adolforeyna/Projects/electronics/tactility/tactility_apps/AGENTS.md` + - `Apps/PipecatVoice/docs/smallwebrtc-esp32-feasibility-spike.md` + - `Apps/PipecatVoice/README.md` + - `/Users/adolforeyna/Projects/voice-assistant/hermes-esp32-voice-gateway/docs/lan-ws-pipecat-adapter.md` +- A read-only `git status`, `git log -1`, diff summary, and `git diff --check` for `Apps/PipecatVoice`. + +Labels used below: + +- **Verified fact** — directly present in the cited source, task history, log, or inspected repository state. +- **Inference** — the most likely explanation produced by combining verified facts; not direct runtime proof. +- **Recommendation** — proposed future operating practice or task design. + +## 2. Hermes Kanban semantics that matter here + +### 2.1 Canonical lifecycle and dependencies + +**Verified fact:** A task status is one of `triage`, `todo`, `ready`, `running`, `blocked`, `done`, or `archived`. There is no separate core `review` status. Review is a convention: a code worker comments structured evidence and blocks with a `review-required:` reason. + +**Verified fact:** A parent→child link is a hard dependency. A child is `ready` only when every parent is exactly `done`; otherwise it is `todo`. `archived` is not equivalent to `done`. Linking an open or archived parent to a ready child demotes the child to `todo`. + +**Verified fact:** `unblock` moves a task to: + +- `ready` when all parents are `done`; or +- `todo` when any parent is still open/non-done. + +It never moves a task to `triage`. + +**Verified fact:** `triage` is a parking/specification/orchestration state, not a dispatchable worker queue. With auto-decompose enabled, the decomposer may process it; ordinary worker dispatch does not treat it as `ready`. + +### 2.2 Blocking, recurrence, and triage escalation + +**Verified fact:** Typed block kinds have different meanings: + +- `dependency`: routes to `todo` and waits for parent completion; no human unblock should be needed. +- `needs_input`: human decision or answer is required. +- `capability`: a hard access/credential/tool wall. +- `transient`: a retryable temporary failure. + +**Verified fact:** The local kernel has `BLOCK_RECURRENCE_LIMIT = 2`. If a task is blocked, unblocked, and then re-blocked for the same true-block reason twice, Hermes emits `block_loop_detected` and routes the task to `triage`. The recurrence counter intentionally survives unblocks and resets only on successful completion. + +**Consequence:** Repeatedly adding “UNBLOCK” comments or nudging the dispatcher does not restore a triage task. The cause must be resolved, then a human/orchestrator must deliberately re-specify/promote/recreate the work in a runnable state. + +### 2.3 Dispatcher and worker execution + +**Verified fact:** The configured dispatcher runs inside the default gateway every 60 seconds. Current relevant settings are: + +- `dispatch_in_gateway: true` +- `dispatch_interval_seconds: 60` +- `failure_limit: 2` +- `auto_decompose: true` +- `dispatch_stale_timeout_seconds: 14400` (4 hours) +- no per-profile in-progress cap + +**Verified fact:** The dispatcher atomically claims `ready` tasks and spawns the named Hermes profile as a full OS process with task, board, run, workspace, profile, and claim identifiers in environment variables. Every claim creates a separate `task_runs` row. + +**Verified fact:** Comments are durable context for the next worker run. They are not executable commands, do not interrupt or redirect a running worker, and do not themselves change task status. + +**Verified fact:** A dispatcher nudge only runs a dispatch tick. It does not unblock a blocked task, promote a triage task, satisfy an unfinished parent, approve a guarded command, or change a worker's current tool-approval state. + +### 2.4 Retries, watchdogs, and what they cannot do + +**Verified fact:** Hermes handles distinct failure classes: + +- dead worker PID → crash detection and retry/circuit-breaker accounting; +- max runtime exceeded → terminate and requeue, counting as failure; +- stale long-running worker with no recent heartbeat/activity → terminate and requeue without a failure-counter tick; +- worker exits without `kanban_complete` or `kanban_block` → protocol-violation retry, then bounded auto-block; +- repeated spawn/crash/timeout failures → circuit breaker and `gave_up`/blocked. + +**Verified fact:** The current stale timeout is four hours, and workers should heartbeat at least hourly. A heartbeat only proves worker liveness; it does not prove acceptance criteria, runtime health, or progress on an external device. + +**Verified fact:** The comments authored as `watchdog` in the PipecatVoice cards are coordination messages from a watchdog actor. They are not evidence that the core dispatcher executed the requested hardware steps. Core stale/crash watchdog behavior manages worker process lifecycle only. + +**Verified fact:** A live worker blocked on a separate tool security/approval gate cannot be made to execute that action by a Kanban comment, heartbeat, or dispatcher nudge. The external action must be approved through the controlling execution surface or performed through an explicitly approved alternative. + +### 2.5 Review and evidence handoff + +**Verified fact:** Parent handoffs include only the parent's most recent completed run summary/metadata. A blocked review-required run preserves its reason and comments, but does not act like a completed dependency. + +**Verified fact:** The recommended code-review convention is: + +1. write a structured evidence comment; +2. block with `review-required:`; +3. reviewer inspects artifacts and either approves/finishes or comments requested changes and unblocks. + +**Recommendation:** Do not use `review-required` as a catch-all for missing runtime prerequisites. Record implementation review and runtime capability as separate cards/gates; otherwise the same card repeatedly re-blocks for different unresolved causes and eventually enters triage. + +## 3. Reconstructed PipecatVoice history and task graph + +### 3.1 Initial goal and SmallWebRTC design + +**Verified fact:** Root task `t_139d9fb9` began as a goal-mode Tech Lead task to replace an 831-line copied picker/PTT/transcript UI with a minimal native auto-start client connected to the working Pipecat 1.7 SmallWebRTC gateway. + +**Verified fact:** The Tech Lead intake correctly established: + +- the copied UI and bespoke raw-WS assumptions were rejected; +- the board was an ESP32-S3 on `/dev/cu.usbmodem31201`; +- the live Pipecat service was on port 7860; +- SmallWebRTC used `/start`, offer/answer, ICE, DTLS-SRTP/RTP, and normally Opus; +- Tactility external-ELF compatibility had to be proven before implementation. + +**Verified fact:** The first child chain deadlocked. Original children `t_890febc7` and `t_39d4fb79` were dependent on the still-open Tech Lead root, while the Tech Lead root blocked waiting for child implementation evidence. Replacement runnable cards `t_13e9409d` and `t_2cb9b047` were then created to break that circular lifecycle. + +### 3.2 Feasibility spike result + +**Verified fact:** Replacement spike `t_13e9409d` produced a durable report and a source-backed decision: + +- Pipecat's official ESP32 client exists and built as a full ESP-IDF firmware target. +- The build used `libpeer`, ICE, DTLS-SRTP, RTP, Opus, Wi-Fi, HTTP/netif, mbedTLS, and board/BSP dependencies. +- The resulting firmware nearly filled its 1.5 MiB partition and had a large BSS footprint. +- The current Tactility external ELF did not export/package the required dependency set. +- Therefore: **NO-GO for the current external ELF; GO only as a separate firmware/SDK integration project.** + +**Verified fact:** No hardware deploy or flash was claimed by the spike. + +**Verified fact:** The spike also removed a hard-coded credential from app code/config. Historical worker log output nevertheless retained the removed value in a rendered diff. This report intentionally does not reproduce it. + +**Security recommendation:** Treat that historical credential as exposed to durable local task logs: rotate/revoke it if still valid, restrict access to the worker logs, and add secret redaction before diff/log persistence. Do not paste sensitive diffs into Kanban comments or metadata. + +### 3.3 Architecture pivot to a Mac-hosted adapter + +**Verified fact:** User comments corrected the architectural assumption: an existing device-facing route on port 8642 was separate from the SmallWebRTC service on port 7860. It was not automatically protocol-compatible with Pipecat, but it offered a simpler adapter boundary. + +**Verified fact:** The approved pivot moved complexity to the Mac: + +```text +Tactility app + -- protocol-v1 WS, 16 kHz mono S16LE --> +Mac LAN adapter + -- VAD / STT / Hermes-Pipecat turn processing / TTS --> +Mac LAN adapter + -- metadata + downstream PCM --> +Tactility app / I2S speaker +``` + +The ESP32 would own only connection state, bounded PCM capture/playback, reconnect, and minimal UI. The Mac would own credentials and protocol translation. + +### 3.4 Adapter implementation evidence + +**Verified fact:** Adapter task `t_6983cb62` completed with: + +- a dedicated LAN-only WebSocket adapter; +- protocol-v1 framing and limits; +- a shared Pipecat turn-service boundary; +- 7/7 adapter tests; +- lint and targeted type checks passing; +- a live bind/smoke test while Hermes stayed loopback-only. + +**Verified fact:** The tone smoke proved handshake and upstream byte transport (`ready=true`, 32,000 upstream PCM bytes). It did not prove speech recognition or downstream audio; downstream frame/byte counts were zero. + +**Verified fact:** The worker explicitly recorded that STT → Hermes → Kokoro was unproven because recognizable speech and the required Mac-side Hermes credential were unavailable in that run. + +**Assessment:** Completing the adapter card was defensible only as an adapter implementation milestone because the handoff clearly named the missing credential-dependent gate. It was not end-to-end voice proof. + +### 3.5 Native protocol-v1 client implementation + +**Verified fact:** Client task `t_548c79a4` replaced the copied UI with a minimal auto-start protocol-v1 client and added host-testable protocol/state helpers. Recorded verification included: + +- strict host protocol test passing; +- ESP32-S3 app build/package passing; +- all loader symbols resolved in the then-available verifier context; +- adapter tests passing; +- hardware identity rechecked. + +**Verified fact:** Hardware proof was missing at the first block. Later, direct foreground/user intervention installed and launched the app on board `192.168.68.129` and moved the adapter to the board-reachable `.112` address. + +**Verified fact:** A subsequent run collected the decisive negative runtime evidence: + +- board run request returned `ok`; +- screenshot showed `RECONNECTING / Gateway unavailable; retry scheduled`; +- adapter was listening on `192.168.68.112:8642` but had no active board TCP session; +- serial showed app/I2S lifecycle and retry-related activity only; +- there was no upstream PCM, VAD, transcript, downstream audio, playback, or reconnect recovery proof. + +**Verified fact:** Sanitized connection-stage logging was added and the diagnostic build passed host/build/symbol checks, but the new package was not installed because the private-network dashboard PUT remained behind the execution approval gate. + +### 3.6 Duplicate continuation cards and final board state + +**Verified fact:** The original Tech Lead and implementation cards were archived. Two overlapping hardware-validation continuations then existed: + +- `t_f3c3aaeb` — canonical hardware WS/speaker-loop proof, now `triage` after two repeated approval blocks. +- `t_357758e3` — another runtime-validation continuation, now `blocked` on the same install/run approval. + +**Verified fact:** `t_f3c3aaeb` behaved exactly as designed: run 16 blocked for approval, was unblocked, run 18 hit the same approval gate, and Hermes emitted `block_loop_detected`, moving the task to `triage`. + +**Verified fact:** `t_357758e3` says in its body that it was deliberately parentless to avoid archived-parent deadlock. Its event history then shows it was linked to archived root `t_139d9fb9`, and its current parent list includes that archived task. + +**Inference:** `t_357758e3` could run once because it had already been claimed when the link was added. On a later unblock, that archived/non-done parent would cause it to land in `todo`, not `ready`, recreating the dependency deadlock its body intended to avoid. + +**Verified fact:** `t_5b0e7de4`, the Tech Lead evidence-review card, remains `todo` behind the unfinished hardware-validation dependency. + +## 4. What went wrong versus normal Kanban behavior + +### 4.1 Normal Kanban behavior — not bugs + +1. **Children stayed `todo` behind an unfinished parent.** This is correct dependency enforcement. +2. **Archived parents did not satisfy dependencies.** Correct: only `done` satisfies a parent edge. +3. **Blocked tasks did not run until unblocked.** Correct human-in-the-loop behavior. +4. **A second same-cause block moved the task to triage.** Correct block-loop protection. +5. **Dispatcher nudges did nothing for blocked/triage/todo cards.** Correct: dispatch only claims `ready` tasks. +6. **Comments did not alter a running worker's approval state.** Correct: comments are durable next-run context, not execution control. +7. **The watchdog did not perform acceptance tests.** Correct: worker watchdogs supervise lifecycle/liveness, not hardware truth. +8. **A worker refused to claim install/run success after `pending_approval`.** Correct and safer than fabricating device evidence. +9. **Compile/build/symbol evidence did not prove device/runtime success.** Correct evidence separation by the workers, even though the task graph later blurred the gates. + +### 4.2 Orchestration mistakes + +1. **Circular/inverted root ownership.** The root Tech Lead task was both an upstream parent and a downstream reviewer waiting on its own children. The first child chain therefore could not start without replacement cards. +2. **Architecture changed faster than task bodies.** SmallWebRTC bodies, protocol-v1 comments, `.102` and `.112` endpoints, and credential assumptions coexisted. Later comments superseded earlier bodies, but every worker still received the stale material. +3. **Archived tasks remained in the dependency design.** Archiving did not complete the chain. A later “parentless” continuation was linked back to an archived root, reintroducing a hidden todo deadlock. +4. **Duplicate canonical hardware cards.** `t_f3c3aaeb` and `t_357758e3` cover substantially the same validation. This split attention and made status interpretation harder. +5. **Permission-gated actions were assigned to unattended workers without pre-clearing the gate.** The exact private-LAN PUT/POST was repeatedly required but repeatedly returned `pending_approval`. Re-spawning could not change that execution policy. +6. **Repeated unblock without removing the cause.** The same approval-dependent card was unblocked twice, correctly tripping the loop breaker. Tech Lead and watchdog comments then kept asking for dispatch even though the task was in triage. +7. **One card bundled too many proof domains.** Endpoint diagnosis, package install, WebSocket handshake, mic transport, VAD, speaker playback, reconnect, STT, Hermes credentials, and TTS all sat in one acceptance gate. One credential/approval issue prevented clean progress reporting for independent layers. +8. **Review-required and capability blocking were conflated.** Code review, hardware approval, and missing runtime credentials should have been separate cards or explicit sequential gates. +9. **Foreground intervention was not normalized back into the board.** The user successfully installed/launched the app and corrected the reachable adapter endpoint, but the active graph still contained old endpoint text and duplicate approval-gated cards. Manual progress was recorded mostly as comments rather than a single revised canonical body and dependency graph. +10. **Evidence was requested repeatedly rather than made structurally prerequisite.** Watchdog comments repeated screenshot/serial/adapter requirements, but no executable state transition or pre-approved worker environment accompanied them. +11. **A tool/skill mismatch appeared in logs.** A worker log reported `Unknown toolsets: esp32_voice`; the repository-required `tactility-app-development` skill was also unavailable to this Tech Lead profile during this report. Task-specific tools/skills should be verified before dispatch. +12. **Sensitive diff material reached durable logs.** Removing a credential from source was correct, but logging the deletion diff retained the old secret in the audit trail. + +### 4.3 The central orchestration failure + +**Inference:** The fundamental mistake was treating Kanban as if repeated comments, unblocks, dispatcher nudges, and watchdog reminders could substitute for a corrected state graph and an approved execution channel. Kanban faithfully persisted and enforced the states it was given. The graph and permissions—not the dispatcher—were inconsistent with the desired next action. + +## 5. Corrected operating model + +### 5.1 One source of truth per layer + +**Recommendation:** Maintain one current design note and one canonical card per active gate: + +- Architecture decision record: Mac-hosted protocol-v1 adapter; no ESP32 WebRTC in this effort. +- Canonical endpoint: selected and verified at task start; source, README, persisted config, adapter bind, and task body must agree. +- Canonical hardware-validation card: exactly one. +- Canonical final-review card: depends on completed proof cards, not an archived orchestration root. + +When scope changes, edit the task body or create a replacement and archive the stale task only after removing/rebuilding dependency edges. Do not rely solely on “supersedes above” comments. + +### 5.2 Separate implementation, runtime, and credential gates + +**Recommendation:** Use these evidence classes: + +| Gate | Must prove | Must not claim | +|---|---|---| +| A. Static/host | protocol unit tests, lint/type checks, build, symbol resolution | device connectivity or audio | +| B. Device transport | app runs, 101 upgrade/accepted session, connected screenshot, serial lifecycle, adapter session | intelligible speech, Hermes, or TTS | +| C. Upstream audio | board-originated PCM/frame counters and VAD turn boundaries | STT correctness | +| D. Downstream audio | deterministic adapter-generated response PCM received and written to I2S | TTS correctness | +| E. Recovery | adapter interruption causes RECONNECTING and automatic return to STREAMING | conversational success | +| F. Credential-dependent pipeline | recognizable speech → STT result → Hermes response → TTS frames → device playback | complete until all service credentials are available and real logs exist | + +Gates B–E should be achievable without Hermes/STT/TTS credentials. Gate F should be a separate card that can block honestly on missing Mac-side credentials without invalidating transport/audio proof. + +### 5.3 Permissions are prerequisites, not retry conditions + +**Recommendation:** Before dispatching a hardware worker: + +1. Confirm the exact board IP, app ID, serial port, adapter endpoint, and allowed actions. +2. Pre-approve the exact private-LAN operations through the execution system that will enforce approval. +3. Confirm the worker can perform GET screenshot, PUT install, POST run, serial read, and adapter-log read. +4. Only then move the card to `ready`. + +If the tool still reports `pending_approval`, block once with a precise action. Do not repeatedly unblock until the approval controller—not merely a comment—shows the action is executable. + +### 5.4 Evidence-first lifecycle + +**Recommendation:** Each proof card should end with a structured comment containing: + +- exact source revision/diff scope; +- exact command/action and actual result; +- board identity and serial port; +- endpoint and persisted-config source; +- screenshot/log artifact paths or task attachments; +- counters/state transitions; +- what remains unproved; +- explicit pass/fail for that card's gate. + +A reviewer should inspect attachments and source before moving the next card. “Adapter is live,” “board is reachable,” and “run returned ok” are prerequisites, not proof of streaming. + +## 6. Recommended task decomposition for tomorrow + +The following is a proposed graph, not a set of tasks created by this report. + +### Task 0 — Human/Tech Lead board reconciliation + +Owner: Tech Lead with human board-control access. + +Actions: + +- Choose one canonical hardware-validation card. +- Remove every dependency on archived `t_139d9fb9`. +- Archive or close the duplicate continuation only after preserving unique evidence. +- Replace stale body text so `.102`, SmallWebRTC, and obsolete credential assumptions are not in the canonical card. +- Verify assignee profile and required skill/tool availability. +- Verify the exact hardware PUT/POST actions are approved in the execution control plane. + +Exit gate: one `ready` card, no archived parents, no duplicate runtime card, no unresolved action approval. + +### Task 1 — Endpoint and persisted-config diagnosis + +Owner: Coder. + +Scope: + +- Read current source default, README, adapter bind, and device user-data config. +- Determine whether persisted `config.json` overrides `.112` with stale `.102`. +- Install the already-built sanitized diagnostic image only if needed and approved. +- Capture serial stage logs and adapter access logs. + +Exit gate: + +- exact endpoint source identified; +- either WebSocket upgrade accepted or a concrete failing stage proven; +- screenshot and serial/adapter artifacts attached; +- no transport redesign. + +### Task 2 — Device transport and upstream mic proof + +Parent: Task 1 done. + +Scope: + +- Reach CONNECTED/STREAMING. +- Prove accepted protocol-v1 session. +- Prove board-originated PCM byte/frame counters and VAD completion using non-sensitive audio. + +Exit gate: + +- connected/streaming screenshot; +- serial connection lifecycle; +- adapter accepted-session plus upstream counters; +- no dependency on Hermes credential or STT success. + +### Task 3 — Downstream speaker-path proof + +Parent: Task 2 done. + +Scope: + +- Use an approved deterministic, non-secret response PCM fixture at the adapter boundary. +- Prove metadata, downstream bytes/frames, device receipt, and I2S write/playback. + +Exit gate: + +- adapter downstream counters; +- client serial metadata/I2S evidence; +- human-observed or instrumented playback evidence; +- no TTS credential required. + +### Task 4 — Reconnect proof + +Parent: Tasks 2 and 3 done. + +Scope: + +- Perform one approved adapter interruption. +- Prove STREAMING → RECONNECTING → STREAMING without user input. + +Exit gate: timestamp-correlated screenshot/serial/adapter evidence for all three states and bounded retry behavior. + +### Task 5 — Credential-dependent conversational proof + +Parents: Tasks 2 and 3 done. This may run after Task 4 or in parallel if safe. + +Scope: + +- Confirm required Mac-side credentials are present without reading or printing values. +- Use a short approved spoken phrase or fixture. +- Prove STT output, Hermes/Pipecat turn completion, TTS frame production, downstream delivery, and device playback. + +Exit gate: sanitized service-stage evidence and byte/frame counters. If credentials are absent, block this card only; Tasks 2–4 remain valid. + +### Task 6 — Tech Lead evidence review + +Parents: Tasks 1–5 done, or Tasks 1–4 done with Task 5 explicitly blocked as a named credential gate if the release scope permits transport-only acceptance. + +Review: + +- inspect diffs and logs directly; +- confirm source/docs/persisted config agree; +- verify no credentials/raw audio/transcripts were persisted; +- confirm tests/build/symbol checks; +- confirm device/transport/upstream/downstream/reconnect evidence; +- state exactly whether conversational proof passed or remains credential-blocked. + +Exit gate: approved structured handoff, residual risks, and a deliberate decision about whether credential-dependent proof is required for release. + +## 7. Morning checklist + +### Tech Lead + +- [ ] Open the live task graph; do not rely on yesterday's comments alone. +- [ ] Select one canonical runtime card and remove archived-parent edges. +- [ ] Resolve `triage` deliberately; a dispatcher nudge is not enough. +- [ ] Update the canonical body to protocol-v1 WS and `.112`; remove stale WebRTC/`.102` instructions. +- [ ] Confirm exact approval for dashboard PUT/POST and serial/log access in the actual worker execution surface. +- [ ] Verify `coder` exists and required task skills/toolsets are installed. +- [ ] Split credential-independent and credential-dependent proof. +- [ ] Require artifact-backed evidence, not “live/reachable/ok” summaries. + +### Coder + +- [ ] Call `kanban_show` and follow only the revised canonical body. +- [ ] Inspect git status/diff and preserve unrelated changes. +- [ ] Reconfirm board identity, app ID, serial port, adapter bind, source default, README, and persisted config. +- [ ] Run static tests/build/symbol checks once; do not repeat them as a substitute for runtime evidence. +- [ ] Use screenshot, serial, and adapter logs together to identify the exact WebSocket stage. +- [ ] Prove transport, upstream PCM/VAD, downstream PCM/I2S, and reconnect as separate gates. +- [ ] Do not expose credentials, raw audio, or transcript content in durable logs. +- [ ] Block once on a real approval/capability gate; do not self-loop. + +### Orchestrator / board operator + +- [ ] Ground every assignee in `hermes profile list`. +- [ ] Ensure only `done` parents gate downstream tasks. +- [ ] Never use an archived orchestration root as a parent. +- [ ] Do not create duplicate canonical cards. +- [ ] Treat comments as context, not state transitions. +- [ ] Do not repeatedly unblock the same unresolved reason. +- [ ] Understand that `triage`, `todo`, `blocked`, and `ready` require different corrective actions. +- [ ] Use one dispatcher owner; do not start a competing standalone daemon. +- [ ] Keep watchdog messages concise and actionable; they cannot satisfy evidence or approvals. + +## 8. Current verified state and remaining risks + +### Verified repository state at report time + +- Branch `main`, HEAD `6e83272c8e6c09af1c0b093e56ccd7e1dfdb5fa8`, one commit ahead of `origin/main`. +- PipecatVoice currently has four modified tracked files and five untracked app-related paths. +- `git diff --check -- Apps/PipecatVoice` returned no errors. +- No build or test was run during this report because the task was explicitly read-only. + +### What is proven + +- Official Pipecat ESP32 SmallWebRTC client exists and builds as full firmware. +- Current Tactility external ELF is not proven capable of hosting that dependency set and has a documented NO-GO decision. +- Protocol-v1 LAN adapter implementation has deterministic test/lint/type evidence. +- Host-generated tone reached the adapter and exercised upstream framing/VAD failure mapping. +- Minimal protocol-v1 client has host-test/build/symbol evidence from prior runs. +- App package was installed/launched on the personal board during direct foreground intervention. +- The app subsequently displayed RECONNECTING while the adapter listener had no board TCP session. + +### What is not proven + +- Accepted ESP32 WebSocket upgrade/session at `.112:8642`. +- Board-originated upstream PCM reaching adapter VAD. +- Downstream PCM reaching and playing through board I2S. +- Automatic reconnect recovery. +- Recognizable speech transcription from the board mic. +- Hermes/Pipecat response generation for the board session. +- Kokoro/TTS output delivered to and played by the device. + +### Residual risks + +1. Persisted user-data config may still override the compiled `.112` default with stale `.102`; this is an inference until inspected on the device. +2. README/config documentation and source endpoint remain inconsistent in inspected evidence. +3. The active continuation graph contains duplicate cards and an archived parent edge. +4. The exact install/run security approval remains unresolved in worker execution. +5. Credential-dependent services remain unproven and must not be conflated with transport proof. +6. Historical worker logs contain a removed sensitive value; rotation/redaction review is warranted. +7. The documented local SDK/firmware verifier paths have drifted across runs; tomorrow's card must record the actual environment it uses. + +## 9. Bottom line + +Hermes Kanban did not lose the work or behave unpredictably. It preserved enough task/run/comment evidence to reconstruct the failure accurately. The dispatcher, dependency engine, block-loop breaker, and approval-aware workers mostly behaved as designed. The failure was operational: the architecture pivot was not followed by a clean graph rewrite, stale and duplicate cards remained active, permission-gated hardware actions were treated as retryable work, and independent evidence layers were bundled into one terminal gate. + +The shortest safe path tomorrow is not another broad “finish PipecatVoice” card. It is: reconcile the board, pre-clear the exact device actions, diagnose the endpoint/persisted config, then prove transport, upstream audio, downstream audio, reconnect, and credential-dependent conversation in separate evidence-gated steps. \ No newline at end of file diff --git a/projects/tactility_voice_messages_2026.md b/projects/tactility_voice_messages_2026.md new file mode 100644 index 0000000..1c55425 --- /dev/null +++ b/projects/tactility_voice_messages_2026.md @@ -0,0 +1,242 @@ +# Tactility Voice Messages — Backend Implementation Plan + +> **For Hermes:** Use subagent-driven-development skill to implement this plan task-by-task. + +**Status:** planning draft — no service, database, public route, device app, or deployment has been created. + +**Goal:** Build a private, family-only voice-message backend, initially hosted on the Mac mini, that links a Tactility device to one family member at a time; persists messages until and after recipient-device delivery; and can securely serve an internet-connected device in Mexico. + +**Architecture:** A dedicated API on the Mac mini owns the SQLite metadata database and a private immutable audio archive. A public HTTPS reverse-proxy route forwards only to that API. Tactility devices hold a per-device credential and their selected person in app data on the SD card; every API request is authenticated as a device, then authorized only for the device’s active person. The device app is a separate `Voice Messages` app that reuses the existing local `Voice Recorder` WAV capture/playback patterns without reusing the unrelated Hermes/Pipecat conversation gateway. + +**Proposed stack:** Python 3.9-compatible FastAPI service; SQLAlchemy + Alembic; SQLite; private filesystem audio storage; launchd service on the Mac mini; HTTPS/WSS reverse proxy; C/C++ Tactility app. Containerization and a FamReynaServer migration are deferred but the service must keep configuration, database, and audio storage portable. + +--- + +## Confirmed product decisions + +| Area | Decision | +|---|---| +| Initial authoritative host | Mac mini. Design for a later migration to FamReynaServer. | +| First-run identity | Family people are prepopulated on the backend. A device displays the roster and stores its selected active person on SD card. | +| Device relationship | One person may have only one linked device at a time. | +| Reassignment | The device may switch people freely from Settings, but the server refuses assignment to a person already linked to another device. The device then clears its local inbox cache. | +| Remote reachability | Must support a stable internet URL for a device in Mexico. | +| Inbox | Private: a person can access only messages they sent or received. Newest first; sender filter applies inside this private view. | +| Audio/metadata | Audio-first v1. Each list row shows sender, recipient(s), timestamp, duration, and delivery state. No transcript or text search. | +| Delivery state | Track delivery only. A message becomes delivered only after the recipient device has durably saved its audio locally and acknowledges that fact. Do not track listening/playback. | +| Server retention | Keep audio and metadata indefinitely after delivery as a family archive. | +| Deletion | No deletion or hiding in v1. The archive is append-only. | + +## Provisional defaults made after interview timeouts + +These are intentionally isolated so they can be changed without changing the confirmed requirements. + +| Area | Default | Rationale | +|---|---|---| +| Recipients | One or more people per message | Supports a message to both grandparents; delivery remains per recipient. | +| Maximum message length | 2 minutes | Bounds transfer and storage while remaining useful for family updates. | +| Administration | Protected server-side seed/management command | Smallest v1 surface; no public admin UI. | +| Public connection | HTTPS/WSS subdomain through the existing family reverse proxy | Provides a stable URL without publishing a raw Mac mini listener. | +| Client boundary | New `Voice Messages` app | Preserves the existing personal local `Voice Recorder` behavior. | +| Audio archival format | Retain validated source WAV | Device code already records/plays WAV. Add transcoding only after v1 delivery works. | + +## Source discovery evidence + +- Existing application repository: `/Users/adolforeyna/Projects/electronics/tactility/tactility_apps`. +- Existing recorder: `Apps/VoiceRecorder/manifest.properties` identifies `one.tactility.voicerecorder`, visible name `Voice Recorder`. +- `Apps/VoiceRecorder/main/Source/main.c` records WAV files under `/sdcard/memos/` and has no network/upload implementation. +- Recorder source actually sets `SAMPLE_RATE` to 44100 and writes that rate into `WavHeader`; the top comment calling it 16 kHz is stale. Two minutes of 44.1 kHz mono PCM16 is approximately 10.09 MiB. Do not rely on the stale comment. +- Existing `Apps/PipecatVoice` is a separate live conversational client with a private-LAN raw-WebSocket protocol and a hard `ws://`-only endpoint parser. It must not be repurposed for the public message service. +- An older PocketBase voice-memo prototype exists on FamReynaServer, but its documented collection rules were public and its model is device-based/`played`-based. It is reference material only, not a production starting point. + +## Security model + +1. Before a device can connect, an administrator creates an approved device record with an opaque device ID and a high-entropy bootstrap secret. Never use a display name, MAC address, or SD-card person selection as authentication. +2. The installer places only the public server URL, device ID, and bootstrap secret in the device’s private app data on the SD card. Nothing is compiled into firmware/source. +3. Over TLS, the device exchanges its bootstrap secret once for a rotatable device credential. The server stores only a secure verifier/hash, not a plaintext reusable secret. +4. Each request authenticates the physical device. Server authorization derives the active person from the server’s device-assignment record; a client-supplied person ID is never trusted for read/write access. +5. A `switch active person` request requires authenticated device credentials, rejects people who are assigned elsewhere, creates an append-only assignment audit event, and invalidates cached authorization state. +6. The public reverse proxy permits only the message-service host/path and forwards to a narrowly bound Mac-mini listener. No Hermes `:8642`, Pipecat, or internal API key is exposed. TLS certificate validation on the ESP32 is mandatory; the new client must support `https://`/`wss://`, unlike the old Pipecat app. +7. Logs contain IDs, status codes, and bounded error categories—not credentials, full URLs with credentials, or audio/transcript content. + +## Data model + +### `people` +`id`, unique `slug`, display name, active flag, created/updated timestamps. + +### `devices` +`id`, unique opaque device ID, human-readable device label, credential verifier/version, active-person foreign key nullable, revoked timestamp nullable, created/updated timestamps. A unique constraint on non-null `active_person_id` enforces one active device per person. + +### `device_assignment_events` +`id`, device ID, prior person nullable, new person nullable, actor type (`device` or `admin`), timestamp, reason. Append-only audit trail. + +### `messages` +UUID `id`, sender person ID, immutable audio relative path, SHA-256 digest, detected audio format/rate/channels/bit depth, server-measured duration, byte count, creation timestamp. No mutable title, transcript, read status, or deletion flag in v1. + +### `message_recipients` +`id`, message ID, recipient person ID, created timestamp. Unique `(message_id, recipient_person_id)`; reject a sender as recipient unless that behavior is deliberately added later. + +### `deliveries` +`id`, message-recipient ID, recipient device ID captured at send time, state (`pending`, `delivered`), delivered timestamp nullable, idempotency key, acknowledged audio digest. A recipient assignment change never rewrites historical delivery records. + +### `request_audit` +Bounded operational audit: request ID, device ID, endpoint class, result, timestamp. Apply retention separately to this operational log; it is not message content. + +## API contract v1 + +All endpoints are versioned under `/v1`. Payloads use JSON except audio upload/download. Every non-bootstrap endpoint requires authenticated device credentials. + +1. `POST /v1/device/bootstrap` + - Input: device ID + bootstrap secret. + - Output: rotated device credential and current device assignment, if any. + - Rate-limit and record failures without exposing whether a person exists. + +2. `GET /v1/device/state` + - Returns the authenticated device, active person, roster of active family people, and current API capability/version values. + +3. `PUT /v1/device/assignment` + - Input: selected person ID. + - Atomically validates that the person is active and unassigned, changes assignment, appends audit event, and returns the new assignment. + +4. `POST /v1/messages` + - Multipart upload authenticated as the active sender. + - Metadata: idempotency key and recipient IDs; audio part only. + - Server streams upload to a temporary private file, caps size at 11 MiB, parses the WAV header, validates mono PCM16/allowed rate and a maximum measured duration of 120 seconds, hashes it, atomically commits it to archive storage, then writes the message/recipient/delivery rows in one database transaction. + - Never create a visible message record for partial/failed audio uploads. + +5. `GET /v1/messages?folder=inbox|sent&sender_id=&cursor=&limit=` + - Newest-first stable cursor pagination. + - `inbox`: active person is a recipient; `sent`: active person is sender. Sender filter is only applied after this access constraint. + - Returns no audio bytes. + +6. `GET /v1/messages/{message_id}/audio` + - Allowed only for the sender or an intended recipient’s active device. + - Supports resumable Range download if the device runtime can support it; otherwise v1 uses full-download-to-temp-file, hash verification, atomic SD rename, then acknowledgment. + +7. `POST /v1/deliveries/{delivery_id}/ack` + - Allowed only to the exact recipient device captured in that delivery row. + - Input includes message SHA-256. It is idempotent and transitions only `pending -> delivered` after matching the server digest. + +8. `GET /healthz` and `GET /readyz` + - Local/proxy monitoring only; no family data. + +## Client behavior that the backend depends on + +- On first launch, bootstrap using device configuration, fetch roster, and present the name selection screen. +- Persist the selected person and credential through the platform user-data path, not a compiled constant. On assignment change, erase only the Voice Messages app’s cached inbox/audio—not the separate Voice Recorder’s local memos. +- On send: record to a temporary SD WAV, show recipients, upload with a generated idempotency key, and retain the local temporary file until the server returns a committed message ID. Retry safely with the same idempotency key after connectivity loss. +- On receive: sync metadata when the app opens/refreshes; for a pending delivery, download audio to a temporary file, verify SHA-256 and WAV validity, atomically rename to the app cache, then acknowledge delivery. A failed download/SD write must not be acknowledged. +- The client is foreground-polling in v1. No background listener, wake-word behavior, tracking, transcription, or read receipts are included. + +## Proposed repository and service layout + +Create a new repository only after approval: + +```text +/Users/adolforeyna/Projects/tactility-voice-messages/ + pyproject.toml + src/tactility_voice_messages/ + app.py + config.py + db.py + models.py + auth.py + wav_validation.py + archive.py + routes/ + bootstrap.py + devices.py + messages.py + deliveries.py + services/ + assignments.py + message_uploads.py + inbox.py + migrations/ + tests/ + test_bootstrap.py + test_assignment.py + test_authorization.py + test_message_upload.py + test_inbox.py + test_delivery_ack.py + test_wav_validation.py + test_archive_atomicity.py + scripts/ + seed_family.py + backup_verify.py + run_dev.sh + deploy/ + com.reyna.tactility-voice-messages.plist + reverse-proxy-route.json + restore-reverse-proxy-route.sh + docs/ + protocol-v1.md + operations.md +``` + +Runtime data is deliberately outside the repository, e.g. `~/Library/Application Support/TactilityVoiceMessages/` with a `0700` parent: + +```text +TactilityVoiceMessages/ + data.sqlite3 + media/aa/bb/<message-uuid>.wav + incoming/ # same-filesystem temporary uploads + backups/ + logs/ +``` + +## Delivery and migration design + +- Launch the API as a Mac-mini user LaunchAgent, bound only to the private LAN interface required by the reverse proxy—not `0.0.0.0`. +- The reverse proxy terminates TLS and has a durable route definition plus restore script. It forwards only the exact host to the Mac mini port. +- Backups are consistent SQLite backups plus content-addressed/media manifest verification. A backup job must verify database integrity, every archive file’s hash/size, and a restoration drill before being called ready. +- The future FamReynaServer migration copies the stopped/consistent SQLite database plus media archive, updates only endpoint infrastructure, runs the same migration/version checks, and verifies authorized send/download/ack flows from a device. Do not migrate by copying an active SQLite/WAL database blindly. + +## TDD implementation sequence + +### Task 1: Scaffold configuration and health checks +Create the repository, 3.9-compatible dependency lock, validated configuration, `healthz`, `readyz`, and focused tests. Verify startup with an ephemeral SQLite database and a private temp directory. + +### Task 2: Implement schema and migrations +Write failing tests for unique active-person assignment, immutable message rows, recipient uniqueness, and delivery state. Create migrations and prove upgrade from empty database. + +### Task 3: Implement device bootstrap and request authentication +Test bootstrap rate limits, secret hashing, credential rotation, revoked-device rejection, and zero credential leakage in errors/logs. Implement the minimal device auth middleware. + +### Task 4: Implement assignment and roster authorization +Test unassigned selection, rejection of second-device claim, reassignment audit events, and roster access restricted to authenticated approved devices. + +### Task 5: Implement WAV validation and private atomic archive +Test malformed RIFF headers, non-PCM, wrong channel/bit-depth/rate, oversized files, over-two-minute content, hash mismatch, cleanup after DB failure, and archive path traversal rejection. + +### Task 6: Implement message creation and fan-out deliveries +Test sender-only creation, recipient deduplication, atomic creation of one delivery per recipient, no visible partial upload, and idempotent retry with the same key. + +### Task 7: Implement private inbox/sent listing and sender filter +Test cursor stability, newest-first ordering, no cross-person leakage, sent visibility, incoming visibility, and filter behavior. + +### Task 8: Implement authorized download and delivery acknowledgment +Test that only sender/intended recipient can download, reassigned devices cannot claim historical delivery, acknowledgment digest matching, and idempotent `pending -> delivered` transition. + +### Task 9: Implement seed/admin command, backup verification, and operations docs +Test seed-file validation, duplicate IDs/slugs rejection, safe credential handling, backup manifest verification, and a test restoration into a new data directory. + +### Task 10: Deploy only after separate approval +Prepare but do not activate the LaunchAgent, reverse-proxy route, DNS, or public endpoint without user approval. Before go-live, test with a nonproduction device against HTTPS, prove certificate validation, send a real audio message, verify an offline recipient remains pending, then verify download-to-SD precedes one successful delivery acknowledgment. + +## Acceptance tests + +1. An approved blank device can select an unassigned family person; a second device cannot select that same person. +2. Reassigning a device makes its old cached inbox inaccessible and returns only the new person’s permitted messages. +3. A sender can send one validated WAV to multiple recipients; every recipient has an independent pending delivery. +4. A recipient offline for days receives the pending message when it next syncs; server retention continues afterward. +5. Sender and recipient cannot access another person’s messages through altered IDs, query filters, direct audio URLs, or replayed credentials. +6. A network interruption during upload creates no message; a retry with the same idempotency key creates exactly one message. +7. A network interruption or full SD card during download does not set delivered. A completed verified local file sets delivered exactly once. +8. The Mexico-device path uses valid TLS and reaches only the dedicated service; invalid/revoked credentials cannot enumerate people, messages, or audio. +9. A verified backup can restore the full metadata/audio archive and preserve SHA-256 validation. + +## Explicit non-goals for v1 + +- Hermes/Pipecat integration, live conversation streaming, speech-to-text, voice recognition, push notifications, background device listener, read/listen receipts, delete/edit/forward, a browser inbox, public account creation, free device switching to already assigned people, or automatic audio transcoding. diff --git a/tools/__pycache__/render_parent_book.cpython-314.pyc b/tools/__pycache__/render_parent_book.cpython-314.pyc new file mode 100644 index 0000000..3db5b35 Binary files /dev/null and b/tools/__pycache__/render_parent_book.cpython-314.pyc differ diff --git a/tools/__pycache__/test_parent_review_contract.cpython-314-pytest-9.0.3.pyc b/tools/__pycache__/test_parent_review_contract.cpython-314-pytest-9.0.3.pyc new file mode 100644 index 0000000..ab2ff4a Binary files /dev/null and b/tools/__pycache__/test_parent_review_contract.cpython-314-pytest-9.0.3.pyc differ diff --git a/tools/parent_review_contract.json b/tools/parent_review_contract.json new file mode 100644 index 0000000..f3694e8 --- /dev/null +++ b/tools/parent_review_contract.json @@ -0,0 +1,8 @@ +{ + "required_main_chapter_prefixes": ["Chapter 0:", "Chapter 1:"], + "required_contents_target_prefixes": ["chapter-0", "chapter-1"], + "forbidden_removed_main_chapters": true, + "subtitle_rule": "Remove only listed internal level-3 opening subtitles; preserve level-2 main chapter headings and anchors.", + "required_workbook_heading": "Reflection and Action", + "excluded_content": ["EDITORIAL COMMENT", "Development themes", "Themes captured for future book development"] +} diff --git a/tools/prepare_parent_review_edition.py b/tools/prepare_parent_review_edition.py new file mode 100644 index 0000000..69b1bec --- /dev/null +++ b/tools/prepare_parent_review_edition.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python3 +"""Create the parent-review edition without altering the editorial source draft.""" +from __future__ import annotations + +import re +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[1] +SOURCE = ROOT / "projects/covenant_parenting_bryan_hickman_revised.md" +OUTPUT = ROOT / "projects/covenant_parenting_bryan_hickman_parent_review.md" + +BOOKS = ( + "Genesis|Exodus|Leviticus|Numbers|Deuteronomy|Joshua|Judges|Ruth|" + "1 Samuel|2 Samuel|1 Kings|2 Kings|1 Chronicles|2 Chronicles|Ezra|Nehemiah|Esther|Job|" + "Psalms?|Proverbs|Ecclesiastes|Song of Solomon|Isaiah|Jeremiah|Lamentations|Ezekiel|Daniel|" + "Hosea|Joel|Amos|Obadiah|Jonah|Micah|Nahum|Habakkuk|Zephaniah|Haggai|Zechariah|Malachi|" + "Matthew|Mark|Luke|John|Acts|Romans|1 Corinthians|2 Corinthians|Galatians|Ephesians|Philippians|" + "Colossians|1 Thessalonians|2 Thessalonians|1 Timothy|2 Timothy|Titus|Philemon|Hebrews|James|" + "1 Peter|2 Peter|1 John|2 John|3 John|Jude|Revelation" +) +REFERENCE = re.compile(rf"\b(?:{BOOKS})\s+\d{{1,3}}:\d{{1,3}}(?:[–-]\d{{1,3}})?") + + +def mark_nkjv(match: re.Match[str]) -> str: + text = match.group(0) + return text + " (NKJV)" + + +def remove_opening_subheads(body: str) -> str: + """Turn Chapter 1's labeled blocks into one natural, continuous reading.""" + start = body.index("## Chapter 1:") + end = body.index("## Chapter 2:", start) + opening = body[start:end] + opening = re.sub(r"^### (?:The Ultimate Goal of Training|Jesus as the Ultimate Model|Building for Generations|Healing the Parents First)\n\n", "", opening, flags=re.M) + return body[:start] + opening + body[end:] + + +def relocate_workbook_sections(body: str) -> str: + """Put each chapter's reflection material at that chapter's end, not in Chapter 6.""" + start = body.index("## Chapter 6: The Covenant Parenting Workbook") + end = body.index("## The 30-Day Covenant Parenting Challenge Calendar", start) + workbook = body[start:end] + sections: dict[int, str] = {} + matches = list(re.finditer(r"^### Workbook — Chapter (\d) focus: .*?\n", workbook, flags=re.M)) + for index, match in enumerate(matches): + next_start = matches[index + 1].start() if index + 1 < len(matches) else len(workbook) + chapter = int(match.group(1)) + content = workbook[match.end():next_start] + content = re.sub(r"\n*---\s*$", "", content, flags=re.M).strip() + sections[chapter] = "### Reflection and Action\n\n" + content + "\n\n" + body = body[:start].rstrip() + "\n\n" + body[end:] + for chapter, section in sections.items(): + chapter_start = body.index(f"## Chapter {chapter}:") + next_heading = re.search(r"^## ", body[chapter_start + 1:], flags=re.M) + next_chapter = chapter_start + 1 + next_heading.start() if next_heading else len(body) + body = body[:next_chapter].rstrip() + "\n\n" + section + body[next_chapter:] + return body + + +def add_images(body: str) -> str: + """Place content illustrations at the two marked transition points.""" + first = "The pages that follow develop these convictions through the realities of family life: how parents model the Father, how a home learns to respond to conflict, how husband and wife protect the atmosphere of the household, how families guard the influences shaping their children, how ordinary work and presence become part of discipleship, and how parents can rebuild trust when they are beginning late or carrying a complicated history. The final reflections and exercises are meant to move these ideas out of the abstract and into conversations, prayers, decisions, and small daily practices. Covenant parenting is not a checklist that proves we are doing everything right. It is a living relationship, walked out before the Lord and before our children, one faithful response at a time." + body = body.replace(first, first, 1) + first_chapter_anchor = "Our target is to have children who seamlessly step into a personal relationship with their heavenly Father, and in that place find their Kingdom identity and faithfully walk out their Kingdom purpose in this generation. [7]" + body = body.replace(first_chapter_anchor, first_chapter_anchor + "\n\n![The covenant parenting pathway](assets/covenant-parenting-pathway.svg)", 1) + second = "There is extraordinary, transformative power when a parent is willing to be authentic and humble before their children [166]. It models a soft, teachable heart and teaches children how to walk out repentance in their own lives [166]." + body = body.replace(second, second + "\n\n![A family rhythm of humility, repair, and peace](assets/family-rhythm-of-repair.svg)", 1) + return body + + +def main() -> None: + text = SOURCE.read_text(encoding="utf-8") + front, body = text.split("---\n", 2)[1:] + front = re.sub(r'title: .*', 'title: "The Pattern of Covenant Parenting — Parent Review Edition"', front) + front = re.sub(r'status: .*', 'status: parent-review-edition', front) + front = re.sub(r' - editorial-review\n', ' - parent-review\n', front) + body = body[body.index("<!-- EDITORIAL COMMENT: Chapter 0"):] + body = body.replace("Parenting is often", "## Chapter 0: Introduction\n\nParenting is often", 1) + body = "<!-- KEEP_PARENT_OPENING -->\n" + body + body = re.sub(r"^## Introduction\n\n", "", body, count=1, flags=re.M) + body = remove_opening_subheads(body) + body = relocate_workbook_sections(body) + body = add_images(body) + body = REFERENCE.sub(mark_nkjv, body) + body = re.sub(r"\s+\(NKJV\)\s+\(NKJV\)", " (NKJV)", body) + OUTPUT.write_text("---\n" + front.strip() + "\n---\n\n" + body.lstrip(), encoding="utf-8") + print(OUTPUT) + + +if __name__ == "__main__": + main() diff --git a/tools/render_parent_book.py b/tools/render_parent_book.py new file mode 100644 index 0000000..89c9f13 --- /dev/null +++ b/tools/render_parent_book.py @@ -0,0 +1,470 @@ +#!/usr/bin/env python3 +"""Render the Bryan Parent books as linked PDFs. + +The renderer intentionally keeps Markdown as the source of truth. It produces: + - editorial: comments and editorial review sections remain visible; + - clean: HTML comments, editorial review sections, and development-theme notes + are removed for a distraction-free reading edition. + +Chrome's print engine preserves same-document anchors, so the generated PDF has +clickable contents, chapter maps, and repeated "Contents" links. +""" +from __future__ import annotations + +import argparse +import html +import json +import re +import shutil +import subprocess +import tempfile +from pathlib import Path +from urllib.parse import urlparse + +ROOT = Path(__file__).resolve().parents[1] +DEFAULT_SOURCE = ROOT / "projects/covenant_parenting_bryan_hickman_revised.md" +DEFAULT_OUT = ROOT / "exports" +CHROME = Path("/Applications/Google Chrome.app/Contents/MacOS/Google Chrome") +PARENT_REVIEW_CONTRACT = ROOT / "tools" / "parent_review_contract.json" + + +def validate_parent_review_contract(markdown: str) -> None: + """Fail closed if the parent-review transformation lost requested semantics.""" + contract = json.loads(PARENT_REVIEW_CONTRACT.read_text(encoding="utf-8")) + headings = [line[3:].strip() for line in markdown.splitlines() if line.startswith("## ")] + for prefix in contract["required_main_chapter_prefixes"]: + if not any(heading.startswith(prefix) for heading in headings): + raise ValueError(f"Parent-review contract requires main heading {prefix!r}") + if contract["required_workbook_heading"] not in markdown: + raise ValueError("Parent-review contract requires the Reflection and Action workbook placement") + for forbidden in contract["excluded_content"]: + if forbidden in markdown: + raise ValueError(f"Parent-review contract forbids excluded content {forbidden!r}") + + +EDITORIAL_SECTION = re.compile( + r"^(?:Development themes|Themes captured for future (?:book|workbook) development|" + r"Editorial(?:, pastoral, developmental, and safeguarding| and pastoral)? review(?: flags)?|" + r"Editorial, pastoral, developmental, and safeguarding review)$", + re.I, +) + + +def parse_frontmatter(text: str) -> tuple[dict[str, str], str]: + if not text.startswith("---\n"): + return {}, text + end = text.find("\n---", 4) + if end < 0: + return {}, text + raw = text[4:end].strip("\n") + data: dict[str, str] = {} + for line in raw.splitlines(): + if ":" in line and not line.startswith(" "): + key, value = line.split(":", 1) + data[key.strip()] = value.strip().strip('"') + return data, text[end + 4 :].lstrip("\n") + + +def clean_markdown(text: str, mode: str) -> str: + """Remove or preserve editorial material before Markdown conversion.""" + # The parent-review edition deliberately retains its flowing opening. + keep_opening = "<!-- KEEP_PARENT_OPENING -->" in text + # Normalize comments first. In editorial mode we retain a parser token so + # the note is rendered as a visible callout rather than as raw HTML. + if mode == "clean": + text = re.sub(r"<!--.*?-->", "", text, flags=re.S) + else: + text = re.sub( + r"<!--\s*EDITORIAL COMMENT:\s*(.*?)\s*-->", + lambda m: "@@EDITORIAL_COMMENT " + re.sub(r"\s+", " ", m.group(1)).strip() + "@@", + text, + flags=re.S | re.I, + ) + text = re.sub(r"<!--.*?-->", "", text, flags=re.S) + + if mode != "clean": + return text + + # Drop editorial-only sections, but keep the surrounding teaching. A + # heading at level 3 owns content until the next heading at level 3 or 2. + lines = text.splitlines() + output: list[str] = [] + skip_level: int | None = None + for line in lines: + heading = re.match(r"^(#{1,6})\s+(.*?)\s*$", line) + if heading: + level = len(heading.group(1)) + title = heading.group(2).strip().strip("# ") + if skip_level is not None and level <= skip_level: + skip_level = None + if level == 3 and EDITORIAL_SECTION.match(title): + skip_level = 3 + continue + if skip_level is None: + output.append(line) + # A clean reading edition begins with the first chapter, not the revised + # draft's provenance, editorial-status, and Scripture-audit preamble. + first_chapter = next( + (idx for idx, line in enumerate(output) if re.match(r"^##\s+", line)), + None, + ) + if first_chapter is not None and not keep_opening: + output = output[first_chapter:] + # NotebookLM source-reference markers such as [1] and [2, 48] + # belong in the archival/editorial material, not in the reading edition. + output_text = "\n".join(output) + output_text = re.sub(r"\s*\[\s*\d+(?:\s*,\s*\d+)*\s*\]", "", output_text) + return output_text + + +def inline_markdown(value: str) -> str: + """Small, safe inline Markdown subset used by this book.""" + # Preserve URLs before escaping, then restore link markup. + placeholders: list[str] = [] + + def stash(fragment: str) -> str: + placeholders.append(fragment) + return f"\x00{len(placeholders) - 1}\x00" + + value = re.sub( + r"\[([^\]]+)\]\((https?://[^\s)]+|#[^\s)]+)\)", + lambda m: stash(f'<a href="{html.escape(m.group(2), quote=True)}">{html.escape(m.group(1))}</a>'), + value, + ) + value = re.sub( + r"\[\[([^\]]+)\]\]", + lambda m: html.escape(m.group(1).replace("_", " ")), + value, + ) + value = html.escape(value, quote=False) + value = re.sub(r"`([^`]+)`", r"<code>\1</code>", value) + value = re.sub(r"\*\*([^*]+)\*\*", r"<strong>\1</strong>", value) + value = re.sub(r"__([^_]+)__", r"<strong>\1</strong>", value) + value = re.sub(r"(?<!\*)\*([^*]+)\*(?!\*)", r"<em>\1</em>", value) + value = re.sub(r"(?<!_)_([^_]+)_(?!_)", r"<em>\1</em>", value) + value = value.replace(" ", "<br>") + for i, fragment in enumerate(placeholders): + value = value.replace(f"\x00{i}\x00", fragment) + return value + + +def slugify(text: str, used: set[str]) -> str: + plain = re.sub(r"[*_`]+", "", text) + plain = re.sub(r"[^\w\s-]", "", plain, flags=re.UNICODE).strip().lower() + slug = re.sub(r"[-\s]+", "-", plain) or "section" + base = slug + n = 2 + while slug in used: + slug = f"{base}-{n}" + n += 1 + used.add(slug) + return slug + + +def is_table_line(line: str) -> bool: + return line.lstrip().startswith("|") and line.rstrip().endswith("|") + + +def table_html(lines: list[str]) -> str: + rows = [] + for line in lines: + cells = [c.strip() for c in line.strip().strip("|").split("|")] + if all(re.fullmatch(r":?-+:?", c) for c in cells): + continue + rows.append(cells) + if not rows: + return "" + out = ["<table><thead><tr>"] + for cell in rows[0]: + out.append(f"<th>{inline_markdown(cell)}</th>") + out.append("</tr></thead><tbody>") + for row in rows[1:]: + out.append("<tr>" + "".join(f"<td>{inline_markdown(c)}</td>" for c in row) + "</tr>") + out.append("</tbody></table>") + return "".join(out) + + +def headings_from_markdown(text: str) -> list[tuple[int, str, str]]: + used: set[str] = set() + found = [] + for line in text.splitlines(): + m = re.match(r"^(#{1,6})\s+(.*?)\s*$", line) + if not m: + continue + level = len(m.group(1)) + title = m.group(2).strip().strip("# ") + if level == 1: + continue + found.append((level, title, slugify(title, used))) + return found + + +def markdown_to_body(text: str, mode: str, source_dir: Path) -> tuple[str, list[tuple[int, str, str]]]: + headings = headings_from_markdown(text) + heading_iter = iter(headings) + used: set[str] = set() + lines = text.splitlines() + chunks: list[str] = [] + i = 0 + in_code = False + code_lines: list[str] = [] + while i < len(lines): + line = lines[i] + if line.startswith("```"): + if in_code: + chunks.append(f"<pre><code>{html.escape(chr(10).join(code_lines))}</code></pre>") + code_lines = [] + in_code = False + else: + in_code = True + i += 1 + continue + if in_code: + code_lines.append(line) + i += 1 + continue + if not line.strip(): + i += 1 + continue + if line.startswith("@@EDITORIAL_COMMENT ") and line.endswith("@@"): + if mode == "editorial": + note = line[len("@@EDITORIAL_COMMENT ") : -2].strip() + chunks.append(f'<aside class="editorial-comment"><b>Editorial comment</b><br>{inline_markdown(note)}</aside>') + i += 1 + continue + image = re.match(r"^!\[([^\]]*)\]\(([^)]+)\)\s*$", line) + if image: + alt, target = image.groups() + image_path = (source_dir / target).resolve() + if not image_path.is_file(): + raise FileNotFoundError(f"Image not found: {image_path}") + chunks.append( + f'<figure class="content-figure"><img src="{image_path.as_uri()}" alt="{html.escape(alt, quote=True)}">' + f'<figcaption>{inline_markdown(alt)}</figcaption></figure>' + ) + i += 1 + continue + m = re.match(r"^(#{1,6})\s+(.*?)\s*$", line) + if m: + level = len(m.group(1)) + title = m.group(2).strip().strip("# ") + if level == 1: + i += 1 + continue + anchor = slugify(title, used) + if level == 2: + chunks.append(f'<div class="chapter-start" id="{anchor}"></div>') + chunks.append(f'<h{level} id="{anchor}">{inline_markdown(title)}</h{level}>') + # The Contents link is retained without a distracting per-chapter outline. + if level == 2: + chunks.append('<div class="chapter-back"><a href="#contents">Back to Contents</a></div>') + i += 1 + next(heading_iter, None) + continue + if re.match(r"^[-*_]{3,}\s*$", line): + chunks.append("<hr>") + i += 1 + continue + if is_table_line(line): + table_lines = [] + while i < len(lines) and is_table_line(lines[i]): + table_lines.append(lines[i]) + i += 1 + chunks.append(table_html(table_lines)) + continue + if re.match(r"^>\s?", line): + q = [] + while i < len(lines) and re.match(r"^>\s?", lines[i]): + q.append(re.sub(r"^>\s?", "", lines[i])) + i += 1 + chunks.append(f'<blockquote>{inline_markdown(chr(10).join(q))}</blockquote>') + continue + if re.match(r"^\s*[-*+]\s+", line): + items = [] + while i < len(lines) and re.match(r"^\s*[-*+]\s+", lines[i]): + items.append(re.sub(r"^\s*[-*+]\s+", "", lines[i])) + i += 1 + chunks.append("<ul>" + "".join(f"<li>{inline_markdown(x)}</li>" for x in items) + "</ul>") + continue + if re.match(r"^\s*\d+[.)]\s+", line): + items = [] + while i < len(lines) and re.match(r"^\s*\d+[.)]\s+", lines[i]): + items.append(re.sub(r"^\s*\d+[.)]\s+", "", lines[i])) + i += 1 + chunks.append("<ol>" + "".join(f"<li>{inline_markdown(x)}</li>" for x in items) + "</ol>") + continue + # Paragraph: collect until a block boundary. + para = [line.strip()] + i += 1 + while i < len(lines) and lines[i].strip(): + nxt = lines[i] + if (re.match(r"^(#{1,6})\s+", nxt) or re.match(r"^>\s?", nxt) + or re.match(r"^\s*[-*+]\s+", nxt) or re.match(r"^\s*\d+[.)]\s+", nxt) + or re.match(r"^[-*_]{3,}\s*$", nxt) or is_table_line(nxt) + or nxt.startswith("@@EDITORIAL_COMMENT ")): + break + para.append(nxt.strip()) + i += 1 + chunks.append(f"<p>{inline_markdown(chr(10).join(para))}</p>") + return "\n".join(chunks), headings + + +CSS = r""" +@page { size: 6in 9in; margin: .70in .65in .70in .75in; } +* { box-sizing: border-box; } +html { background: #e9e7e1; } +body { margin: 0; color: #25231f; background: #fffdf8; font-family: Georgia, 'Times New Roman', serif; font-size: 10.1pt; line-height: 1.40; } +a { color: #315d75; text-decoration: underline; } +.cover { height: 7.55in; display: flex; flex-direction: column; justify-content: center; text-align: center; page-break-after: always; } +.cover h1 { font-size: 28pt; line-height: 1.08; margin: 0 auto .24in; max-width: 4.7in; color: #263d4a; } +.cover .subtitle { font-size: 12pt; color: #6b5d4d; max-width: 4.2in; margin: 0 auto; } +.cover .rule { width: 1.2in; border-top: 2px solid #b39057; margin: .28in auto; } +.cover .mode { margin-top: .35in; font-size: 8.5pt; letter-spacing: .08em; text-transform: uppercase; color: #827463; } +.contents { page-break-after: always; } +.contents h1 { color: #263d4a; font-size: 22pt; margin-top: 0; } +.toc-list { list-style: none; padding: 0; margin: .2in 0; } +.toc-list li { margin: .11in 0; } +.toc-list a { text-decoration: none; color: #263d4a; } +.toc-list .toc-level-3 { margin-left: .22in; font-size: 9.2pt; } +.contents-note { color: #746b60; font-size: 8.7pt; border-left: 2px solid #b39057; padding-left: .12in; margin-bottom: .25in; } +.chapter-start { page-break-before: always; } +h2 { color: #263d4a; font-size: 19pt; line-height: 1.12; margin: 0 0 .18in; page-break-after: avoid; } +h3 { color: #486372; font-size: 13pt; margin: .28in 0 .08in; page-break-after: avoid; } +h4 { color: #655b4e; font-size: 11pt; margin: .2in 0 .05in; page-break-after: avoid; } +p { margin: 0 0 .13in; widows: 3; orphans: 3; } +blockquote { margin: .18in .18in; padding: .10in .16in; border-left: 3px solid #b39057; color: #51483e; background: #f5f0e7; font-size: 10pt; } +ul, ol { margin: .05in 0 .16in .25in; padding-left: .18in; } +li { margin: .035in 0; } +hr { border: 0; border-top: 1px solid #d4c9b8; margin: .28in 0; } +code { font-family: Menlo, monospace; font-size: .88em; } +pre { white-space: pre-wrap; background: #f0ede7; padding: .12in; font-size: 8pt; } +table { border-collapse: collapse; width: 100%; margin: .16in 0; font-size: 8.4pt; } +th, td { border: 1px solid #d8d0c4; padding: .05in; vertical-align: top; } +th { background: #eef2f1; color: #263d4a; text-align: left; } +.chapter-map { margin: 0 0 .24in; padding: .12in .16in .08in; background: #eef2f1; border: 1px solid #d3dfdf; page-break-inside: avoid; font-size: 8.8pt; } +.chapter-map strong { color: #263d4a; } +.chapter-map ul { margin: .04in 0 .02in .18in; } +.chapter-map li { margin: .01in 0; } +.editorial-comment { margin: .15in 0; padding: .10in .14in; border-left: 3px solid #a25b38; background: #fbefe8; color: #70432f; font-family: Arial, sans-serif; font-size: 8.6pt; } +.chapter-back { text-align: right; margin: -.10in 0 .20in; font: 7.5pt Arial, sans-serif; } +.chapter-back a { color: #6b5d4d; text-decoration: none; } +.content-figure { margin: .24in 0 .30in; padding: 0; page-break-inside: avoid; text-align: center; } +.content-figure img { display: block; width: 100%; max-height: 3.1in; object-fit: contain; } +.content-figure figcaption { margin-top: .06in; color: #746b60; font: italic 8.5pt Georgia, serif; } +@media print { html { background: white; } } +""" + + +def make_html(source: Path, mode: str) -> tuple[str, str, list[tuple[int, str, str]]]: + raw = source.read_text(encoding="utf-8") + meta, body = parse_frontmatter(raw) + body = clean_markdown(body, mode) + if meta.get("status") == "parent-review-edition" and mode == "clean": + validate_parent_review_contract(body) + body_html, headings = markdown_to_body(body, mode, source.parent) + title = meta.get("title", "The Pattern of Covenant Parenting") + title = re.sub(r"\s+—\s+Bryan Hickman Teaching.*$", "", title) + subtitle = "A clean reading edition" if mode == "clean" else "Editorial review draft" + + major = [(level, text, anchor) for level, text, anchor in headings if level == 2] + toc = ['<nav class="toc-list">'] + for level, text, anchor in headings: + if level == 2: + toc.append(f'<li><a href="#{anchor}">{inline_markdown(text)}</a></li>') + elif level == 3 and mode == "editorial": + # Editorial PDFs get the detailed outline; clean PDFs stay easy to scan. + toc.append(f'<li class="toc-level-3"><a href="#{anchor}">{inline_markdown(text)}</a></li>') + toc.append("</nav>") + html_doc = f'''<!doctype html> +<html><head><meta charset="utf-8"><title>{html.escape(title)} + +

{html.escape(title)}

{html.escape(subtitle)}
Bryan Hickman teaching synthesis
+

Contents

Use the links below to move through the book. A Back to Contents link appears at the beginning of each chapter.

{''.join(toc)}
+
{body_html}
+''' + return html_doc, title, headings + + +def add_pdf_navigation(output: Path, title: str, headings: list[tuple[int, str, str]], mode: str) -> int: + """Add reader-sidebar bookmarks after Chrome has preserved HTML anchors.""" + import fitz + + doc = fitz.open(output) + page_text = [re.sub(r"\s+", " ", page.get_text()).strip() for page in doc] + toc: list[list[object]] = [] + for level, heading, _anchor in headings: + if level not in (2, 3): + continue + needle = re.sub(r"\s+", " ", heading).strip() + page_number = next( + (i + 1 for i, text in enumerate(page_text[2:], start=2) if needle in text), + None, + ) + if page_number is not None: + toc.append([1 if level == 2 else 2, heading, page_number]) + doc.set_toc(toc) + metadata = dict(doc.metadata) + metadata.update({ + "title": title, + "subject": "Clickable Contents, chapter maps, and PDF bookmarks", + "keywords": f"Bryan Hickman, covenant parenting, {mode} edition", + }) + doc.set_metadata(metadata) + temp = output.with_suffix(".navigation.pdf") + doc.save(temp, garbage=4, deflate=True) + doc.close() + temp.replace(output) + return len(toc) + + +def render(source: Path, output: Path, mode: str) -> dict[str, object]: + if not CHROME.exists(): + raise SystemExit(f"Google Chrome not found at {CHROME}") + html_doc, title, headings = make_html(source, mode) + output.parent.mkdir(parents=True, exist_ok=True) + with tempfile.TemporaryDirectory(prefix="parent-book-") as td: + html_path = Path(td) / "book.html" + profile = Path(td) / "chrome-profile" + html_path.write_text(html_doc, encoding="utf-8") + cmd = [ + str(CHROME), "--headless=new", "--no-sandbox", "--disable-gpu", + f"--user-data-dir={profile}", "--no-pdf-header-footer", + "--allow-file-access-from-files", "--run-all-compositor-stages-before-draw", + "--virtual-time-budget=3000", f"--print-to-pdf={output}", html_path.as_uri(), + ] + # Chrome can finish writing the PDF but keep a headless helper alive + # on macOS. Treat that specific case as success, after terminating the + # short-lived renderer instead of making the caller wait for 180s. + proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) + try: + _, stderr = proc.communicate(timeout=45) + except subprocess.TimeoutExpired: + proc.kill() + _, stderr = proc.communicate() + if not output.exists() or output.stat().st_size == 0: + raise RuntimeError(f"Chrome PDF render timed out: {stderr[-2000:]}") + if proc.returncode not in (0, -9) and (not output.exists() or output.stat().st_size == 0): + raise RuntimeError(f"Chrome PDF render failed: {stderr[-2000:]}") + # Remove an accidental zero-byte artifact before reporting failure. + if not output.exists() or output.stat().st_size == 0: + raise RuntimeError("Chrome reported success but produced no PDF") + bookmarks = add_pdf_navigation(output, title, headings, mode) + return {"title": title, "output": str(output), "bytes": output.stat().st_size, "mode": mode, "bookmarks": bookmarks} + + +def main() -> None: + ap = argparse.ArgumentParser() + ap.add_argument("--source", type=Path, default=DEFAULT_SOURCE) + ap.add_argument("--mode", choices=["clean", "editorial"], required=True) + ap.add_argument("--output", type=Path) + args = ap.parse_args() + if args.output is None: + stem = args.source.stem + suffix = "clean" if args.mode == "clean" else "editorial" + args.output = DEFAULT_OUT / f"{stem}_{suffix}.pdf" + result = render(args.source, args.output, args.mode) + print(result) + + +if __name__ == "__main__": + main() diff --git a/tools/test_parent_review_contract.py b/tools/test_parent_review_contract.py new file mode 100644 index 0000000..4412fe1 --- /dev/null +++ b/tools/test_parent_review_contract.py @@ -0,0 +1,20 @@ +import importlib.util +from pathlib import Path + +ROOT = Path(__file__).resolve().parent +spec = importlib.util.spec_from_file_location("render_parent_book", ROOT / "render_parent_book.py") +render_parent_book = importlib.util.module_from_spec(spec) +assert spec.loader +spec.loader.exec_module(render_parent_book) + + +def test_parent_review_contract_preserves_chapter_anchors_and_rejects_internal_subtitles(): + valid = "## Chapter 0: A Beginning\n\nText\n\n## Chapter 1: The Pattern\n\nText\n\n### Reflection and Action\n\nWork" + render_parent_book.validate_parent_review_contract(valid) + + +def test_parent_review_contract_rejects_missing_chapter_anchor(): + import pytest + + with pytest.raises(ValueError, match="Chapter 1"): + render_parent_book.validate_parent_review_contract("## Chapter 0: A Beginning\n")