如何显示无头Chrome实例的控制台日志和错误?

时间:2019-04-30 14:00:53

标签: php symfony docker puppeteer google-chrome-headless

我正在研究一个Symfony项目,该项目使用Browsershot将页面导出为PDF。导出在服务器上工作正常,但是当我尝试使其在Docker容器内本地工作时,PDF中缺少许多资源(图像,CSS等),因此布局不正确。

因此,要对其进行故障排除,我想访问控制台日志和无头chrome实例的错误,该实例由puppeteer创建并由Browsershot调用。 有人对这个有经验么?是否有可能,或者无头的Chrome只是没有这样的开发工具?我在网上找不到任何东西,但也许有人以前尝试过。

非常感谢!

这是在项目内部调用Browsershot的方式:

Browsershot::html($htmlContent)
                ->noSandbox()
                ->showBrowserHeaderAndFooter()
                ->waitUntilNetworkIdle()
                ->headerHtml('<p></p>')
                ->footerHtml($this->getFooter())
                ->showBackground()
                ->emulateMedia('screen')
                ->landscape()
                ->paperSize(210, 297)
                ->margins(10, 10, 10, 10)
                ->windowSize(1200, 850)
                ->save($temp);

,然后像这样在Dockerfile中安装puppeteer:

RUN curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - && \
    sudo apt-get install -y nodejs gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget && \
    sudo npm install --global --unsafe-perm puppeteer && \
    sudo chmod -R o+rx /usr/lib/node_modules/puppeteer/.local-chromium

0 个答案:

没有答案