Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Блок кода
languagepy
collapsetrue
portal {
    defaultRedirectUrl = "http://eltex-co.ru"

    scheduler {
        tariffCheckerPeriod = 1440
}

1d
        paymentsCleanerPeriod = "0 0 * * * ?"
    }
}

jetty {
    https {
        port = 9443
        keystorePass = 12345
        keystoreFile = /etc/eltex-portal/localhost.pfx
        keystoreType = PKCS12
        keyAlias = 1
        ciphers = [
            TLS_RSA_WITH_AES_128_CBC_SHA256
            TLS_RSA_WITH_AES_128_CBC_SHA
            TLS_RSA_WITH_AES_256_CBC_SHA256
            TLS_RSA_WITH_AES_256_CBC_SHA
        ]
    }

    accessLog {
        enabled = true
        directory = /var/log/eltex-portal/

        # <default> : NCSA format
        # <custom>  : customized NCSA with additional parameters
        format = default
        retainDays = 30
        append = false
        logCookies = true
        logAP = true
        logBRAS = true
    }
}

database {
    host = localhost
    port = 3306
    name = ELTEX_PORTAL
    user = javauser
    password = javapassword

    readOnly = true

    pool {
        # Time to wait for a connection
        connectionTimeout = 10s
        # Time to wait for connection validation
        validationTimeout = 3s

        min = 1
        max = 10
    }

    cache {
        # Limit of cached simple entries count (for each query type)
        maxEntries = 1000
        # Limit of total cached portal resources size
        maxResourceBytes = 32m
        # Maximum time to retain items in the cache
        expireTime = 2m
    }
}

// JWT validation. You need a key from Eltex Doors.
// Or you could generate it yourself.
validation {
   public_key = "etc/eltex-doors/keys/public.pem"


ПараметрыОписание
portal

defaultRedirectUrl

Адрес, на который будет выполнено перенаправление пользователя в случае когда необходим перезапустить его сессиию на портале. Должен быть настроен по протоколу http.

tariffCheckerPeriod

Интервал выполнения проверки наличия тарифных планов на порталах. В случае отсутствия тарифного плана формируется сообщение об ошибке.
paymentsCleanerPeriodПериод очистки неудачных платежей в БД
jetty
https

Настройки работы контейнера по https. Необходимо указать расположение сертификата, ключ и прослушиваемый порт.

port - прослушиваемый порт

keystorePass - ключ от хранилища сертификатов

keystoreFile - файл хранилища, содержащий сертификат

keystoreType - тип хранилища

certAlias - алиас сертификата в хранилище

ciphers - поддерживаемые методы шифрования

accessLog

Логирование запросов на сервис.

enabled - статус логирования

directory - директория сохранения логов

format - форма логов default - стандартный формат NCSA, custom - расширенный формат для отладки

append - продолжение записи существующего файла после перезапуска сервиса

retrainDays - время хранения логов

append - дополнительная информация

logCookies - сохранение cookie в логах

logAP - сохранение заголовков переданных точкой доступа

logBRAS - сохранение данных, переданных BRAS'ом


database
hostАдрес сервера БД
portПорт, на который сервер БД принимает входящее подключение
nameНазвание БД
userИмя пользователя БД
passwordПароль пользователя БД

readOnly

Статус подключения к базе данных

pool

Управление соединениями к БД

connectionTimeout - Время жизни коннекта при бездействии

validationTimeout - интервал проверки бездействующих коннектов

min - минимальное количество коннектов

max - максимальное количество коннектов

cache

Настройки кэширования

maxEntries - максимальное количество элементов в кэше

maxResourceBytes - размер кэша

expireTime - время хранения данных в кэше

validation
public_keyПуть к файлу ключа сервиса eltex-doors для валидации токенов при обращении на портал друних сервисов (eltex-johhny)



/etc/default/eltex-portal

...

Блок кода
languagejava
collapsetrue
<?xml version="1.0" encoding="UTF-8"?>

<configuration<Configuration monitorInterval="60010">

   <properties> <Properties>
        <Property name="rootLevel">ERROR</Property>

        <Property name="baseDir">/var/log/eltex-portal</Property>
        <Property name="maxFileSize">20 MB</Property>
        <Property name="accumulatedFileSize">100 GB</Property>
        <Property name="lastModified">4d</Property>
        <Property name="maxCount">20</Property>
        <Property name="baseDir">/var/log/eltex-portal<logPattern">%d{ISO8601} [%t] %-5p %logger{12} %C{1}.%M(line:%L). %m%n</Property>
        <Property name="dateSuffix">%d{yyyyMMdd}</Property>

        <Property name="gelfLevel">INFO</Property>
        <Property name="gelfHost">udp:lab3-test.eltex.loc</Property>
        <Property name="gelfPort">12201</Property>
    </properties>Properties>

   <appenders> <Appenders>

        <Console name="STDERR" target="System.err">
            <PatternLayout pattern="${logPattern}"/>
        </Console>

        <RollingFile name="RollingFile"
                     fileName="${baseDir}/portal.log_ep.txt"
                     filePattern="${baseDir}/log/log_epportal-%i.txtlog.gz">
            <PatternLayout>
<PatternLayout pattern="${logPattern}"/>
            <Policies>
  <pattern>%d{ISO8601} [%t] %-5p %logger{12} %C{1}.%M(line:%L). %m%n</pattern>              <SizeBasedTriggeringPolicy size="${maxFileSize}"/>
                <OnStartupTriggeringPolicy />
            </Policies>
            <DefaultRolloverStrategy max="${maxCount}">
                <Delete basePath="${baseDir}" maxDepth="3">
                    <IfFileName glob="*/portal-*.log.gz">
                        <IfAny>
                            <IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
            </PatternLayout>                <IfLastModified age="${lastModified}"/>
                        </IfAny>
            <Policies>        </IfFileName>
        <SizeBasedTriggeringPolicy size="${maxFileSize}"/        </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>

        <RollingFile name="AccessRollingFile"
                     fileName="${baseDir}/access.log"
                     filePattern="${baseDir}/access/access_${dateSuffix}.log">
            <PatternLayout pattern="%m%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
            </Policies>
            <DefaultRolloverStrategy max="${maxCount}">
                <Delete basePath="${baseDir}" maxDepth="3">
                    <IfFileName glob="log*/access_ep-*.txt.gzlog">
                        <IfAny>
                            <IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
                            <IfLastModified age="${lastModified}"/>
                        </IfAny>
                    </IfFileName>
                </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>

        <RollingFile name="AuthRollingFile"
                     fileName="${baseDir}/auth.log"
                     filePattern="${baseDir}/auth/auth_${dateSuffix}.log">
            <PatternLayout pattern="%d{ISO8601} %m%n"/>
         <IfAny>   <Policies>
                <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
      <IfAccumulatedFileCount exceeds      </Policies>
            <DefaultRolloverStrategy max="${maxCount}">
                <Delete basePath="${baseDir}" maxDepth="3">
                    <IfFileName glob="*/auth_*.log">
                        <IfAny>
                            <IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
                            <IfLastModified age="${lastModified}"/>
                        </IfAny>
                    </IfFileName>
                </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>

    </appenders>    <Gelf name="Gelf" host="${gelfHost}" port="${gelfPort}" version="1.1" facility="eltex-portal"
              extractStackTrace="true" originHost="%host{fqdn}" maximumMessageSize="8192" >
            <Field name="thread" pattern="%t"/>
            <Field name="level" pattern="%level"/>
            <Field name="severity" pattern="%-5level"/>
            <Field name="logger" pattern="%logger{12}"/>
            <Field name="location" pattern="%C{1}.%M(line:%L)"/>
        </Gelf>

    </Appenders>

    <Loggers>
        <Root>
<Root level="${rootLevel}">
            <AppenderRef ref="RollingFile"/>
            <AppenderRef ref="STDERR" level="WARNINGOFF"/>
            <AppenderRef ref="Gelf" level="${gelfLevel}"/>
        </Root>

        <Logger name="AccessLogger" additivity="false">
            <AppenderRef ref="AccessRollingFile"/>

            <!--"custom" for custom format with BRAS parameters and AP headers-->
            <!--"default" for NCSA format-->
            <Property name="format">default</Property>

            <!--Customizable parts of the access log-->
            <Property name="cookies">true</Property>
            <Property name="headers">true</Property>
            <Property name="bras">true</Property>
        </Logger>

        <Logger name="AuthLogger" additivity="false" level="INFO">
            <AppenderRef ref="AuthRollingFile"/>
            <AppenderRef ref="Gelf" level="${gelfLevel}"/>
        </Logger>

        <Logger name="org.springframework" level="INFOERROR"/>
        <Logger name="netorg.sfeclipse.ehcachejetty"   level="ERROR"/>
        <Logger name="org.apache.tomcat"   level="ERROR"/>
        <Logger<logger name="orgio.eclipsegrpc.jettynetty"       level="INFOERROR"/>
        <Logger name="io.netty"            level="ERROR"/>

        <!--SQL logging-->
        <Logger name="org.jooq.tools.LoggerListener" level="OFF"/>

        <Logger name="jndi"       level="OFF"/>
        <Logger name="org.quartz" level="OFF"/>
        <Logger name="com.zaxxer" level="OFF"/>
        <Logger name="org.apache" level="OFF"/>

    </Loggers>

</configuration>Configuration>




ПараметрОписание
monitorInterval
Интервал автоматического перечитывания конфигурации логгера.
maxFileSize
Максимально допустимый размер файла. При его превышении создается новый файл. а старый архивируется
accumulatedFileSize
Суммарный размер логов (текущий файл + архивные). При его превышении наиболее старые файлы будут удаляться.
lastModified
Срок хранения логов, файлы модифицированные раннее этого срока будут удаляться.
maxCount
Максимальное количество архивных файлов, при его превышении наиболее старые файлы будут перезаписываться.
baseDir
Базовая директория хранения логов.


<AppenderRef ref="RollingFile" level="ERROR"/>
минимальный порог записи для всех логеров

...