moonfire-nvr/guide/troubleshooting.md

2.1 KiB

Troubleshooting

Logs

While Moonfire NVR is running, logs will be written to stderr.

  • When running moonfire-nvr config, you typically should redirect stderr to a text file to avoid poor interaction between the interactive stdout output and the logging.
  • When running through systemd, stderr will be redirected to the journal. Try sudo journalctl --unit moonfire-nvr to view the logs. You also likely want to set MOONFIRE_FORMAT=google-systemd to format logs as expected by systemd.

Logging options are controlled by environmental variables:

  • MOONFIRE_LOG controls the log level. Its format is similar to the RUST_LOG variable used by the env-logger crate. MOONFIRE_LOG=info is the default. MOONFIRE_LOG=info,moonfire_nvr=debug gives more detailed logging of the moonfire_nvr crate itself.
  • MOONFIRE_FORMAT selects the output format. The two options currently accepted are google (the default, like the Google glog package) and google-systemd (a variation for better systemd compatibility).

Problems

Error: pts not monotonically increasing; got 26615520 then 26539470

If your streams cut out with an error message like this one, it might mean that your camera outputs B frames. If you believe this is the case, file a feature request; Moonfire NVR currently doesn't support B frames. You may be able to configure your camera to disable B frames in the meantime.

moonfire-nvr config displays garbage

This happens if your machine is configured to a non-UTF-8 locale, due to gyscos/Cursive#13. As a workaround, type export LC_ALL=en_US.UTF-8 prior to running moonfire-nvr config.

Logging in is very very slow

Ensure you're using a build compiled with the --release flag. See libpasta/libpasta#9 for more background.