165 lines
5.2 KiB
YAML
165 lines
5.2 KiB
YAML
#
|
|
# 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.
|
|
#
|
|
|
|
|
|
Configuration:
|
|
status: INFO
|
|
monitorInterval: 30
|
|
name: pulsar
|
|
packages: io.prometheus.client.log4j2
|
|
|
|
Properties:
|
|
Property:
|
|
- name: "pulsar.log.dir"
|
|
value: "logs"
|
|
- name: "pulsar.log.file"
|
|
value: "pulsar.log"
|
|
- name: "pulsar.log.appender"
|
|
value: "RoutingAppender"
|
|
- name: "pulsar.log.root.level"
|
|
value: "info"
|
|
- name: "pulsar.log.level"
|
|
value: "info"
|
|
- name: "pulsar.routing.appender.default"
|
|
value: "Console"
|
|
|
|
# Example: logger-filter script
|
|
Scripts:
|
|
ScriptFile:
|
|
name: filter.js
|
|
language: JavaScript
|
|
path: ./conf/log4j2-scripts/filter.js
|
|
charset: UTF-8
|
|
|
|
Appenders:
|
|
|
|
# Console
|
|
Console:
|
|
name: Console
|
|
target: SYSTEM_OUT
|
|
PatternLayout:
|
|
Pattern: "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
|
|
|
|
# Rolling file appender configuration
|
|
RollingFile:
|
|
name: RollingFile
|
|
fileName: "${sys:pulsar.log.dir}/${sys:pulsar.log.file}"
|
|
filePattern: "${sys:pulsar.log.dir}/${sys:pulsar.log.file}-%d{MM-dd-yyyy}-%i.log.gz"
|
|
immediateFlush: false
|
|
PatternLayout:
|
|
Pattern: "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
|
|
Policies:
|
|
TimeBasedTriggeringPolicy:
|
|
interval: 1
|
|
modulate: true
|
|
SizeBasedTriggeringPolicy:
|
|
size: 1 GB
|
|
# Delete file older than 30days
|
|
DefaultRolloverStrategy:
|
|
Delete:
|
|
basePath: ${sys:pulsar.log.dir}
|
|
maxDepth: 2
|
|
IfFileName:
|
|
glob: "*/${sys:pulsar.log.file}*log.gz"
|
|
IfLastModified:
|
|
age: 30d
|
|
|
|
Prometheus:
|
|
name: Prometheus
|
|
|
|
# Routing
|
|
Routing:
|
|
name: RoutingAppender
|
|
Routes:
|
|
pattern: "$${ctx:function}"
|
|
Route:
|
|
-
|
|
Routing:
|
|
name: InstanceRoutingAppender
|
|
Routes:
|
|
pattern: "$${ctx:instance}"
|
|
Route:
|
|
-
|
|
RollingFile:
|
|
name: "Rolling-${ctx:function}"
|
|
fileName : "${sys:pulsar.log.dir}/functions/${ctx:function}/${ctx:functionname}-${ctx:instance}.log"
|
|
filePattern : "${sys:pulsar.log.dir}/functions/${sys:pulsar.log.file}-${ctx:instance}-%d{MM-dd-yyyy}-%i.log.gz"
|
|
PatternLayout:
|
|
Pattern: "%d{ABSOLUTE} %level{length=5} [%thread] [instance: %X{instance}] %logger{1} - %msg%n"
|
|
Policies:
|
|
TimeBasedTriggeringPolicy:
|
|
interval: 1
|
|
modulate: true
|
|
SizeBasedTriggeringPolicy:
|
|
size: "20MB"
|
|
# Trigger every day at midnight that also scan
|
|
# roll-over strategy that deletes older file
|
|
CronTriggeringPolicy:
|
|
schedule: "0 0 0 * * ?"
|
|
# Delete file older than 30days
|
|
DefaultRolloverStrategy:
|
|
Delete:
|
|
basePath: ${sys:pulsar.log.dir}
|
|
maxDepth: 2
|
|
IfFileName:
|
|
glob: "*/${sys:pulsar.log.file}*log.gz"
|
|
IfLastModified:
|
|
age: 30d
|
|
- ref: "${sys:pulsar.routing.appender.default}"
|
|
key: "${ctx:function}"
|
|
- ref: "${sys:pulsar.routing.appender.default}"
|
|
key: "${ctx:function}"
|
|
|
|
Loggers:
|
|
|
|
# Default root logger configuration
|
|
Root:
|
|
level: "${sys:pulsar.log.root.level}"
|
|
additivity: true
|
|
AppenderRef:
|
|
- ref: "${sys:pulsar.log.appender}"
|
|
level: "${sys:pulsar.log.level}"
|
|
- ref: Prometheus
|
|
level: info
|
|
|
|
Logger:
|
|
- name: org.apache.bookkeeper.bookie.BookieShell
|
|
level: info
|
|
additivity: false
|
|
AppenderRef:
|
|
- ref: Console
|
|
|
|
- name: verbose
|
|
level: info
|
|
additivity: false
|
|
AppenderRef:
|
|
- ref: Console
|
|
|
|
# Logger to inject filter script
|
|
# - name: org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl
|
|
# level: debug
|
|
# additivity: false
|
|
# AppenderRef:
|
|
# ref: "${sys:pulsar.log.appender}"
|
|
# ScriptFilter:
|
|
# onMatch: ACCEPT
|
|
# onMisMatch: DENY
|
|
# ScriptRef:
|
|
# ref: filter.js
|