OS Manuals

/usr/share/java/datahub-frontend/bin/datahub-frontend

DataHub Frontend Proxy - Play Framework web/auth tier that serves the DataHub React SPA and proxies authenticated requests to DataHub GMS

From datahub-frontend 1.8.0-r2 (enterprise-packages), captured 2026-11-09 by running datahub-frontend --help (exit 255) · terse output. permalink

14:42:15,413 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found logback-core version 1.5.38
14:42:15,428 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - Here is a list of configurators discovered as a service, by rank:
14:42:15,429 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d -   org.springframework.boot.logging.logback.RootLogLevelConfigurator
14:42:15,429 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - They will be invoked in order until ExecutionStatus.DO_NOT_INVOKE_NEXT_IF_ANY is returned.
14:42:15,430 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - Constructed configurator of type class org.springframework.boot.logging.logback.RootLogLevelConfigurator
14:42:15,440 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - org.springframework.boot.logging.logback.RootLogLevelConfigurator.configure() call lasted 0 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
14:42:15,440 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
14:42:15,444 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
14:42:15,445 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
14:42:15,449 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/usr/share/java/datahub-frontend/lib/datahub-frontend-1.8.1-SNAPSHOT.jar!/logback.xml]
14:42:15,698 |-INFO in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - Scan attribute set to true. Will scan for configuration file changes.
14:42:15,700 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@81d9a72 - URL [jar:file:/usr/share/java/datahub-frontend/lib/datahub-frontend-1.8.1-SNAPSHOT.jar!/logback.xml] is not of type file
14:42:15,705 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value " /tmp/datahub/logs/datahub-frontend" substituted for "${LOG_DIR:- /tmp/datahub/logs/datahub-frontend}"
14:42:15,705 |-INFO in ch.qos.logback.core.model.processor.TimestampModelHandler - Using current interpretation time, i.e. now, as time reference.
14:42:15,724 |-INFO in ch.qos.logback.core.model.processor.TimestampModelHandler - Adding property to the context with key="bySecond" and value="2026-11-09_14-42-15" to the LOCAL scope
14:42:15,724 |-INFO in ch.qos.logback.core.model.processor.TimestampModelHandler - Using current interpretation time, i.e. now, as time reference.
14:42:15,724 |-INFO in ch.qos.logback.core.model.processor.TimestampModelHandler - Adding property to the context with key="byDate" and value="2026-11-09" to the LOCAL scope
14:42:15,725 |-WARN in ch.qos.logback.core.model.processor.conditional.IfModelHandler - The 'condition' attribute in <if> element is deprecated and slated for removal. Use <condition> element instead.
14:42:15,725 |-WARN in ch.qos.logback.core.model.processor.conditional.IfModelHandler - See also https://logback.qos.ch/codes.html#conditionAttributeDeprecation
14:42:15,727 |-WARN in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - Missing watchable .xml or .properties files.
14:42:15,727 |-WARN in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - Watching .xml files requires that the main configuration file is reachable as a URL
14:42:15,727 |-INFO in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - Main configuration file URL: jar:file:/usr/share/java/datahub-frontend/lib/datahub-frontend-1.8.1-SNAPSHOT.jar!/logback.xml
14:42:15,729 |-INFO in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - FileWatchList= {}
14:42:15,730 |-INFO in ch.qos.logback.classic.model.processor.ConfigurationModelHandlerFull - URLWatchList= {}
14:42:15,735 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.log" substituted for "${LOG_DIR}/datahub-frontend.log"
14:42:15,737 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.log" substituted for "${LOG_DIR}/datahub-frontend.debug.log"
14:42:15,739 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [STDOUT]
14:42:15,739 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
14:42:15,797 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - This appender no longer admits a layout as a sub-component, set an encoder instead.
14:42:15,797 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
14:42:15,797 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - See also https://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
14:42:15,800 |-INFO in ch.qos.logback.core.ConsoleAppender[STDOUT] - NOTE: Writing to the console can be slow. Try to avoid logging to the
14:42:15,800 |-INFO in ch.qos.logback.core.ConsoleAppender[STDOUT] - console in production environments, especially in high volume systems.
14:42:15,800 |-INFO in ch.qos.logback.core.ConsoleAppender[STDOUT] - See also https://logback.qos.ch/codes.html#slowConsole
14:42:15,801 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
14:42:15,801 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
14:42:15,804 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.log" substituted for "${LOG_DIR}/datahub-frontend.log"
14:42:15,807 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.%d{yyyy-dd-MM}-%i.log" substituted for "${LOG_DIR}/datahub-frontend.%d{yyyy-dd-MM}-%i.log"
14:42:15,811 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@292138977 - setting totalSizeCap to 10 GB
14:42:15,826 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@292138977 - Archive files will be limited to [100 MB] each.
14:42:15,826 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@292138977 - No compression will be used
14:42:15,830 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@292138977 - Will use the pattern /tmp/datahub/logs/datahub-frontend/datahub-frontend.%d{yyyy-dd-MM}-%i.log for the active file
14:42:15,876 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@2ca26d77 - The date pattern is 'yyyy-dd-MM' from file name pattern '/tmp/datahub/logs/datahub-frontend/datahub-frontend.%d{yyyy-dd-MM}-%i.log'.
14:42:15,876 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@2ca26d77 - Roll-over at midnight.
14:42:15,877 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@2ca26d77 - Setting initial period to 2026-11-09T14:42:15.876Z
14:42:15,880 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
14:42:15,885 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /tmp/datahub/logs/datahub-frontend/datahub-frontend.log
14:42:15,886 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/tmp/datahub/logs/datahub-frontend/datahub-frontend.log]
14:42:15,887 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [DEBUG_FILE]
14:42:15,887 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
14:42:15,887 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.log" substituted for "${LOG_DIR}/datahub-frontend.debug.log"
14:42:15,887 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@747f281 - value "/tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.%d{yyyy-dd-MM}-%i.log" substituted for "${LOG_DIR}/datahub-frontend.debug.%d{yyyy-dd-MM}-%i.log"
14:42:15,888 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1208532123 - setting totalSizeCap to 2 GB
14:42:15,888 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1208532123 - Archive files will be limited to [100 MB] each.
14:42:15,888 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1208532123 - No compression will be used
14:42:15,889 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1208532123 - Will use the pattern /tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.%d{yyyy-dd-MM}-%i.log for the active file
14:42:15,890 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@70e38ce1 - The date pattern is 'yyyy-dd-MM' from file name pattern '/tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.%d{yyyy-dd-MM}-%i.log'.
14:42:15,890 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@70e38ce1 - Roll-over at midnight.
14:42:15,891 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy@70e38ce1 - Setting initial period to 2026-11-09T14:42:15.891Z
14:42:15,895 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
14:42:15,896 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[DEBUG_FILE] - Active log file name: /tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.log
14:42:15,896 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[DEBUG_FILE] - File property is set to [/tmp/datahub/logs/datahub-frontend/datahub-frontend.debug.log]
14:42:15,897 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [com.linkedin] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[com.linkedin]
14:42:15,898 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [controllers] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[controllers]
14:42:15,898 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [auth] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[auth]
14:42:15,898 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.pac4j] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[org.pac4j]
14:42:15,898 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [graphql] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[graphql]
14:42:15,898 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [react] to DEBUG
14:42:15,898 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [DEBUG_FILE] to Logger[react]
14:42:15,899 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to INFO
14:42:15,899 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [STDOUT] to Logger[ROOT]
14:42:15,899 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
14:42:15,899 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@2ca923bb - End of configuration.
14:42:15,900 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@13df2a8c - Registering current configuration as safe fallback point
14:42:15,900 |-INFO in ch.qos.logback.classic.util.ContextInitializer@b86de0d - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 456 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

Oops, cannot start the server.
Configuration error: Configuration error[application.conf @ jar:file:/usr/share/java/datahub-frontend/lib/datahub-frontend-1.8.1-SNAPSHOT.jar!/application.conf: 11: Could not resolve substitution to a value: ${DATAHUB_SECRET}]
	at play.api.Configuration$.$anonfun$configError$1(Configuration.scala:159)
	at scala.Option.map(Option.scala:242)
	at play.api.Configuration$.configError(Configuration.scala:151)
	at play.api.Configuration$.load(Configuration.scala:100)
	at play.core.server.ProdServerStart$.readServerConfigSettings(ProdServerStart.scala:101)
	at play.core.server.ProdServerStart$.start(ProdServerStart.scala:41)
	at play.core.server.ProdServerStart$.main(ProdServerStart.scala:28)
	at play.core.server.ProdServerStart.main(ProdServerStart.scala)
Caused by: com.typesafe.config.ConfigException$UnresolvedSubstitution: application.conf @ jar:file:/usr/share/java/datahub-frontend/lib/datahub-frontend-1.8.1-SNAPSHOT.jar!/application.conf: 11: Could not resolve substitution to a value: ${DATAHUB_SECRET}
	at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:111)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:132)
	at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:59)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.SimpleConfigObject$ResolveModifier.modifyChildMayThrow(SimpleConfigObject.java:380)
	at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:313)
	at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:399)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.SimpleConfigObject$ResolveModifier.modifyChildMayThrow(SimpleConfigObject.java:380)
	at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:313)
	at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:399)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.SimpleConfigObject$ResolveModifier.modifyChildMayThrow(SimpleConfigObject.java:380)
	at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:313)
	at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:399)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.SimpleConfigObject$ResolveModifier.modifyChildMayThrow(SimpleConfigObject.java:380)
	at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:313)
	at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:399)
	at com.typesafe.config.impl.ResolveContext.realResolve(ResolveContext.java:183)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:146)
	at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:235)
	at com.typesafe.config.impl.SimpleConfig.resolveWith(SimpleConfig.java:79)
	at com.typesafe.config.impl.SimpleConfig.resolve(SimpleConfig.java:69)
	at com.typesafe.config.impl.SimpleConfig.resolve(SimpleConfig.java:42)
	at com.typesafe.config.ConfigFactory.load(ConfigFactory.java:219)
	at com.typesafe.config.ConfigFactory.load(ConfigFactory.java:186)
	at play.api.Configuration$.load(Configuration.scala:96)
	... 4 more

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.