# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

logging:
  level: INFO
  appenders:
    # For development:
    - type: console
      threshold: ALL
      target: stdout
#    # FOR PRODUCTION:
#    - type: file
#      currentLogFilename: /opt/fmonlinetester/var/log/main.log
#      threshold: ALL
#      archive: true
#      archivedLogFilenamePattern: /opt/fmonlinetester/var/log/main-%d.log.gz
#      archivedFileCount: 5
#      timeZone: UTC
#      logFormat:
server:
  requestLog:
    appenders: []
  applicationConnectors:    
      - type: http
        port: 8080
#      # FOR PRODUCTION:
#      - type: https
#        port: 8443
#        keyStorePath: /etc/letsencrypt/live/example.p12
#        keyStoreType: PKCS12
#        keyStorePassword: secret
#        validateCerts: false
  adminConnectors:
      # HTTP POST to /tasks/reload-ssl to reload SSL certificates without stopping.
      - type: http
        port: 8081            
viewRendererConfiguration:
  freemarker:  # was `.ftl:` before Dropwizard 1.3.0
    incompatibleImprovements: 2.3.28
    locale: en_US
    timeZone: UTC
    outputEncoding: UTF-8
    templateExceptionHandler: rethrow
assets:
  overrides:
    # Let's Encrypt certbot writes its domain ownership vertification file here. It will visit
    # it from outside when we ask for a new certificate: 
    /letsencrypt-verify: /opt/fmonlinetester/var/letsencrypt-verify