private @NotNull @NonNls String generateMessage(@NotNull Object event, int eventsPosted) {
    String trace = ExceptionUtil.getThrowableText(new Throwable());
    boolean logTrace;
    int traceId;
    synchronized (myEventsPosted) {
      Integer existingTraceId = myRecentTraces.get(trace);
      logTrace = existingTraceId == null;
      if (logTrace) {
        myRecentTraces.put(trace, traceId = myLastTraceId.incrementAndGet());
      }
      else {
        traceId = existingTraceId;
      }
    }

    return "Too many events posted (" + eventsPosted+")"
           + " #" + traceId + ". Event: '" + event + "'"
           + (logTrace ? "\n" + trace : "");
  }
private @NotNull @NonNls String generateMessage(@NotNull Object event, int eventsPosted)