# Copyright 2017 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description    "Start the VM log forwarding service"
author         "chromium-os-dev@chromium.org"

# Starts the VM log forwarding service, which is responsible for collecting
# logs from VMs, scrubbing the contents, and then forwarding them to /dev/log.
start on starting vm_concierge
stop on stopped vm_concierge
respawn

pre-start script
  # Ensure the kernel module is loaded.
  modprobe -q vhost-vsock
end script

exec minijail0 -l -p -r -v -N -n -c 0 -u syslog -g syslog \
     -- /usr/bin/vmlog_forwarder
