您的位置:首页 > 其它

ResourceManager启动和关闭时日志打印

2015-08-18 15:38 330 查看
启动日志打印:入口

主要打印:见红色字体处,也就是日志当中的信息

StringUtils.startupShutdownMessage(ResourceManager.class, argv, LOG);

 

/**
* Print a log message for starting up and shutting down
* @param clazz the class of the server
* @param args arguments
* @param LOG the target log object
*/
public static void startupShutdownMessage(Class<?> clazz, String[] args,
                                   final org.apache.commons.logging.Log LOG) {
  startupShutdownMessage(clazz, args, LogAdapter.create(LOG));
}

 

static void startupShutdownMessage(Class<?> clazz, String[] args,
                                   final LogAdapter LOG) {
  final String hostname = NetUtils.getHostname();  // 获取本地主机名
  final String classname = clazz.getSimpleName();  // 获取类名
  LOG.info(
     toStartupShutdownString("STARTUP_MSG: ", new String[] {  // 仅仅格式化代码
          "Starting " + classname,
          "  host = " + hostname,
          "  args = " + Arrays.asList(args),
          "  version = " + VersionInfo.getVersion(),
          "  classpath = " + System.getProperty("java.class.path"),
          "  build = " + VersionInfo.getUrl() + " -r "
                       + VersionInfo.getRevision() 
                       + "; compiled by '" + VersionInfo.getUser()
                       + "' on " + VersionInfo.getDate(),
          "  java = " + System.getProperty("java.version") }
      )
    );

  if (SystemUtils.IS_OS_UNIX) {
    try {
     SignalLogger.INSTANCE.register(LOG);  //如果为linux,注册一些信号操作
    } catch (Throwable t) {
      LOG.warn("failed to register any UNIX signal loggers: ", t);
    }
  }
  ShutdownHookManager.get().addShutdownHook( //注册钩子,这应该是RM第一个钩子
    new Runnable() {
      @Override
      public void run() {
        LOG.info(toStartupShutdownString("SHUTDOWN_MSG: ", new String[]{
          "Shutting down " + classname + " at " + hostname}));
      }
    }, SHUTDOWN_HOOK_PRIORITY);

}

 

下面单独来看看来,HookManager是怎么来实现,顺序执行并有调度优先级的。JVM默认顺序未指定,还是并行来执行的

ShutdownHookManager
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: