【问题标题】:Adobe AEM package manager - how to show Activity log using curlAdobe AEM 包管理器 - 如何使用 curl 显示活动日志
【发布时间】:2022-09-30 16:12:39
【问题描述】:

我正在使用 curl 来自动化 AEM 包管理器,但我想看看实际的进展。我在右下角窗口的 /crx/packmgr/index.jsp 中看到的内容。

因此,例如,如果我构建或安装一个大包,curls 进度只显示它仍在忙碌/等待,但不是实际发生的事情。

我想看到像这样的日志输出

Building package
A META-INF
A META-INF/MANIFEST.MF
A META-INF/vault
A META-INF/vault/config.xml
A META-INF/vault/filter.xml
A META-INF/vault/nodetypes.cnd
A META-INF/vault/properties.xml
A /.content.xml
A /content
A /content/.content.xml
...
Package built in 407377ms.

如果有办法为 POST 请求获取此信息

curl -u admin:admin -X POST 
\'http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages
 /allmycontent-1.0.zip?cmd=build\'

或者我可以获得其他一些网址来查看活动日志吗?

    标签: curl aem


    【解决方案1】:

    请看这个帖子:https://stackoverflow.com/a/50325299/1514647

    当为org.apache.jackrabbit.vault.packaging.impl.ActivityLog 添加记录器时,它将创建条目:

    05.05.2022 09:00:00.024 *INFO* [OsgiInstallerImpl] org.apache.jackrabbit.vault.packaging.impl.ActivityLog group:packagname:1.0.0: CREATE
    05.05.2022 09:00:00.024 *INFO* [OsgiInstallerImpl] org.apache.jackrabbit.vault.packaging.impl.ActivityLog group:packagname:1.0.0: UPLOAD
    05.05.2022 09:00:00.105 *INFO* [OsgiInstallerImpl] org.apache.jackrabbit.vault.packaging.impl.ActivityLog group:packagname:1.0.0: EXTRACT_SUB_PACKAGES ()
    

    此外,我建议为org.apache.jackrabbit.vault.fs.io.AbstractExporter 设置一个记录器

    它将注销每个添加或提取的文件,例如:

    05.05.2022 09:00:00.314 *DEBUG* [qtp1496533170-1940] org.apache.jackrabbit.vault.fs.io.AbstractExporter A META-INF
    05.05.2022 09:00:00.315 *DEBUG* [qtp1496533170-1940] org.apache.jackrabbit.vault.fs.io.AbstractExporter A META-INF/MANIFEST.MF
    05.05.2022 09:00:00.315 *DEBUG* [qtp1496533170-1940] org.apache.jackrabbit.vault.fs.io.AbstractExporter A META-INF/vault
    05.05.2022 09:00:00.315 *DEBUG* [qtp1496533170-1940] org.apache.jackrabbit.vault.fs.io.AbstractExporter A META-INF/vault/config.xml
    

    之后,您可以在 crx-quickstart/logs 文件夹中执行 tail -f error.log

    【讨论】:

    • 谢谢,但日志只能在同一台机器上本地使用 - 我正在寻找一种从远程访问它的方法(例如我的 Jenkins 实例),例如正如我在问题中所说的一些网址。
    • 链接帖子中的 Maven 详细选项打开了日志记录,但没有说明如何访问日志数据。
    • 抱歉让您久等了。我认为可以通过 url http://host:port/system/console/slinglog/tailer.txt?tail=10000&grep=*&name=%2Flogs%2Ferror.log 在您需要如上所述打开记录器之前。您还可以写入不同的日志文件,以分隔软件包安装日志。您需要提交基本身份验证。
    【解决方案2】:

    有一种简单的方法可以使用以下方式执行此操作:

    curl -ku admin:admin -F file=@"package-1.0.zip" -F force=true -F install=true http://localhost:4502/crx/packmgr/service.jsp
    

    这将按预期打印输出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-06
      • 1970-01-01
      • 2013-01-25
      • 1970-01-01
      相关资源
      最近更新 更多