...
Файл содержит параметры запуска сервиса.
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
# Run Tomcat as this user ID. Not setting this or leaving it blank will use the
# default of tomcat7.
TOMCAT7_USER=tomcat7
# Run Tomcat as this group ID. Not setting this or leaving it blank will use
# the default of tomcat7.
TOMCAT7_GROUP=tomcat7
# The home directory of the Java development kit (JDK). You need at least
# JDK version 6. If JAVA_HOME is not set, some common directories for
# OpenJDK, the Oracle JDK, and various Java SE 6+ versions are tried.
#JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk
# You may pass JVM startup parameters to Java here. If unset, the default
# options will be: -Djava.awt.headless=true -Xmx1024m -XX:+UseConcMarkSweepGC
#
# Use "-XX:+UseConcMarkSweepGC" to enable the CMS garbage collector (improved
# response time). If you use that option and you run Tomcat on a machine with
# exactly one CPU chip that contains one or two cores, you should also add
# the "-XX:+CMSIncrementalMode" option.
JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m -XX:+UseConcMarkSweepGC"
# To enable remote debugging uncomment the following line.
# You will then be able to use a java debugger on port 8000.
#JAVA_OPTS="${JAVA_OPTS} -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
# Java compiler to use for translating JavaServer Pages (JSPs). You can use all
# compilers that are accepted by Ant's build.compiler property.
#JSP_COMPILER=javac
# Use the Java security manager? (yes/no, default: no)
#TOMCAT7_SECURITY=no
# Number of days to keep logfiles in /var/log/tomcat7. Default is 14 days.
#LOGFILE_DAYS=14
# Whether to compress logfiles older than today's
#LOGFILE_COMPRESS=1
# Location of the JVM temporary directory
# WARNING: This directory will be destroyed and recreated at every startup !
#JVM_TMP=/tmp/tomcat7-temp
# If you run Tomcat on port numbers that are all higher than 1023, then you
# do not need authbind. It is used for binding Tomcat to lower port numbers.
# (yes/no, default: no)
#AUTHBIND=no
JAVA_OPTS="${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom"
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
|
- Выделение дополнительной оперативной памяти для Java:
...
/etc/eltex-wifi-cab/system.xml
Cодержит Содержит настройки для подключения к другим сервисам.
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="mongoaddress">mongodb://localhost:27017/wifi-customer-cab</entry>
<entry key="nbiaddress">http://localhost:8080/axis2/services/RadiusNbiService?wsdl</entry>
<entry key="nbi.serviceLogin.user">softwlc_service</entry>
<entry key="nbi.serviceLogin.password">softwlc</entry>
<entry key="nbi.serviceLogin.requestTimeout.sec">120</entry>
<!--Bonnie or NBI-->
<entry key="data.service.type">NBI</entry>
<entry key="bonnie.service.host">localhost</entry>
<entry key="bonnie.service.port">9070</entry>
<!-- параметры, применяемые при авторизации через eltex-auth-service -->
<entry key="radius.auth.address">localhost</entry>
<entry key="radius.auth.shareSecret">eltex</entry>
<entry key="radius.auth.authPort">21812</entry>
<entry key="radius.auth.acctPort">21813</entry>
<entry key="radius.auth.timeout.sec">10</entry>
<entry key="radius.auth.retries">5</entry>
<!-- Support link -->
<entry key="support.page.enabled">false</entry>
<entry key="support.page.url">http://eltex-co.ru</entry>
<!-- DPI link -->
<entry key="dpi.page.enabled">false</entry>
<entry key="dpi.page.url">https://filter.wifi.rt.ru/</entry>
<!-- SSO Settings -->
<entry key="sso.enabled">false</entry>
<entry key="sso.redirectUri">http://localhost:8080/wifi-cab/sso</entry>
<entry key="sso.clientSecret"></entry>
<entry key="sso.clientId"></entry>
<!-- SSO Auth -->
<entry key="sso.auth.server.protocol">http</entry>
<entry key="sso.auth.server.address"></entry>
<entry key="sso.auth.server.port">80</entry>
<entry key="sso.auth.auth.path">/auth/realms/b2b/protocol/openid-connect/auth</entry>
<entry key="sso.auth.logout.path">/auth/realms/b2b/protocol/openid-connect/logout</entry>
<!-- SSO REST -->
<entry key="sso.rest.server.protocol">http</entry>
<entry key="sso.rest.server.address"></entry>
<entry key="sso.rest.server.port">80</entry>
<entry key="sso.rest.server.timeout.sec">10</entry>
<entry key="sso.rest.protocol.version">2.0</entry>
<entry key="sso.rest.username"></entry>
<entry key="sso.rest.password"></entry>
<entry key="sso.rest.getToken.path">/apiman-gateway/b2b_test/getToken</entry>
<entry key="sso.rest.getUserInfo.path">/apiman-gateway/b2b_test/getUserInfo</entry>
<entry key="sso.rest.addUser.path">/apiman-gateway/b2b_test/addUser</entry>
<entry key="sso.rest.updateUser.path">/apiman-gateway/b2b_test/updateUser</entry>
<entry key="sso.rest.delUser.path">/apiman-gateway/b2b_test/delUser</entry>
<entry key="sso.rest.addUserParam.path">/apiman-gateway/b2b_test/addUserParam</entry>
<entry key="sso.rest.delUserParam.path">/apiman-gateway/b2b_test/delUserParam</entry>
<entry key="sso.rest.getUserByName.path">/apiman-gateway/b2b_test/getUserByName</entry>
<entry key="sso.rest.resetPassword.path">/apiman-gateway/b2b_test/resetPassword</entry>
<entry key="sso.rest.getUserByParam.path">/apiman-gateway/b2b_test/getUserByParam</entry>
<entry key="sso.rest.getUserByEmail.path">/apiman-gateway/b2b_test/getUserByEmail</entry>
</properties> |
- Подключение к кластеру MongoDB:
...
Содержит настройки логирования.
Блок кода | ||||||
---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="OFF" monitorInterval="600">
<properties>
<property name="maxSize" value="10MB"/>
<property name="maxCount" value="10"/>
<property name="lastModified" value="7d"/>
<property name="accumulatedFileSize" value="100 MB"/>
<property name="logDir" value="/var/log/eltex-wifi-cab"/>
<property name="defaultPattern" value="%d{ISO8601} [%t] %-5p %logger{1} %C{1}.%M(line:%L). %m%n"/>
<property name="dateSuffix" value="%d{yyyyMMdd}"/>
<property name="gelfHost" value="udp:lab3-test.eltex.loc"/>
<property name="gelfPort" value="12201"/>
<property name="gelfLevel" value="OFF"/>
</properties>
<Appenders>
<RollingFile name="default" fileName="${logDir}/default.log"
filePattern="${logDir}/default-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="default-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<RollingFile name="scheduler" fileName="${logDir}/scheduler.log"
filePattern="${logDir}/scheduler-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="scheduler-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<RollingFile name="export" fileName="${logDir}/export.log"
filePattern="${logDir}/export-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="export-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<RollingFile name="i18n-log" fileName="${logDir}/i18n.log"
filePattern="${logDir}/i18n-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="i18n-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<RollingFile name="licence" fileName="${logDir}/licence.log"
filePattern="${logDir}/licence-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="licence-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<RollingFile name="nbi" fileName="${logDir}/nbi.log"
filePattern="${logDir}/nbi-${dateSuffix}-%i.log">
<PatternLayout>
<pattern>${defaultPattern}</pattern>
</PatternLayout>
<!-- Правило по размерам файла (например, нарезать новые через каждые 10Мб) -->
<SizeBasedTriggeringPolicy size="${maxSize}"/>
<!-- Ограничение на кол-во файлов. -->
<DefaultRolloverStrategy max="${maxCount}">
<Delete basePath="${logDir}" maxDepth="1">
<IfFileName glob="nbi-*.log">
<IfAny>
<IfLastModified age="${lastModified}"/>
<IfAccumulatedFileCount exceeds="${maxCount}"/>
<IfAccumulatedFileSize exceeds="${accumulatedFileSize}"/>
</IfAny>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{ISO8601} %-5level %C{1}.%M(line:%L). %m%n"/>
</Console>
<Gelf name="Gelf" host="${gelfHost}" port="${gelfPort}" version="1.1" facility="eltex-wifi-cab"
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{1}"/>
<Field name="location" pattern="%C{1}.%M(line:%L)"/>
</Gelf>
</Appenders>
<Loggers>
<Root level="debug">
<!-- <AppenderRef ref="console"/>-->
<AppenderRef ref="Gelf" level="${gelfLevel}"/>
</Root>
<Logger name="default" level="info">
<AppenderRef ref="default"/>
</Logger>
<Logger name="scheduler" level="info">
<AppenderRef ref="scheduler"/>
</Logger>
<Logger name="export" level="info">
<AppenderRef ref="export"/>
</Logger>
<Logger name="i18n" level="info">
<AppenderRef ref="i18n-log"/>
</Logger>
<Logger name="licence" level="error">
<AppenderRef ref="licence"/>
</Logger>
<Logger name="org.quartz" level="off"/>
<Logger name="org.mongodb.driver" level="info"/>
<Logger name="nbi" level="error" additivity="false">
<AppenderRef ref="nbi"/>
</Logger>
<!-- <Logger name="console" level="error" additivity="false">-->
<!-- <AppenderRef ref="console"/>-->
<!-- </Logger>-->
</Loggers>
</Configuration>
|
- Статус и интервал автоматического перечитывания конфигурации логгера:
...
Для редактирования необходимо выбрать домен в таблице и нажать кнопку «Редактировать», появится соответствующий диалог. При редактировании можно изменить следующие параметры:
- Таймзона;
- Описание;
- Макс. Кол-во пользователей.
...
Section | |||||||
---|---|---|---|---|---|---|---|
|
Редактирование Редактирование записей
При установке флага напротив записи с левой стороны таблицы станет активной кнопка «Редактировать». По нажатию кнопки появится диалог редактирования данных, аналогичный диалогу создания записи с дополнительной информацией по дате создания учетной записи.
Изменить логин пользователя невозможно, поскольку поле «Логин» является идентификатором записи. При необходимости возможно удалить запись и создать заново.
Удаление записей
Для удаления записи установите флаг в требуемой строке и нажмите кнопку «Удалить», таким образом можно удалить сразу несколько записей, отмеченных флагами. Установленный флаг в заголовке таблицы выделит ее целиком.
Невозможно удалить учётную запись «admin» и собственную учётную запись, то есть учетную запись, из под которой удаляющий пользователь совершил вход в систему.
Системные роли
...
Section | |||||||
---|---|---|---|---|---|---|---|
|
...
Section | |||||||
---|---|---|---|---|---|---|---|
|
...
Проверка лицензии
...
Section | |||||||
---|---|---|---|---|---|---|---|
|
...