Verified Commit 3f974506 authored by Sebastian Schüpbach's avatar Sebastian Schüpbach
Browse files

update configuration to 5.x

parent 9b3315d9
...@@ -17,14 +17,11 @@ temp_pathname = ...@@ -17,14 +17,11 @@ temp_pathname =
http.enabled = true http.enabled = true
http.host = 0.0.0.0 http.host = 0.0.0.0
http.port = 8182 http.port = 8182
http.http2.enabled = false
# !! Configures the HTTPS server. (Standalone mode only.) # !! Configures the HTTPS server. (Standalone mode only.)
https.enabled = false https.enabled = false
https.host = 0.0.0.0 https.host = 0.0.0.0
https.port = 8183 https.port = 8183
# Secure HTTP/2 requires Java 9 or later.
https.http2.enabled = false
# !! Available values are `JKS` and `PKCS12`. (Standalone mode only.) # !! Available values are `JKS` and `PKCS12`. (Standalone mode only.)
https.key_store_type = JKS https.key_store_type = JKS
...@@ -32,8 +29,12 @@ https.key_store_password = myPassword ...@@ -32,8 +29,12 @@ https.key_store_password = myPassword
https.key_store_path = /path/to/keystore.jks https.key_store_path = /path/to/keystore.jks
https.key_password = myPassword https.key_password = myPassword
# !! Maximum size of the HTTP(S) request queue. Leave blank to use the # !! Constrains the size of the web server's thread pool. Leave blank to
# default. # use the defaults.
http.min_threads =
http.max_threads =
# !! Maximum size of the request queue. Leave blank to use the default.
http.accept_queue_limit = http.accept_queue_limit =
# Base URI to use for internal links, such as Link headers and JSON-LD # Base URI to use for internal links, such as Link headers and JSON-LD
...@@ -56,7 +57,25 @@ max_pixels = 100000000 ...@@ -56,7 +57,25 @@ max_pixels = 100000000
# Maximum scale to allow (1.0 = full scale; 0 = no maximum). # Maximum scale to allow (1.0 = full scale; 0 = no maximum).
max_scale = 1.0 max_scale = 1.0
print_stack_trace_on_error_pages = false # A meta-identifier is a superset of an identifier that includes other
# information like a page number and/or scale constraint. A meta-identifier
# transformer transforms a meta-identifier to and from a string in a URI
# path component.
# Available transformers include `StandardMetaIdentifierTransformer` and
# `DelegateMetaIdentifierTransformer`. See the user manual for more
# information about meta-identifiers and these options.
meta_identifier.transformer = StandardMetaIdentifierTransformer
# Character sequence that separates the components of a meta-identifier in
# the identifier portion of a URI.
meta_identifier.transformer.StandardMetaIdentifierTransformer.delimiter = ;
# If true, HTTP >= 400-level responses are logged at WARN and ERROR level.
# This may result in multiple log statements for the same error, but it may
# also help diagnose errors that have evaded logging.
log_error_responses = false
print_stack_trace_on_error_pages = true
########################################################################### ###########################################################################
# DELEGATE SCRIPT # DELEGATE SCRIPT
...@@ -69,12 +88,10 @@ delegate_script.enabled = true ...@@ -69,12 +88,10 @@ delegate_script.enabled = true
# !! This can be an absolute path, or a filename; if only a filename is # !! This can be an absolute path, or a filename; if only a filename is
# specified, it will be searched for in the same folder as this file, and # specified, it will be searched for in the same folder as this file, and
# then the current working directory. # then the current working directory.
# The delegate script pathname can also be set using the
# -Dcantaloupe.delegate_script VM argument, which overrides this value.
delegate_script.pathname = delegates.rb delegate_script.pathname = delegates.rb
# Enables the invocation cache, which caches method invocations and return
# values in memory. See the user manual for more information.
delegate_script.cache.enabled = true
########################################################################### ###########################################################################
# ENDPOINTS # ENDPOINTS
########################################################################### ###########################################################################
...@@ -85,10 +102,8 @@ endpoint.iiif.1.enabled = false ...@@ -85,10 +102,8 @@ endpoint.iiif.1.enabled = false
# Enables the IIIF Image API 2.x endpoint, at /iiif/2. # Enables the IIIF Image API 2.x endpoint, at /iiif/2.
endpoint.iiif.2.enabled = true endpoint.iiif.2.enabled = true
# Controls the response Content-Disposition header for images. Allowed # Enables the IIIF Image API 3.x endpoint, at /iiif/3.
# values are `inline`, `attachment`, and `none`. This can be overridden endpoint.iiif.3.enabled = false
# using the ?response-content-disposition query argument.
endpoint.iiif.content_disposition = inline
# Minimum size that will be used in info.json `sizes` keys. # Minimum size that will be used in info.json `sizes` keys.
endpoint.iiif.min_size = 64 endpoint.iiif.min_size = 64
...@@ -99,12 +114,12 @@ endpoint.iiif.min_tile_size = 512 ...@@ -99,12 +114,12 @@ endpoint.iiif.min_tile_size = 512
# If true, requests for sizes other than those contained in an information # If true, requests for sizes other than those contained in an information
# response will be denied. # response will be denied.
endpoint.iiif.2.restrict_to_sizes = false endpoint.iiif.restrict_to_sizes = false
# Enables the Control Panel, at /admin. # Enables the Control Panel, at /admin.
endpoint.admin.enabled = false endpoint.admin.enabled = false
endpoint.admin.username = admin endpoint.admin.username = admin
endpoint.admin.secret = endpoint.admin.secret =
# Enables the administrative HTTP API. (See the user manual.) # Enables the administrative HTTP API. (See the user manual.)
endpoint.api.enabled = false endpoint.api.enabled = false
...@@ -113,6 +128,14 @@ endpoint.api.enabled = false ...@@ -113,6 +128,14 @@ endpoint.api.enabled = false
endpoint.api.username = endpoint.api.username =
endpoint.api.secret = endpoint.api.secret =
# Enables the health check endpoint, at /health.
endpoint.health.enabled = true
# If true, sources and caches will be checked, resulting in a more robust
# but slower health check. Set this to false if these services already have
# their own health checks.
endpoint.health.dependency_check = false
########################################################################### ###########################################################################
# SOURCES # SOURCES
########################################################################### ###########################################################################
...@@ -169,6 +192,12 @@ HttpSource.BasicLookupStrategy.url_suffix = ...@@ -169,6 +192,12 @@ HttpSource.BasicLookupStrategy.url_suffix =
HttpSource.BasicLookupStrategy.auth.basic.username = HttpSource.BasicLookupStrategy.auth.basic.username =
HttpSource.BasicLookupStrategy.auth.basic.secret = HttpSource.BasicLookupStrategy.auth.basic.secret =
# Before an image is retrieved, a preliminary request is sent to check
# various characteristics. Typically this is a HEAD request, but some
# resources, such as those using pre-signed URLs, may not support HEAD
# requests. This key enables a ranged GET request to be sent instead.
HttpSource.BasicLookupStrategy.send_head_requests = true
# Read data in chunks when it may be more efficient. (This also may end up # Read data in chunks when it may be more efficient. (This also may end up
# being less efficient, depending on many variables; see the user manual.) # being less efficient, depending on many variables; see the user manual.)
HttpSource.chunking.enabled = true HttpSource.chunking.enabled = true
...@@ -187,11 +216,12 @@ HttpSource.chunking.cache.max_size = 5M ...@@ -187,11 +216,12 @@ HttpSource.chunking.cache.max_size = 5M
# S3Source # S3Source
#---------------------------------------- #----------------------------------------
# !! Endpoint URI. # !! Endpoint URI. Only needed for non-AWS endpoints.
# For AWS endpoints, see:
# https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
S3Source.endpoint = S3Source.endpoint =
# !! AWS region. Only needed for AWS endpoints.
S3Source.region =
# !! Credentials for your AWS account. # !! Credentials for your AWS account.
# See: http://aws.amazon.com/security-credentials # See: http://aws.amazon.com/security-credentials
# Note that this info can be obtained from elsewhere rather than setting # Note that this info can be obtained from elsewhere rather than setting
...@@ -296,16 +326,14 @@ JdbcSource.connection_timeout = 10 ...@@ -296,16 +326,14 @@ JdbcSource.connection_timeout = 10
# on the rest of the keys in this section. # on the rest of the keys in this section.
processor.selection_strategy = AutomaticSelectionStrategy processor.selection_strategy = AutomaticSelectionStrategy
# Built-in processors are `Java2dProcessor`, `GraphicsMagickProcessor`, # Built-in processors are `Java2dProcessor`, TurboJpegProcessor`,
# `ImageMagickProcessor`, `TurboJpegProcessor`, `KakaduNativeProcessor`, # `KakaduNativeProcessor`, `OpenJpegProcessor`, `GrokProcessor`,`JaiProcessor`,
# `KakaduDemoProcessor`, `OpenJpegProcessor`, `JaiProcessor`,
# `PdfBoxProcessor`, and `FfmpegProcessor`. # `PdfBoxProcessor`, and `FfmpegProcessor`.
# Some of these have third-party dependencies and won't work out-of-the-box. # Some of these have third-party dependencies and won't work out-of-the-box.
# These format-specific definitions are optional. # These format-specific definitions are optional.
processor.ManualSelectionStrategy.avi = FfmpegProcessor processor.ManualSelectionStrategy.avi = FfmpegProcessor
processor.ManualSelectionStrategy.bmp = processor.ManualSelectionStrategy.bmp =
processor.ManualSelectionStrategy.dcm = ImageMagickProcessor
processor.ManualSelectionStrategy.flv = FfmpegProcessor processor.ManualSelectionStrategy.flv = FfmpegProcessor
processor.ManualSelectionStrategy.gif = processor.ManualSelectionStrategy.gif =
processor.ManualSelectionStrategy.jp2 = KakaduNativeProcessor processor.ManualSelectionStrategy.jp2 = KakaduNativeProcessor
...@@ -317,7 +345,7 @@ processor.ManualSelectionStrategy.pdf = PdfBoxProcessor ...@@ -317,7 +345,7 @@ processor.ManualSelectionStrategy.pdf = PdfBoxProcessor
processor.ManualSelectionStrategy.png = processor.ManualSelectionStrategy.png =
processor.ManualSelectionStrategy.tif = processor.ManualSelectionStrategy.tif =
processor.ManualSelectionStrategy.webm = FfmpegProcessor processor.ManualSelectionStrategy.webm = FfmpegProcessor
processor.ManualSelectionStrategy.webp = ImageMagickProcessor processor.ManualSelectionStrategy.xpm =
# Fall back to this processor for any formats not assigned above. # Fall back to this processor for any formats not assigned above.
processor.ManualSelectionStrategy.fallback = Java2dProcessor processor.ManualSelectionStrategy.fallback = Java2dProcessor
...@@ -342,6 +370,10 @@ processor.stream_retrieval_strategy = StreamStrategy ...@@ -342,6 +370,10 @@ processor.stream_retrieval_strategy = StreamStrategy
# * `AbortStrategy` causes the request to fail. # * `AbortStrategy` causes the request to fail.
processor.fallback_retrieval_strategy = DownloadStrategy processor.fallback_retrieval_strategy = DownloadStrategy
# If true, images stored in the source cache for which no format can be
# inferred will be purged.
processor.purge_incompatible_from_source_cache = false
# Resolution of vector rasterization (of e.g. PDFs) at a scale of 1. # Resolution of vector rasterization (of e.g. PDFs) at a scale of 1.
processor.dpi = 150 processor.dpi = 150
...@@ -356,17 +388,14 @@ processor.background_color = white ...@@ -356,17 +388,14 @@ processor.background_color = white
processor.downscale_filter = bicubic processor.downscale_filter = bicubic
processor.upscale_filter = bicubic processor.upscale_filter = bicubic
# If true, images are downscaled in a linear color space, which is more
# accurate. This only works with mono-resolution (non-pyramidal) images. It
# also may impair performance.
processor.downscale_linear = false
# Intensity of an unsharp mask from 0 to 1. # Intensity of an unsharp mask from 0 to 1.
processor.sharpen = 0 processor.sharpen = 0
# Attempts to copy source image metadata (EXIF, IPTC, XMP) into derivative
# images. (This is not foolproof; see the user manual.)
processor.metadata.preserve = false
# Whether to auto-rotate images using the EXIF `Orientation` field.
# The check for this field can impair performance slightly.
processor.metadata.respect_orientation = false
# Progressive JPEGs are usually more compact. # Progressive JPEGs are usually more compact.
processor.jpg.progressive = true processor.jpg.progressive = true
...@@ -392,6 +421,7 @@ processor.imageio.png.reader = ...@@ -392,6 +421,7 @@ processor.imageio.png.reader =
processor.imageio.png.writer = processor.imageio.png.writer =
processor.imageio.tif.reader = processor.imageio.tif.reader =
processor.imageio.tif.writer = processor.imageio.tif.writer =
processor.imageio.xpm.reader =
#---------------------------------------- #----------------------------------------
# FfmpegProcessor # FfmpegProcessor
...@@ -402,36 +432,30 @@ processor.imageio.tif.writer = ...@@ -402,36 +432,30 @@ processor.imageio.tif.writer =
FfmpegProcessor.path_to_binaries = FfmpegProcessor.path_to_binaries =
#---------------------------------------- #----------------------------------------
# GraphicsMagickProcessor # OpenJpegProcessor
#----------------------------------------
# !! Optional absolute path of the directory containing the GraphicsMagick
# binary. Overrides the PATH.
GraphicsMagickProcessor.path_to_binaries =
#----------------------------------------
# ImageMagickProcessor
#---------------------------------------- #----------------------------------------
# !! Optional absolute path of the directory containing the ImageMagick # Optional absolute path of the directory containing opj_decompress.
# binary. Overrides the PATH. # Overrides the PATH.
ImageMagickProcessor.path_to_binaries = OpenJpegProcessor.path_to_binaries =
#---------------------------------------- #----------------------------------------
# KakaduDemoProcessor # GrokProcessor
#---------------------------------------- #----------------------------------------
# Optional absolute path of the directory containing kdu_expand. # Optional absolute path of the directory containing grk_decompress.
# Overrides the PATH. # Overrides the PATH.
KakaduDemoProcessor.path_to_binaries = GrokProcessor.path_to_binaries =
#---------------------------------------- #----------------------------------------
# OpenJpegProcessor # PdfBoxProcessor
#---------------------------------------- #----------------------------------------
# Optional absolute path of the directory containing opj_decompress. # The following will enable disk to be used as well as memory during
# Overrides the PATH. # PDF loading in PdfBoxProcessor. If `max_memory_bytes` is -1 it
OpenJpegProcessor.path_to_binaries = # will use unlimited memory.
processor.pdf.scratch_file_enabled = false
processor.pdf.max_memory_bytes = -1
########################################################################### ###########################################################################
# CLIENT-SIDE CACHING # CLIENT-SIDE CACHING
...@@ -556,11 +580,12 @@ JdbcCache.info_table = info_cache ...@@ -556,11 +580,12 @@ JdbcCache.info_table = info_cache
# S3Cache # S3Cache
#---------------------------------------- #----------------------------------------
# !! Endpoint URI. # !! Endpoint URI. Only needed for non-AWS endpoints.
# For AWS endpoints, see:
# https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
S3Cache.endpoint = S3Cache.endpoint =
# !! AWS region. Only needed for AWS endpoints.
S3Cache.region =
# !! Credentials for your AWS account. # !! Credentials for your AWS account.
# See: http://aws.amazon.com/security-credentials # See: http://aws.amazon.com/security-credentials
# Note that this info can be obtained from elsewhere rather than setting it # Note that this info can be obtained from elsewhere rather than setting it
...@@ -574,10 +599,6 @@ S3Cache.bucket.name = ...@@ -574,10 +599,6 @@ S3Cache.bucket.name =
# !! String that will be prefixed to object keys. # !! String that will be prefixed to object keys.
S3Cache.object_key_prefix = S3Cache.object_key_prefix =
# !! Maximum number of concurrent HTTP connections to AWS. Leave blank to
# use the default.
S3Cache.max_connections =
#---------------------------------------- #----------------------------------------
# AzureStorageCache # AzureStorageCache
#---------------------------------------- #----------------------------------------
...@@ -607,14 +628,14 @@ RedisCache.database = 0 ...@@ -607,14 +628,14 @@ RedisCache.database = 0
# OVERLAYS # OVERLAYS
########################################################################### ###########################################################################
# Whether to enable overlays.
overlays.enabled = false
# Controls how overlays are configured. `BasicStrategy` will use the # Controls how overlays are configured. `BasicStrategy` will use the
# `overlays.BasicStrategy.*` keys in this section. `ScriptStrategy` will # `overlays.BasicStrategy.*` keys in this section. `ScriptStrategy` will
# use a delegate method. (See the user manual.) # use a delegate method. (See the user manual.)
overlays.strategy = BasicStrategy overlays.strategy = BasicStrategy
# Whether to enable overlays using the BasicStrategy.
overlays.BasicStrategy.enabled = false
# `image` or `string`. # `image` or `string`.
overlays.BasicStrategy.type = image overlays.BasicStrategy.type = image
...@@ -624,7 +645,7 @@ overlays.BasicStrategy.image = /path/to/overlay.png ...@@ -624,7 +645,7 @@ overlays.BasicStrategy.image = /path/to/overlay.png
# Overlay text. # Overlay text.
overlays.BasicStrategy.string = Copyright © My Great Organization\nAll rights reserved. overlays.BasicStrategy.string = Copyright © My Great Organization\nAll rights reserved.
# For possible values, launch with the -Dcantaloupe.list_fonts option. # For a list of possible values, launch with the -list-fonts argument.
overlays.BasicStrategy.string.font = Helvetica overlays.BasicStrategy.string.font = Helvetica
# Font size in points. # Font size in points.
...@@ -656,7 +677,7 @@ overlays.BasicStrategy.string.background.color = rgba(0, 0, 0, 100) ...@@ -656,7 +677,7 @@ overlays.BasicStrategy.string.background.color = rgba(0, 0, 0, 100)
# Allowed values: `top left`, `top center`, `top right`, `left center`, # Allowed values: `top left`, `top center`, `top right`, `left center`,
# `center`, `right center`, `bottom left`, `bottom center`, `bottom right`, # `center`, `right center`, `bottom left`, `bottom center`, `bottom right`,
# `repeat` (images only). # `repeat` (images only), `scaled` (images only).
overlays.BasicStrategy.position = bottom right overlays.BasicStrategy.position = bottom right
# Pixel margin between the overlay and the image edge. Does not apply to # Pixel margin between the overlay and the image edge. Does not apply to
...@@ -671,13 +692,6 @@ overlays.BasicStrategy.output_width_threshold = 400 ...@@ -671,13 +692,6 @@ overlays.BasicStrategy.output_width_threshold = 400
# Set to 0 to add the overlay regardless. # Set to 0 to add the overlay regardless.
overlays.BasicStrategy.output_height_threshold = 300 overlays.BasicStrategy.output_height_threshold = 300
###########################################################################
# REDACTIONS
###########################################################################
# See the user manual for information about how redactions work.
redaction.enabled = false
########################################################################### ###########################################################################
# LOGGING # LOGGING
########################################################################### ###########################################################################
...@@ -687,15 +701,18 @@ redaction.enabled = false ...@@ -687,15 +701,18 @@ redaction.enabled = false
#---------------------------------------- #----------------------------------------
# `trace`, `debug`, `info`, `warn`, `error`, `all`, or `off` # `trace`, `debug`, `info`, `warn`, `error`, `all`, or `off`
log.application.level = warn log.application.level = info
log.application.ConsoleAppender.enabled = true log.application.ConsoleAppender.enabled = true
log.application.ConsoleAppender.logstash.enabled = true
# N.B.: Don't enable FileAppender and RollingFileAppender simultaneously! # N.B.: Don't enable FileAppender and RollingFileAppender simultaneously!
log.application.FileAppender.enabled = false log.application.FileAppender.enabled = false
log.application.FileAppender.logstash.enabled = false
log.application.FileAppender.pathname = /path/to/logs/application.log log.application.FileAppender.pathname = /path/to/logs/application.log
log.application.RollingFileAppender.enabled = false log.application.RollingFileAppender.enabled = false
log.application.RollingFileAppender.logstash.enabled = false
log.application.RollingFileAppender.pathname = /path/to/logs/application.log log.application.RollingFileAppender.pathname = /path/to/logs/application.log
log.application.RollingFileAppender.policy = TimeBasedRollingPolicy log.application.RollingFileAppender.policy = TimeBasedRollingPolicy
log.application.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/application-%d{yyyy-MM-dd}.log log.application.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/application-%d{yyyy-MM-dd}.log
...@@ -717,9 +734,11 @@ log.application.SyslogAppender.facility = LOCAL0 ...@@ -717,9 +734,11 @@ log.application.SyslogAppender.facility = LOCAL0
# N.B.: Don't enable FileAppender and RollingFileAppender simultaneously! # N.B.: Don't enable FileAppender and RollingFileAppender simultaneously!
log.error.FileAppender.enabled = false log.error.FileAppender.enabled = false
log.error.FileAppender.logstash.enabled = false
log.error.FileAppender.pathname = /path/to/logs/error.log log.error.FileAppender.pathname = /path/to/logs/error.log
log.error.RollingFileAppender.enabled = false log.error.RollingFileAppender.enabled = false
log.error.RollingFileAppender.logstash.enabled = false
log.error.RollingFileAppender.pathname = /path/to/logs/error.log log.error.RollingFileAppender.pathname = /path/to/logs/error.log
log.error.RollingFileAppender.policy = TimeBasedRollingPolicy log.error.RollingFileAppender.policy = TimeBasedRollingPolicy
log.error.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/error-%d{yyyy-MM-dd}.log log.error.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/error-%d{yyyy-MM-dd}.log
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment