【问题标题】:Artifactory System Logs not updating after Migration from an older version从旧版本迁移后 Artifactory 系统日志未更新
【发布时间】:2021-06-22 21:02:07
【问题描述】:

从 Artifactory OSS 5.11.0 rev 51100900 迁移到 Artifactory Commercial 许可证 7.3.2 rev 70302900 后,系统日志在迁移日期的时间戳之后不再更新。

我使用 JFrog 的文章“What is the best way to migrate a large Artifactory instance with minimal downtime?”进行迁移。

服务器设置:

旧服务器:Artifactory OSS 5.11.0 rev 51100900
新服务器:Artifactory 商业许可证 7.3.2 rev 70302900
两台服务器都在 linux 上作为 Docker 容器运行。
每个 linux 服务器都是物理上不同的 VM 服务器上的一个 VM。

迁移操作:

  1. 在两台服务器上,我都禁用了垃圾收集
    Admin -> Advanced -> Maintenance -> Garbage collection
  2. 旧服务器:将$ARTIFACTORY_HOME/data/filestore 文件夹复制到新服务器的filestore 文件夹中。
  3. 旧服务器:在选择 Exclude Content 选项(未选择其他选项)的情况下执行完整系统导出。
  4. 新服务器:执行了完整的系统导入(选择了排除内容选项)。
  5. 新服务器:再次启用垃圾收集
  6. 重新启动新服务器。

当前状态:

新服务器正常运行。旧服务器中的所有工件都存在于新服务器中并且可以访问。新工件被推送到新服务器没有问题。
我在新服务器中创建了两个 Docker 注册表,它们也可以正常工作。
新用户和权限组的创建也可以正常工作。

我遇到的问题:

当我转到Admin -> Artifactory -> Advanced -> System Logs 时,我看到了四个系统日志,但每个日志中的最后一个条目是旧服务器创建的最后一个条目。
新服务器没有新条目。

我尝试的观察和操作:

  1. 我已经设置了一个新的本地 Artifactory 服务器(Docker 容器),docker exec 到容器中到目录 /var/opt/jfrog/artifactory/log 并将所有以 artifactory-*.log 开头的日志文件的名称更改为 artifactory-*.log.old .我已停止 Artifactory 容器并重新启动它。
    我更改了名称、重新创建并开始记录所有内容的所有日志。
    当我在新服务器上执行相同操作时,重新创建日志。

  2. 开始在 Docker 容器的文件系统中四处寻找,在文件夹 /var/opt/jfrog/artifactory 中找到了一个名为 artifactory.home_IS_UNDEFINED 的目录。目录的时间戳是迁移的日期和时间。

  3. 运行printenv,回家的路径是正确的:
    JF_PRODUCT_DATA_INTERNAL=/var/opt/jfrog/artifactory
    JF_PRODUCT_HOME=/opt/jfrog/artifactory

  4. 实际上,新服务器正在记录日志!只是不在所需的位置。 在文件夹 /var/opt/jfrog/artifactory/log 中有许多记录所有操作的日志。
    在文件夹/var/opt/jfrog/artifactory/artifactory.home_IS_UNDEFINED/logs 中也有活动的日志文件。

  5. UI 系统日志控制台中不会显示任何正在运行的日志。

我这几天一直在尝试解决这个问题(断断续续),但我在 Artifactory 知识库中也找不到任何相关内容,也无法使用 google。

我们将不胜感激任何帮助或见解。

【问题讨论】:

    标签: logging artifactory


    【解决方案1】:

    好的。我想通了。

    问题出在文件/var/opt/jfrog/artifactory/etc/artifactory/logback.xml中。
    出于某种原因,迁移后,此文件已从新服务器中的原始文件更改。

    更改后的文件具有不同的 xml 结构,所有日志都使用 xml 标记中的 ${artifactory.home} 变量。
    原来的logback.xml 使用的是${log.dir} 变量。

    幸运的是,原来的文件以某种方式被备份并命名为logback.original.xml

    我将当前(不正确的 xml 结构)文件重命名为 logback.xml.back,并将文件 logback.original.xml 重命名为 logback.xml,几分钟后,丢失的日志在正确的文件夹中重新创建,并且开始记录所有内容。

    现在,我还可以在 Artifactory UI 中的系统日志下查看日志。

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题(Artifactory 7.19.8 与 Docker 一起运行)但没有可用的 logback*.xml 文件。由于获得默认的logback.xml 对我来说没问题,我只是删除了$JFROG_HOME/artifactory/var/etc/artifactory/logback.xml 并重新启动了 Artifactory。这导致创建了一个新的 logback.xml 文件,该文件现在可以正常工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-08
        • 2022-08-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多