首页 > 解决方案 > 无法在 Gerrit 中加载插件事件日志

问题描述

编辑:几周前插件有更新,现在我在 Jenkins 日志中看到:

Aug 14, 2018 8:57:26 AM WARNING com.sonyericsson.hudson.plugins.gerrit.trigger.playback.GerritMissedEventsPlaybackManager performCheck
Missed Events Playback used to be NOT supported. now it IS!
Aug 14, 2018 8:57:26 AM INFO com.sonymobile.tools.gerrit.gerritevents.GerritConnection run

在 GERRIT_SITE/logs/error_log 它说插件已加载:

[2018-08-14 10:56:57,213] [ShutdownCallback] INFO  com.google.gerrit.pgm.Daemon : caught shutdown, cleaning up
[2018-08-14 10:56:57,380] [ShutdownCallback] INFO  org.eclipse.jetty.server.AbstractConnector : Stopped ServerConnector@500beb9f{HTTP/1.1,[http/1.1]}{127.0.0.1:8081}
[2018-08-14 10:56:57,403] [ShutdownCallback] INFO  org.eclipse.jetty.server.handler.ContextHandler : Stopped o.e.j.s.ServletContextHandler@3437fc4f{/,null,UNAVAILABLE}
[2018-08-14 10:56:57,469] [ShutdownCallback] WARN  org.apache.sshd.server.channel.ChannelSession : doCloseImmediately(ChannelSession[id=1, recipient=1]-ServerSessionIm$
[2018-08-14 10:56:57,508] [ShutdownCallback] INFO  com.google.gerrit.sshd.SshDaemon : Stopped Gerrit SSHD
[2018-08-14 10:57:21,044] [main] WARN  com.google.gerrit.sshd.SshDaemon : Cannot format SSHD host key [EdDSA]: invalid key type
[2018-08-14 10:57:21,061] [main] WARN  com.google.gerrit.server.config.GitwebCgiConfig : gitweb not installed (no /usr/lib/cgi-bin/gitweb.cgi found)
[2018-08-14 10:57:22,289] [main] INFO  org.eclipse.jetty.util.log : Logging initialized @15822ms
[2018-08-14 10:57:22,430] [main] INFO  com.google.gerrit.server.git.LocalDiskRepositoryManager : Defaulting core.streamFileThreshold to 1339m
[2018-08-14 10:57:22,784] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loading plugins from /opt/gerrit/plugins
[2018-08-14 10:57:23,056] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loaded plugin delete-project, version v2.13-61-g8d6b23b122
[2018-08-14 10:57:23,500] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loaded plugin events-log, version v2.13-66-ge95af940c6
[2018-08-14 10:57:24,150] [main] INFO  com.google.gerrit.server.git.GarbageCollectionRunner : Ignoring missing gc schedule configuration
[2018-08-14 10:57:24,151] [main] INFO  com.google.gerrit.server.config.ScheduleConfig : accountDeactivation schedule parameter "accountDeactivation.interval" is not co$
[2018-08-14 10:57:24,151] [main] INFO  com.google.gerrit.server.change.ChangeCleanupRunner : Ignoring missing changeCleanup schedule configuration
[2018-08-14 10:57:24,295] [main] INFO  com.google.gerrit.sshd.SshDaemon : Started Gerrit SSHD-CORE-1.6.0 on *:29418
[2018-08-14 10:57:24,298] [main] INFO  org.eclipse.jetty.server.Server : jetty-9.3.18.v20170406
[2018-08-14 10:57:25,454] [main] INFO  org.eclipse.jetty.server.handler.ContextHandler : Started o.e.j.s.ServletContextHandler@73f0b216{/,null,AVAILABLE}
[2018-08-14 10:57:25,475] [main] INFO  org.eclipse.jetty.server.AbstractConnector : Started ServerConnector@374013e8{HTTP/1.1,[http/1.1]}{127.0.0.1:8081}
[2018-08-14 10:57:25,476] [main] INFO  org.eclipse.jetty.server.Server : Started @19011ms
[2018-08-14 10:57:25,478] [main] INFO  com.google.gerrit.pgm.Daemon : Gerrit Code Review 2.15.1 ready

所以现在这个问题解决了。


我正在尝试解决我在 Jenkins 中收到的错过事件播放警告的问题。

我已经使用 Gerrit Web UI 生成的 http 密码在 Jenkins 中启用了 REST API。所以我的问题是事件日志插件。

我已经在 GERRIT_SITE/gerrit/plugins 下安装了 events-log.jar 插件这个目录有 drwxr-xr-x 作为权限设置。

GERRIT_SITE/gerrit/logs/ error_log在重新启动时给了我这个:

[2018-06-21 13:40:34,678] [main] WARN  com.google.gerrit.sshd.SshDaemon : Cannot format SSHD host key [EdDSA]: invalid key type [2018-06-21 13:40:34,697] [main] WARN  com.google.gerrit.server.config.GitwebCgiConfig : gitweb not installed (no /usr/lib/cgi-bin/gitweb.cgi found) [2018-06-21 13:40:35,761] [main] INFO  org.eclipse.jetty.util.log : Logging initialized @11099ms [2018-06-21 13:40:35,925] [main] INFO  com.google.gerrit.server.git.LocalDiskRepositoryManager : Defaulting core.streamFileThreshold to 1339m [2018-06-21 13:40:36,410] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Removing stale plugin file: plugin_events-log_180621_1333_5163201567282630382.jar [2018-06-21 13:40:36,410] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loading plugins from /opt/gerrit/plugins [2018-06-21 13:40:36,528] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loaded plugin delete-project, version v2.13-61-g8d6b23b122 [2018-06-21 13:40:36,614] [main] WARN  com.google.gerrit.server.plugins.PluginLoader : **Cannot**
**load plugin events-log** java.lang.NoSuchMethodError: com.google.gerrit.server.git.WorkQueue.createQueue(ILjava/lang/String;)Ljava/util/concurrent/ScheduledThreadPoolExecutor;
        at com.ericsson.gerrit.plugins.eventslog.EventQueue.start(EventQueue.java:35)
        at com.google.gerrit.lifecycle.LifecycleManager.start(LifecycleManager.java:92)
        at com.google.gerrit.server.plugins.ServerPlugin.startPlugin(ServerPlugin.java:251)
        at com.google.gerrit.server.plugins.ServerPlugin.start(ServerPlugin.java:192)
        at com.google.gerrit.server.plugins.PluginLoader.runPlugin(PluginLoader.java:491)
        at com.google.gerrit.server.plugins.PluginLoader.rescan(PluginLoader.java:419)
        at com.google.gerrit.server.plugins.PluginLoader.start(PluginLoader.java:324)
        at com.google.gerrit.lifecycle.LifecycleManager.start(LifecycleManager.java:92)
        at com.google.gerrit.pgm.Daemon.start(Daemon.java:349)
        at com.google.gerrit.pgm.Daemon.run(Daemon.java:256)
        at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:61)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:223)
        at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:119)
        at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:63)
        at Main.main(Main.java:24) [2018-06-21 13:40:36,687] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loaded plugin gitiles, version dd264dd2d4 [2018-06-21 13:40:36,728] [main] INFO  com.google.gerrit.server.plugins.PluginLoader : Loaded plugin its-jira, version v2.15 [2018-06-21 13:40:37,034] [main] INFO  com.google.gerrit.server.git.GarbageCollectionRunner : Ignoring missing gc schedule configuration [2018-06-21 13:40:37,034] [main] INFO  com.google.gerrit.server.config.ScheduleConfig : accountDeactivation schedule parameter "accountDeactivation.interval" is not configured [2018-06-21 13:40:37,034] [main] INFO  com.google.gerrit.server.change.ChangeCleanupRunner : Ignoring missing changeCleanup schedule configuration [2018-06-21 13:40:37,060] [main] INFO  com.google.gerrit.sshd.SshDaemon : Started Gerrit SSHD-CORE-1.6.0 on *:29418 [2018-06-21 13:40:37,074] [main] INFO  org.eclipse.jetty.server.Server : jetty-9.3.18.v20170406 [2018-06-21 13:40:38,104] [main] INFO  org.eclipse.jetty.server.handler.ContextHandler : Started o.e.j.s.ServletContextHandler@2c8469fe{/,null,AVAILABLE} [2018-06-21 13:40:38,113] [main] INFO  org.eclipse.jetty.server.AbstractConnector : Started ServerConnector@3803bc1a{HTTP/1.1,[http/1.1]}{127.0.0.1:8081} [2018-06-21 13:40:38,115] [main] INFO  org.eclipse.jetty.server.Server : Started @13456ms [2018-06-21 13:40:38,118] [main] INFO  com.google.gerrit.pgm.Daemon : Gerrit Code Review 2.15.1 ready

我想要一些关于为什么在其他插件工作时插件没有加载/启用的帮助。

注 1:Jenkins v2.107.2 和 Gerrit v2.15.1 安装在不同的基于 linux 的服务器上。而且我能够从 Gerrit 触发构建。

注意 2:我尝试使用 plugin-manager (现在已卸载)和 command ,这就是我现在正在做的方式。wget https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.15/job/plugin-events-log-bazel-stable-2.15/lastSuccessfulBuild/artifact/bazel-genfiles/plugins/events-log/events-log.jar

注 3:gerrit.config 中的事件日志如下所示:

[plugin "events-log"]
        maxAge = 20
        returnLimit = 10000
        storeDriver = org.postgresql.Driver
        storeUsername = gerrit
        storeUrl = jdbc:postgresql:/var/lib/postgresql/9.5/main
        urlOptions = loglevel=INFO
        urlOptions = logUnclosedConnections=true
        copyLocal = true

标签: error-handlinggerrit

解决方案


推荐阅读