{% extends "base.html" %} {% import "partials/nav.html" as nav %} {% import "partials/icons.html" as icons %} {% block title %}Client {{ client.index }} — Quartermaster{% endblock %} {% block nav %}{% call nav::nav("clients", user, csrf_token, fika_installed) %}{% endcall %}{% endblock %} {% block content %}

Client {{ client.index }}

{% if user.role.can_control_server() %}
{% endif %}

Status

Container Name {{ client.container_name }}
Container Status {% match client.container_status %} {% when crate::client::ContainerStatus::Running %} Running {% when crate::client::ContainerStatus::Stopped %} Stopped {% when crate::client::ContainerStatus::Unknown %} Unknown {% endmatch %}
Health {% match client.health %} {% when crate::client::ClientHealth::Healthy %} Healthy {% when crate::client::ClientHealth::Degraded %} Degraded {% when crate::client::ClientHealth::Down %} Down {% when crate::client::ClientHealth::GivenUp %} Given Up {% endmatch %}
Fika Status {% if let Some(status) = client.fika_status %} {% match status %} {% when crate::spt::headless::EHeadlessStatus::Ready %} Ready {% when crate::spt::headless::EHeadlessStatus::InRaid %} In Raid {% when crate::spt::headless::EHeadlessStatus::Unknown(_) %} Unknown {% endmatch %} {% else %} Unknown {% endif %}
Connected Players {% if client.players.is_empty() %} None {% else %} {{ client.players.join(", ") }} {% endif %}

Resources

CPU Usage {% if let Some(cpu) = client.cpu_percent %} {{ cpu }}% {% else %} Unknown {% endif %}
Memory Usage {% if let Some(mem) = client.memory_mb %} {{ mem }} MB {% else %} Unknown {% endif %}

Reliability

Total Restarts {{ client.restart_count }}
Last Restart {% if let Some(ts) = client.last_restart %} {{ ts.format("%Y-%m-%d %H:%M:%S UTC") }} {% else %} Never {% endif %}
Consecutive Failures {% if client.consecutive_failures > 0 %} {{ client.consecutive_failures }} {% else %} 0 {% endif %}
Restarting {% if client.restarting %} Yes {% else %} No {% endif %}

← Back to clients list

{% endblock %}