defmodule PrymnWeb.ServerLive.Index do require Logger alias Prymn.{Agents, Servers} use PrymnWeb, :live_view @impl true def mount(_params, _session, socket) do servers = Servers.list_servers() healths = if connected?(socket) do for %Servers.Server{status: :registered, public_ip: ip} = server <- servers, into: %{} do Agents.from_server(server) |> Agents.subscribe_to_health() {ip, Agents.get_health(ip)} end else %{} end {:ok, socket |> assign(:servers, servers) |> assign(:healths, healths)} end @impl true def render(assigns) do ~H"""