更改在docker中运行的selenium节点的日志级别

Sco*_*ley 5 selenium docker

我们的团队正在使用docker部署selenium网格.默认日志级别似乎设置为INFO.我想将它设置为更高,严重或完全关闭它们.我做了三次尝试,但到目前为止,没有任何效果.

方法一:

从selenium客户端,我试图在DesiredCapabilities中的RemoteWebDriver上设置LoggingPreferences:

DesiredCapabilities desiredCapabilities = DesiredCapabilities.firefox();
LoggingPreferences logs = new LoggingPreferences();
logs.enable(LogType.BROWSER, Level.SEVERE);
logs.enable(LogType.CLIENT, Level.SEVERE);
ogs.enable(LogType.DRIVER, Level.SEVERE);
logs.enable(LogType.SERVER, Level.SEVERE);
desiredCapabilities.setCapability(CapabilityType.LOGGING_PREFS, logs);
desiredCapabilities.setCapability(FirefoxDriver.PROFILE, profile);
WebDriver driver = new RemoteWebDriver(new URL(host:4444/wd/hub"), 
                                           desiredCapabilities);
Run Code Online (Sandbox Code Playgroud)

方法2:我尝试更改配置文件首选项:

FirefoxProfile profile = new FirefoxProfile();

profile.setPreference("webdriver.log.driver", "OFF");
profile.setPreference("webdriver.log.file","/dev/null");
Run Code Online (Sandbox Code Playgroud)

方法3:我尝试修改位于/opt/selenium/config.json的容器中的config.json:

{
  "capabilities": [
    {
      "browserName": "*firefox",
      "maxInstances": 1,
      "seleniumProtocol": "Selenium"
    },
    {
      "browserName": "firefox",
      "maxInstances": 1,
      "seleniumProtocol": "WebDriver"
    }
  ],
  "configuration": {
      "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
      "maxSession": 1,
      "port": 5555,
      "register": true,
      "registerCycle": 5000,
      "logLevel":FATAL
  }
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我一直无法做任何改变日志记录行为的事情.

Kri*_*van 3

@斯科特

Selenium 代码库使用 Java Utils Logger。因此,也许您可​​以尝试传入自定义的logging.properties,其中日志级别会提高,看看是否有帮助。[请参阅此处了解有关logging.properties的更多信息]

LoggingPreferences 类主要用于调整仅针对给定会话检索的日志级别[至少我认为是这样],并且它不会改变节点/网格运行所在的 JVM 的日志记录级别。

在 Selenium 服务器独立的情况下,可以通过 JVM 参数“selenium.LOGGER.level”更改日志级别