def METHOD_NAME(runner, client):
    pid = runner.get_pid()
    if pid is None:
        message = "MxRuntime OK: Not running."
        return (STATE_OK, message)
    pid_alive = runner.check_pid()
    m2ee_alive = client.ping()
    if pid_alive and not m2ee_alive:
        message = (
            "MxRuntime CRITICAL: pid %s is alive, but m2ee does not "
            "respond." % runner.get_pid()
        )
        return (STATE_CRITICAL, message)
    if not pid_alive and not m2ee_alive:
        message = (
            "MxRuntime CRITICAL: pid %s is not available, m2ee does "
            "not respond." % runner.get_pid()
        )
        return (STATE_CRITICAL, message)
    if not pid_alive and m2ee_alive:
        message = (
            "MxRuntime WARNING: pid %s is not available, but m2ee "
            "responds." % runner.get_pid()
        )
        return (STATE_WARNING, message)
    if not m2ee_alive:
        message = "MxRuntime WARNING: plugin has broken logic, m2ee should " "be alive"
        return (STATE_WARNING, message)
    status_feedback = client.runtime_status().get_feedback()
    if status_feedback["status"] == "starting":
        message = "MxRuntime WARNING: application is still starting up..."
        return (STATE_WARNING, message)
    elif status_feedback["status"] != "running":
        message = (
            "MxRuntime CRITICAL: application is in state %s" % status_feedback["status"]
        )
        return (STATE_CRITICAL, message)
    return (DUNNO, "MxRuntime OK")