blob: ad39d654598c82814d4a75e276548f6b70284493 [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.crash;
using fuchsia.mem;
// Analyzes crashed processes.
[Discoverable, Layout = "Simple"]
interface Analyzer {
// Requests that the crash analyzer analyzes the given |thread| in |process|,
// which has crashed.
// This method is responsible for resuming or stopping the thread once the
// analyze is done.
//
// The behavior of this method varies depending on the implementation, but
// a typical implementation might print a crash dump to the system log or
// upload a crash report to a server.
1: Analyze(handle<process> process, handle<thread> thread) -> ();
// Requests that the crash analyzer process the crash log.
//
// The behavior of this method varies depending on the implementation, but
// a typical implementation might print the crash log to the system log or
// upload a crash report to a server with the log as attachment.
2: Process(fuchsia.mem.Buffer crashlog) -> ();
};