> For the complete documentation index, see [llms.txt](https://docs.platform9.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.platform9.com/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files.md).

# Troubleshooting And Log Files

## Troubleshooting Compute Service Problems

If your <code class="expression">space.vars.product\_name</code> Service Health dashboard indicates that the Compute Service is <mark style="color:red;">`unhealthy`</mark>, it may be because a large percentage of your hosts with the Hypervisor role assigned are either offline or the Compute service is unresponsive on those hosts. Refer to the [#log-files](#log-files "mention")to debug the issue further.

## Important Directories

`/var` – All logs go under `/var/log/pf9.` The only exception is the `pcdctl` log files which go under `/var/log`

`/opt` – All the packages for services installed by <code class="expression">space.vars.product\_name</code> go under `/opt/pf9`

`/var/opt/pf9` - Subdirectories for the Platform9 host agent and networking service go under here with temp files or state files.

## Log Files

Essential log files for debugging:

1. **Log files for all services** - Each host stores all its log files for the various components running on it at `/var/log/pf9`**.** Here you will find logs for compute, image library, storage, networking, and other services, depending on the roles assigned to that host. See the documentation for each service for more information about its log files.
2. **Compute service log** - The log file for the compute service is located `/var/log/pf9/ostackhost.log` on all hosts with the hypervisor role assigned. Useful for debugging issues with virtual machine creation or updates.
3. **Host agent log** - The log file for the Platform9 host agent that is installed on each host is located at `/var/log/pf9/hostagent.log`. This is helpful for debugging issues with host agent install or connectivity with the management plane.
4. **Communication agent log** - Located at `/var/log/pf9/comms/comms.log`. Log file for the Platform9 communications agent, which is responsible for ensuring the health and uptime of the host agent. Helpful for debugging issues regarding connectivity.
5. **Libvirt logs** - Located at `/var/log/libvirt/qemu/<vm-id>` where `<vm-id>`should be the UUID of the VM, and at `/var/log/libvirt/libvirtd.log`. Libvirt logs help with debugging any resource allocation or other issues with virtual machine instances.

## Troubleshooting Steps

1. Verify that the host has outbound network connectivity to the internet and the management plane controller:
   * `$ curl -s https://<FQDN>`
   * `$ ping www.google.com`
   * `$ telnet`[`www.google.com`](http://www.google.com/)`443`
2. If your environment has a proxy server, make sure that you have configured the Platform9 host agent installed on the host to route traffic via the proxy:
   * `$ sudo bash <path to host agent installer> --proxy=<proxy server>:<proxy port>`
3. Verify that the hostname on the host matches the hostname shown in the GUI.
4. The UUID given in the `host_id` file should match the host UUID shown on the GUI. `$ sudo cat /etc/pf9/host_id.conf`
5. If NTP is enabled, make sure the NTP servers are configured correctly across all the nodes within the configuration file `/etc/systemd/timesyncd.conf.d/conf.d`
6. Check that the Platform9 packages are installed on the host and the version which is shown on the GUI. `$ sudo apt list | grep -i pf9*`
7. Confirm that the host agent is running on your host:
   * `$ sudo service pf9-hostagent status`
   * `$ sudo service pf9-ostackhost status`
   * `$ sudo service pf9-comms status`
   * `$ sudo service pf9-sidekick status`
8. Check the below service logs for any “*`errors/timeouts/warnings`”,* during the time of issue. verify if any recent network changes might have impacted the connectivity.
   * `$ sudo cat /var/log/pf9/hostagent.log`
   * `$ sudo cat /var/log/pf9/ostackhost.log`
   * `$ sudo cat /var/log/pf9/comms/comms.log`
   * `$ sudo cat /var/log/pf9/sidekick/sidekick.log`
9. If these steps prove insufficient to resolve the issue, kindly reach out to the [Platform9 Support team](https://support.platform9.com/) for additional assistance.

### Most Common causes <a href="#most-common-causes" id="most-common-causes"></a>

* Connectivity to the management plane controller is broken or unreachable.
* Dependent services are down.
* Packages are corrupted or not installed.
* NTP is not synchronized.
* Insufficient disk space available.
* Ensure that the host that you are trying to add meets the[ ](https://platform9.com/docs/private-cloud-director/private-cloud-director/pre-requisites#host-hardware-and-configuration)​[pre-requisites](https://platform9.com/docs/private-cloud-director/private-cloud-director/pre-requisites#host-hardware-and-configuration).

## Operational Recovery Runbooks

The following runbooks cover the most common operational recovery scenarios for the Compute Service:

* [Recover VMs in ERROR State After Host Reboot or Patching](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/recover-vms-in-error-state.md) — diagnose and restore VMs that land in ERROR after a host reboot or maintenance event, including hard reboot, evacuation, and rebuild options.
* [Recover libvirt and Compute Service Failures](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/recover-libvirt-and-compute-service.md) — diagnose and restart `libvirtd` and the Platform9 Compute Service when a hypervisor host becomes unresponsive.
* [Diagnose VM Scheduling Failures ("No Valid Host Was Found")](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/diagnose-vm-scheduling-failures.md) — step-by-step checklist for resolving VM placement failures caused by resource exhaustion, disabled hosts, host aggregate mismatches, or image property constraints.
* [Recover from Messaging Layer Failures Affecting VM Creation](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/recover-messaging-layer-failures.md) — identify and recover from messaging layer problems that cause VM creates to hang or fail silently at scale.
* [Diagnose a Host Agent Stuck in Converging State](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/host-agent-stuck-converging.md) — locate the cause when a host remains in `converging` status after role assignment, including service start failures and log-rotation permission errors.
* [Diagnose Role Assignment Failures](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/role-assignment-failures.md) — resolve HTTP 500 errors on role assignment and "Interface None is missing an IP" errors caused by incomplete host network configuration.
* [Troubleshoot Maintenance Mode Migration Failures](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/troubleshoot-maintenance-mode-migrations.md) — diagnose and recover when VMs fail to migrate or are left stranded or in an error state during maintenance mode.
* [Resolve CPU Baseline Mismatch After Host Upgrade](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/cpu-baseline-mismatch.md) — correct cluster CPU baseline issues after a host upgrade, including how to use `cpu_model_extra_flags` for mixed-generation clusters.
* [Troubleshoot VM HA](/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files/troubleshoot-vm-ha.md) — step-by-step diagnostics for VM HA not triggering, Consul health prerequisites, shared and FC storage validation, enable/disable failures, and post-upgrade re-validation.

[HOST ISSUES - Previous<br>](https://platform9.com/kb/pcd-ts/host/host-issues)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.platform9.com/private-cloud-director/virtualized-clusters/troubleshooting-and-log-files.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
