从旧版本迁移后,Artifactory 系统日志未更新
Artifactory System Logs not updating after Migration from an older version
从 Artifactory OSS 5.11.0 修订版 51100900 迁移到 Artifactory 商业许可证 7.3.2 修订版 70302900 后,系统日志在迁移日期的时间戳后不再更新。
我使用了 JFrog 的文章“What is the best way to migrate a large Artifactory instance with minimal downtime?”来进行迁移。
服务器设置:
旧服务器:Artifactory OSS 5.11.0 rev 51100900
新服务器:Artifactory Commercial license 7.3.2 rev 70302900
两台服务器都是 运行 作为 Docker 容器 linux。
每个 linux 服务器都是物理上不同的 VM 服务器上的 VM。
迁移操作:
- 在两台服务器上,我都禁用了垃圾收集
Admin -> Advanced -> Maintenance -> Garbage collection
- 旧服务器:已将
$ARTIFACTORY_HOME/data/filestore
文件夹复制到新服务器的 filestore
文件夹。
- 旧服务器:使用
Exclude Content
选项 selected(没有其他选项 selected)执行完整系统导出。
- 新服务器:执行完整系统导入(没有NOT select 排除内容选项)。
- 新服务器:再次启用垃圾收集
- 重新启动了新服务器。
当前状态:
新服务器运行没有问题。旧服务器中的所有工件都存在于新服务器中并且可以访问。新工件被毫无问题地推送到新服务器。
我在新服务器中创建了两个 Docker 注册表,它们也可以正常工作。
创建新用户和权限组也能正常工作。
我遇到的问题:
当我转到 Admin -> Artifactory -> Advanced -> System Logs
时,我看到了四个系统日志,但每个日志中的最后一个条目是旧服务器的最后一个条目。
新服务器没有创建新条目。
我尝试过的观察和行动:
我已经设置了一个新的本地 Artifactory 服务器(Docker 容器),docker exec
进入容器到目录 /var/opt/jfrog/artifactory/log
并更改了所有的名称以 artifactory-*.log
到 artifactory-*.log.old
开头的日志文件。我已经停止了 Artifactory 容器并重新启动它。
我更改了名称的所有日志都已重新创建并开始记录所有内容。
当我在新服务器上做同样的事情时,日志 NOT 重新创建。
开始在 Docker 容器的文件系统中搜索,发现文件夹 /var/opt/jfrog/artifactory
中有一个目录调用 artifactory.home_IS_UNDEFINED
。目录的时间戳是迁移的日期和时间。
运行 printenv
回家的路是正确的:
JF_PRODUCT_DATA_INTERNAL=/var/opt/jfrog/artifactory
JF_PRODUCT_HOME=/opt/jfrog/artifactory
新服务器正在登录!只是不在所需的位置。
在文件夹 /var/opt/jfrog/artifactory/log
中有许多记录所有操作的日志。
在文件夹 /var/opt/jfrog/artifactory/artifactory.home_IS_UNDEFINED/logs
中还有活动的日志文件。
None 的工作日志显示在 UI 系统日志控制台中。
几天来我一直在尝试解决这个问题(断断续续),但我无法在 Artifactory 知识库中找到任何相关内容,也无法使用 google。
任何帮助或见解将不胜感激。
好的。我想通了。
问题出在文件 /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 中的日志。
我有同样的问题(Artifactory 7.19.8 运行 和 Docker)但没有可用的 logback*.xml
文件。由于获得默认 logback.xml
对我来说没问题,我只是删除了 $JFROG_HOME/artifactory/var/etc/artifactory/logback.xml
并重新启动了 Artifactory。这导致创建了一个新的 logback.xml
文件,该文件现在可以正常工作了。
从 Artifactory OSS 5.11.0 修订版 51100900 迁移到 Artifactory 商业许可证 7.3.2 修订版 70302900 后,系统日志在迁移日期的时间戳后不再更新。
我使用了 JFrog 的文章“What is the best way to migrate a large Artifactory instance with minimal downtime?”来进行迁移。
服务器设置:
旧服务器:Artifactory OSS 5.11.0 rev 51100900
新服务器:Artifactory Commercial license 7.3.2 rev 70302900
两台服务器都是 运行 作为 Docker 容器 linux。
每个 linux 服务器都是物理上不同的 VM 服务器上的 VM。
迁移操作:
- 在两台服务器上,我都禁用了垃圾收集
Admin -> Advanced -> Maintenance -> Garbage collection
- 旧服务器:已将
$ARTIFACTORY_HOME/data/filestore
文件夹复制到新服务器的filestore
文件夹。 - 旧服务器:使用
Exclude Content
选项 selected(没有其他选项 selected)执行完整系统导出。 - 新服务器:执行完整系统导入(没有NOT select 排除内容选项)。
- 新服务器:再次启用垃圾收集
- 重新启动了新服务器。
当前状态:
新服务器运行没有问题。旧服务器中的所有工件都存在于新服务器中并且可以访问。新工件被毫无问题地推送到新服务器。
我在新服务器中创建了两个 Docker 注册表,它们也可以正常工作。
创建新用户和权限组也能正常工作。
我遇到的问题:
当我转到 Admin -> Artifactory -> Advanced -> System Logs
时,我看到了四个系统日志,但每个日志中的最后一个条目是旧服务器的最后一个条目。
新服务器没有创建新条目。
我尝试过的观察和行动:
我已经设置了一个新的本地 Artifactory 服务器(Docker 容器),
docker exec
进入容器到目录/var/opt/jfrog/artifactory/log
并更改了所有的名称以artifactory-*.log
到artifactory-*.log.old
开头的日志文件。我已经停止了 Artifactory 容器并重新启动它。
我更改了名称的所有日志都已重新创建并开始记录所有内容。
当我在新服务器上做同样的事情时,日志 NOT 重新创建。开始在 Docker 容器的文件系统中搜索,发现文件夹
/var/opt/jfrog/artifactory
中有一个目录调用artifactory.home_IS_UNDEFINED
。目录的时间戳是迁移的日期和时间。运行
printenv
回家的路是正确的:
JF_PRODUCT_DATA_INTERNAL=/var/opt/jfrog/artifactory
JF_PRODUCT_HOME=/opt/jfrog/artifactory
新服务器正在登录!只是不在所需的位置。 在文件夹
/var/opt/jfrog/artifactory/log
中有许多记录所有操作的日志。
在文件夹/var/opt/jfrog/artifactory/artifactory.home_IS_UNDEFINED/logs
中还有活动的日志文件。None 的工作日志显示在 UI 系统日志控制台中。
几天来我一直在尝试解决这个问题(断断续续),但我无法在 Artifactory 知识库中找到任何相关内容,也无法使用 google。
任何帮助或见解将不胜感激。
好的。我想通了。
问题出在文件 /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 中的日志。
我有同样的问题(Artifactory 7.19.8 运行 和 Docker)但没有可用的 logback*.xml
文件。由于获得默认 logback.xml
对我来说没问题,我只是删除了 $JFROG_HOME/artifactory/var/etc/artifactory/logback.xml
并重新启动了 Artifactory。这导致创建了一个新的 logback.xml
文件,该文件现在可以正常工作了。