private void logErrorHeader(@Nullable Throwable t) {
    myLogger.severe(ourApplicationInfoProvider.get());

    Properties properties = System.getProperties();
    myLogger.severe("JDK: " + properties.getProperty("java.version", "unknown") +
                    "; VM: " + properties.getProperty("java.vm.name", "unknown") +
                    "; Vendor: " + properties.getProperty("java.vendor", "unknown"));
    myLogger.severe("OS: " + properties.getProperty("os.name", "unknown"));

    // do not use getInstance here - container maybe already disposed
    if (t != null && PluginManagerCore.arePluginsInitialized()) {
      IdeaPluginDescriptor plugin = PluginManagerCore.getPlugin(PluginUtilImpl.doFindPluginId(t));
      if (plugin != null && (!plugin.isBundled() || plugin.allowBundledUpdate())) {
         myLogger.severe("Plugin to blame: " + plugin.getName() + " version: " + plugin.getVersion());
      }
    }

    ApplicationEx application = ApplicationManagerEx.getApplicationEx();
    if (application != null && application.isComponentCreated() && !application.isDisposed()) {
      String lastPreformedActionId = ourLastActionId;
      if (lastPreformedActionId != null) {
         myLogger.severe("Last Action: " + lastPreformedActionId);
      }

      CommandProcessor commandProcessor = application.getServiceIfCreated(CommandProcessor.class);
      if (commandProcessor != null) {
        String currentCommandName = commandProcessor.getCurrentCommandName();
        if (currentCommandName != null) {
           myLogger.severe("Current Command: " + currentCommandName);
        }
      }
    }
  }
private void logErrorHeader(@Nullable Throwable t)