Добавлено редактирование сервера, правил. ДОбавлена проверка на наличие утилиты rac при запуске
This commit is contained in:
parent
59d808f5a1
commit
aa357b45c3
|
@ -337,10 +337,10 @@ profile Режим управления профилями безопас
|
|||
Команды:
|
||||
|
||||
info
|
||||
получение информации о менеджере
|
||||
получение информации о менеджере
|
||||
|
||||
--manager=<uuid>
|
||||
(обязательный) идентификатор менеджера кластера серверов
|
||||
--manager=<uuid>
|
||||
(обязательный) идентификатор менеджера кластера серверов
|
||||
|
||||
list
|
||||
получение списка информации о менеджерах
|
||||
|
@ -378,76 +378,76 @@ server
|
|||
имя администратора кластера
|
||||
|
||||
--cluster-pwd=<pwd>
|
||||
пароль администратора кластера
|
||||
пароль администратора кластера
|
||||
|
||||
Команды:
|
||||
Команды:
|
||||
|
||||
info
|
||||
получение информации о рабочем сервере
|
||||
получение информации о рабочем сервере
|
||||
|
||||
--server=<uuid>
|
||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||
--server=<uuid>
|
||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||
|
||||
list
|
||||
получение списка информации о рабочих серверах
|
||||
получение списка информации о рабочих серверах
|
||||
|
||||
insert
|
||||
регистрация рабочего сервера
|
||||
регистрация рабочего сервера
|
||||
|
||||
--agent-host=<host>
|
||||
(обязательный) имя хоста или IP-адрес агента сервера
|
||||
--agent-host=<host>
|
||||
(обязательный) имя хоста или IP-адрес агента сервера
|
||||
|
||||
--agent-port=<port>
|
||||
(обязательный) основной порт агента сервера
|
||||
--agent-port=<port>
|
||||
(обязательный) основной порт агента сервера
|
||||
|
||||
--port-range=<min>:<max>
|
||||
(обязательный) диапазон IP портов для динамического распределения,
|
||||
возможно указание нескольких диапазонов
|
||||
--port-range=<min>:<max>
|
||||
(обязательный) диапазон IP портов для динамического распределения,
|
||||
возможно указание нескольких диапазонов
|
||||
|
||||
--name=<name>
|
||||
наименование рабочего сервера
|
||||
--name=<name>
|
||||
наименование рабочего сервера
|
||||
|
||||
--using=main|normal
|
||||
вариант использования рабочего сервера
|
||||
main - в качестве центрального сервера
|
||||
normal - в качестве обычного сервера
|
||||
--using=main|normal
|
||||
вариант использования рабочего сервера
|
||||
main - в качестве центрального сервера
|
||||
normal - в качестве обычного сервера
|
||||
|
||||
--infobases-limit=<count>
|
||||
максимальное количество информационных баз на рабочий процесс
|
||||
--infobases-limit=<count>
|
||||
максимальное количество информационных баз на рабочий процесс
|
||||
|
||||
--memory-limit=<Kb>
|
||||
предел использования памяти рабочими процессами
|
||||
--memory-limit=<Kb>
|
||||
предел использования памяти рабочими процессами
|
||||
|
||||
--connections-limit=<count>
|
||||
максимальное количество соединения на рабочий процесс
|
||||
--connections-limit=<count>
|
||||
максимальное количество соединения на рабочий процесс
|
||||
|
||||
--cluster-port=<port>
|
||||
номер порта главного менеджера кластера
|
||||
--cluster-port=<port>
|
||||
номер порта главного менеджера кластера
|
||||
|
||||
--dedicate-managers=all|none
|
||||
вариант размещения менеджеров сервисов
|
||||
all - размещать все сервисы в отдельных менеджерах
|
||||
none - размещать все сервисы в одном менеджере
|
||||
--dedicate-managers=all|none
|
||||
вариант размещения менеджеров сервисов
|
||||
all - размещать все сервисы в отдельных менеджерах
|
||||
none - размещать все сервисы в одном менеджере
|
||||
|
||||
--safe-working-processes-memory-limit=<bytes>
|
||||
максимальный объем памяти рабочих процессов на сервере
|
||||
--safe-working-processes-memory-limit=<bytes>
|
||||
максимальный объем памяти рабочих процессов на сервере
|
||||
|
||||
--safe-call-memory-limit=<bytes>
|
||||
безопасный расход памяти за один вызов в байтах
|
||||
--safe-call-memory-limit=<bytes>
|
||||
безопасный расход памяти за один вызов в байтах
|
||||
|
||||
update
|
||||
изменение параметров рабочего сервера
|
||||
изменение параметров рабочего сервера
|
||||
|
||||
--server=<uuid>
|
||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||
--server=<uuid>
|
||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||
|
||||
--port-range=<min>:<max>
|
||||
диапазон IP портов для динамического распределения,
|
||||
возможно указание нескольких диапазонов
|
||||
--port-range=<min>:<max>
|
||||
диапазон IP портов для динамического распределения,
|
||||
возможно указание нескольких диапазонов
|
||||
|
||||
--using=main|normal
|
||||
вариант использования рабочего сервера
|
||||
main - в качестве центрального сервера
|
||||
main - в качестве центрального сервера
|
||||
normal - в качестве обычного сервера
|
||||
|
||||
--infobases-limit=<count>
|
||||
|
@ -464,10 +464,10 @@ server
|
|||
all - размещать все сервисы в отдельных менеджерах
|
||||
none - размещать все сервисы в одном менеджере
|
||||
|
||||
--safe-working-processes-memory-limit=<bytes>
|
||||
--safe-working-processes-memory-limit=<bytes>
|
||||
максимальный объем памяти рабочих процессов на сервере
|
||||
|
||||
--safe-call-memory-limit=<bytes>
|
||||
--safe-call-memory-limit=<bytes>
|
||||
безопасный расход памяти за один вызов в байтах
|
||||
|
||||
remove
|
||||
|
@ -1010,7 +1010,7 @@ profile Режим управления профилями безопас
|
|||
|
||||
Использование:
|
||||
|
||||
rac rule [command] [options] [arguments]
|
||||
rac rule [command] [options] [arguments]
|
||||
|
||||
Общие параметры:
|
||||
|
||||
|
@ -1035,8 +1035,8 @@ profile Режим управления профилями безопас
|
|||
--cluster=<uuid>
|
||||
(обязательный) идентификатор кластера серверов
|
||||
|
||||
--cluster-user=<name>
|
||||
имя администратора кластера
|
||||
--cluster-user=<name>
|
||||
имя администратора кластера
|
||||
|
||||
--cluster-pwd=<pwd>
|
||||
пароль администратора кластера
|
||||
|
@ -1072,19 +1072,15 @@ profile Режим управления профилями безопас
|
|||
|
||||
--server=<uuid>
|
||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||
|
||||
--position=<num>
|
||||
--position=<num>
|
||||
(обязательный) позиция в списке требований (начиная с 0)
|
||||
|
||||
--object-type=<id>
|
||||
--object-type=<id>
|
||||
идентификатор объекта требования
|
||||
|
||||
--infobase-name=<name>
|
||||
--infobase-name=<name>
|
||||
наименование информационной базы,
|
||||
если параметр не указан - требование распространяется на все
|
||||
информационные базы
|
||||
|
||||
--rule-type=auto|always|never
|
||||
--rule-type=auto|always|never
|
||||
тип правила распределения:
|
||||
auto - отсутствие правила (по-умолчанию)
|
||||
always - распределять только на данный сервер
|
||||
|
@ -1437,3 +1433,4 @@ profile Режим управления профилями безопас
|
|||
|
||||
|
||||
|
||||
|
||||
|
|
362
lib/function.tcl
362
lib/function.tcl
|
@ -352,21 +352,6 @@ proc InsertWorkServerItems {tree id} {
|
|||
}
|
||||
}
|
||||
|
||||
proc DebugInfo {widget f} {
|
||||
if {[eof $f]} {
|
||||
catch [close $f] msg
|
||||
if {$msg != ""} {
|
||||
puts $msg
|
||||
} else {
|
||||
puts $msg
|
||||
}
|
||||
}
|
||||
while {[gets $f line]>=0} {
|
||||
puts "$line"
|
||||
$widget insert {} end -text "$line" -values "$line"
|
||||
}
|
||||
}
|
||||
|
||||
proc Del {} {
|
||||
global active_cluster host
|
||||
set tree .frm_tree.tree
|
||||
|
@ -540,6 +525,9 @@ proc Del::rule {tree host values} {
|
|||
}
|
||||
incr i
|
||||
}
|
||||
if {[info exists rule_id] == 0 || $rule_id eq ""} {
|
||||
return
|
||||
}
|
||||
|
||||
set answer [tk_messageBox -message "Удалить требование $rule_id?" \
|
||||
-icon question -type yesno ]
|
||||
|
@ -640,91 +628,92 @@ proc Add::server {} {
|
|||
return $frm
|
||||
}
|
||||
proc Add::servers {tree host values} {
|
||||
global default dedicate_manager using_central_server
|
||||
global default dedicate_managers using
|
||||
set dedicate_manager "none"
|
||||
set using_central_server "normal"
|
||||
#set active_cluster $values
|
||||
set frm [AddToplevel "Добавление рабочего сервера" server_grey_64]
|
||||
|
||||
label $frm.lbl_server_desc -text "Описание сервера"
|
||||
entry $frm.ent_server_desc
|
||||
label $frm.lbl_host -text "Адрес сервера"
|
||||
entry $frm.ent_host
|
||||
label $frm.lbl_port -text "Порт"
|
||||
entry $frm.ent_port
|
||||
$frm.ent_port insert end $default(port)
|
||||
label $frm.lbl_ports_range -text "Диапазон портов"
|
||||
entry $frm.ent_ports_range
|
||||
$frm.ent_ports_range insert end $default(ports_range)
|
||||
label $frm.lbl_ram_max -text "Максимальный объём памяти раб. процессов"
|
||||
entry $frm.ent_ram_max
|
||||
$frm.ent_ram_max insert end $default(ram_max)
|
||||
label $frm.lbl_ram_sec -text "Безопасный расход памяти за вызов"
|
||||
entry $frm.ent_ram_sec
|
||||
$frm.ent_ram_sec insert end $default(ram_sec)
|
||||
label $frm.lbl_ram_work -text "Объём памяти рабочих процессов"
|
||||
entry $frm.ent_ram_work
|
||||
$frm.ent_ram_work insert end $default(ram_work)
|
||||
label $frm.lbl_base_on_process -text "Количество ИБ на процесс"
|
||||
entry $frm.ent_base_on_process
|
||||
$frm.ent_base_on_process insert end $default(base_on_process)
|
||||
label $frm.lbl_connection_on_process -text "Количество соединений на процесс"
|
||||
entry $frm.ent_connection_on_process
|
||||
$frm.ent_connection_on_process insert end $default(connection_on_process)
|
||||
label $frm.lbl_manager_port -text "Порт главного менеджера кластера"
|
||||
entry $frm.ent_manager_port
|
||||
$frm.ent_manager_port insert end $default(port)
|
||||
label $frm.lbl_manager_each_service -text "Менеджер под каждый сервис"
|
||||
checkbutton $frm.ent_manager_each_service -variable dedicate_manager -onvalue all -offvalue none
|
||||
label $frm.lbl_central_server -text "Центральный сервер"
|
||||
checkbutton $frm.ent_central_server -variable using_central_server -onvalue main -offvalue normal
|
||||
label $frm.lbl_name -text "Описание сервера"
|
||||
entry $frm.ent_name
|
||||
label $frm.lbl_agent_host -text "Адрес сервера"
|
||||
entry $frm.ent_agent_host
|
||||
label $frm.lbl_agent_port -text "Порт"
|
||||
entry $frm.ent_agent_port
|
||||
$frm.ent_agent_port insert end $default(port)
|
||||
label $frm.lbl_port_range -text "Диапазон портов"
|
||||
entry $frm.ent_port_range
|
||||
$frm.ent_port_range insert end $default(port_range)
|
||||
label $frm.lbl_safe_working_processes_memory_limit -text "Максимальный объём памяти раб. процессов"
|
||||
entry $frm.ent_safe_working_processes_memory_limit
|
||||
$frm.ent_safe_working_processes_memory_limit insert end $default(safe_working_processes_memory_limit)
|
||||
label $frm.lbl_safe_call_memory_limit -text "Безопасный расход памяти за вызов"
|
||||
entry $frm.ent_safe_call_memory_limit
|
||||
$frm.ent_safe_call_memory_limit insert end $default(safe_call_memory_limit)
|
||||
label $frm.lbl_memory_limit -text "Объём памяти рабочих процессов"
|
||||
entry $frm.ent_memory_limit
|
||||
$frm.ent_memory_limit insert end $default(ram_work)
|
||||
label $frm.lbl_infobases_limit -text "Количество ИБ на процесс"
|
||||
entry $frm.ent_infobases_limit
|
||||
$frm.ent_infobases_limit insert end $default(infobases_limit)
|
||||
label $frm.lbl_connections_limit -text "Количество соединений на процесс"
|
||||
entry $frm.ent_connections_limit
|
||||
$frm.ent_connections_limit insert end $default(connections_limit)
|
||||
label $frm.lbl_cluster_port -text "Порт главного менеджера кластера"
|
||||
entry $frm.ent_cluster_port
|
||||
$frm.ent_cluster_port insert end $default(port)
|
||||
label $frm.lbl_dedicate_managers -text "Менеджер под каждый сервис"
|
||||
checkbutton $frm.check_dedicate_managers -variable dedicate_managers -onvalue all -offvalue none
|
||||
label $frm.lbl_using -text "Центральный сервер"
|
||||
checkbutton $frm.check_using -variable using -onvalue main -offvalue normal
|
||||
|
||||
grid $frm.lbl_server_desc -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_server_desc -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_host -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_host -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_port -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_port -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_ports_range -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_ports_range -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_ram_max -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_ram_max -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_ram_sec -row 5 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_ram_sec -row 5 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_ram_work -row 6 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_ram_work -row 6 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_base_on_process -row 7 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_base_on_process -row 7 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_connection_on_process -row 8 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_connection_on_process -row 8 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_manager_port -row 9 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_manager_port -row 9 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_manager_each_service -row 10 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_manager_each_service -row 10 -column 1 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.lbl_central_server -row 11 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_central_server -row 11 -column 1 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.lbl_name -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_name -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_agent_host -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_agent_host -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_agent_port -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_agent_port -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_port_range -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_port_range -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_safe_working_processes_memory_limit -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_safe_working_processes_memory_limit -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_safe_call_memory_limit -row 5 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_safe_call_memory_limit -row 5 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_memory_limit -row 6 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_memory_limit -row 6 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_infobases_limit -row 7 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_infobases_limit -row 7 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_connections_limit -row 8 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_connections_limit -row 8 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_cluster_port -row 9 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_cluster_port -row 9 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_dedicate_managers -row 10 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.check_dedicate_managers -row 10 -column 1 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.lbl_using -row 11 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.check_using -row 11 -column 1 -sticky nw -padx 5 -pady 5
|
||||
|
||||
.add.frm_btn.btn_ok configure -command {
|
||||
RunCommand "" "server insert \
|
||||
--agent-host=[.add.frm.ent_host get] \
|
||||
--agent-port=[.add.frm.ent_port get] \
|
||||
--port-range=[.add.frm.ent_ports_range get] \
|
||||
--name=[.add.frm.ent_server_desc get] \
|
||||
--using=$using_central_server \
|
||||
--infobases-limit=[.add.frm.ent_base_on_process get] \
|
||||
--memory-limit=[.add.frm.ent_ram_work get] \
|
||||
--connections-limit=[.add.frm.ent_connection_on_process get] \
|
||||
--cluster-port=[.add.frm.ent_manager_port get] \
|
||||
--agent-host=[.add.frm.ent_agent_host get] \
|
||||
--agent-port=[.add.frm.ent_agent_port get] \
|
||||
--port-range=[.add.frm.ent_port_range get] \
|
||||
--name=[.add.frm.ent_name get] \
|
||||
--using=$using \
|
||||
--infobases-limit=[.add.frm.ent_infobases_limit get] \
|
||||
--memory-limit=[.add.frm.ent_memory_limit get] \
|
||||
--connections-limit=[.add.frm.ent_connections_limit get] \
|
||||
--cluster-port=[.add.frm.ent_cluster_port get] \
|
||||
--dedicate-managers=$dedicate_manager \
|
||||
--safe-working-processes-memory-limit=[.add.frm.ent_ram_max get] \
|
||||
--safe-call-memory-limit=[.add.frm.ent_ram_sec get] \
|
||||
--safe-working-processes-memory-limit=[.add.frm.ent_safe_working_processes_memory_limit get] \
|
||||
--safe-call-memory-limit=[.add.frm.ent_safe_call_memory_limit get] \
|
||||
--cluster=$active_cluster $host"
|
||||
Run::servers $tree $host $active_cluster
|
||||
destroy .add
|
||||
}
|
||||
return $frm
|
||||
}
|
||||
proc Add::work_server {tree host values} {
|
||||
Add::servers $tree $host $values
|
||||
return [Add::servers $tree $host $values]
|
||||
}
|
||||
proc Add::infobase {tree host values} {
|
||||
Add::infobases $tree $host $values
|
||||
|
@ -923,37 +912,39 @@ proc Add::cluster {tree host values} {
|
|||
}
|
||||
|
||||
proc Add::rule {tree host values} {
|
||||
global default active_cluster object infobase type server
|
||||
global default active_cluster object infobase object_type server infobase_name rule_type
|
||||
set server $values
|
||||
|
||||
set frm [AddToplevel "Требование назначения функциональности" functional_grey_64]
|
||||
|
||||
set type [lindex $default(type) 0]
|
||||
#set type [lindex $default(obtype) 0]
|
||||
|
||||
label $frm.lbl_object -text "Объект требования"
|
||||
set combo_object [ttk::combobox $frm.cb_object \
|
||||
-textvariable object -values $default(object)]
|
||||
label $frm.lbl_type -text "Тип требования"
|
||||
set combo_type [ttk::combobox $frm.cb_type \
|
||||
-textvariable type -values $default(type)]
|
||||
label $frm.lbl_infobase -text "Имя ИБ"
|
||||
set combo_infobase [ttk::combobox $frm.cb_infobase \
|
||||
-textvariable infobase -values [GetInfobases $active_cluster $host]]
|
||||
label $frm.lbl_object_type -text "Объект требования"
|
||||
ttk::combobox $frm.cb_object_type -textvariable object_type \
|
||||
-values $default(object_type)]
|
||||
|
||||
label $frm.lbl_par -text "Значение доп. параметра"
|
||||
entry $frm.ent_par
|
||||
label $frm.lbl_rule_type -text "Тип требования"
|
||||
ttk::combobox $frm.cb_rule_type -textvariable rule_type \
|
||||
-values $default(rule_type)]
|
||||
|
||||
label $frm.lbl_infobase_name -text "Имя ИБ"
|
||||
ttk::combobox $frm.cb_infobase_name -textvariable infobase_name \
|
||||
-values [GetInfobases $active_cluster $host]]
|
||||
|
||||
label $frm.lbl_application_ext -text "Значение доп. параметра"
|
||||
entry $frm.ent_application_ext
|
||||
label $frm.lbl_priority -text "Приоритет"
|
||||
entry $frm.ent_priority
|
||||
$frm.ent_priority insert end $default(priority)
|
||||
|
||||
grid $frm.lbl_object -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_object -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_type -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_type -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_infobase -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_infobase -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_par -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_par -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_object_type -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_object_type -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_rule_type -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_rule_type -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_infobase_name -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.cb_infobase_name -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_application_ext -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_application_ext -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
grid $frm.lbl_priority -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
||||
grid $frm.ent_priority -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
||||
|
||||
|
@ -962,14 +953,15 @@ proc Add::rule {tree host values} {
|
|||
--cluster=$active_cluster \
|
||||
--server=$server \
|
||||
--position=0 \
|
||||
--object-type=$object \
|
||||
--infobase-name=$infobase \
|
||||
--rule-type=$type \
|
||||
--application-ext=[.add.frm.ent_par get] \
|
||||
--object-type=$object_type \
|
||||
--infobase-name=$infobase_name \
|
||||
--rule-type=$rule_type \
|
||||
--application-ext=[.add.frm.ent_application_ext get] \
|
||||
--priority=[.add.frm.ent_priority get] $host"
|
||||
Run::rule $tree $host $server
|
||||
destroy .add
|
||||
}
|
||||
return $frm
|
||||
}
|
||||
|
||||
proc GetInfobases {cluster host} {
|
||||
|
@ -1035,7 +1027,7 @@ proc Edit::server {tree host value} {
|
|||
close $file
|
||||
close $orig_file
|
||||
#return "$host:$port"
|
||||
file delete [file join $dir(work) 1c_srv.cfg.bak]
|
||||
file delete [file join $dir(work) rac_gui .cfg.bak]
|
||||
destroy .add
|
||||
return $host
|
||||
}
|
||||
|
@ -1092,8 +1084,28 @@ proc Edit::cluster {tree host values} {
|
|||
destroy .add
|
||||
}
|
||||
}
|
||||
proc Edit::infobases {tree host values} {
|
||||
set work_tree_id [.frm_work.tree_work selection]
|
||||
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||
set id [.frm_tree.tree selection]
|
||||
#set values [.frm_tree.tree item $id -values]
|
||||
set key [lindex [split $id "::"] 0]
|
||||
set column_list [.frm_work.tree_work cget -columns]
|
||||
set i 0
|
||||
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||
foreach l $column_list {
|
||||
if {$l eq "infobase" } {
|
||||
set infobase [lindex $work_tree_values $i]
|
||||
}
|
||||
incr i
|
||||
}
|
||||
if {[info exists infobase] == 0 || $infobase eq ""} {
|
||||
return
|
||||
}
|
||||
Edit::infobase $tree $host $infobase
|
||||
}
|
||||
proc Edit::infobase {tree host values} {
|
||||
global default active_cluster infobase
|
||||
global default active_cluster infobase
|
||||
global security_level dbms scheduled_jobs_deny license_distribution date_offset
|
||||
global sessions_deny
|
||||
set infobase $values
|
||||
|
@ -1174,6 +1186,8 @@ proc Edit::infobase {tree host values} {
|
|||
set $entry_name no
|
||||
} elseif {$value eq "1"} {
|
||||
set $entry_name yes
|
||||
} else {
|
||||
set $entry_name $value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1207,3 +1221,129 @@ proc Edit::infobase {tree host values} {
|
|||
destroy .add
|
||||
}
|
||||
}
|
||||
proc Edit::servers {tree host values} {
|
||||
set work_tree_id [.frm_work.tree_work selection]
|
||||
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||
set id [.frm_tree.tree selection]
|
||||
#set values [.frm_tree.tree item $id -values]
|
||||
set key [lindex [split $id "::"] 0]
|
||||
set column_list [.frm_work.tree_work cget -columns]
|
||||
set i 0
|
||||
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||
foreach l $column_list {
|
||||
if {$l eq "server" } {
|
||||
set work_server [lindex $work_tree_values $i]
|
||||
}
|
||||
incr i
|
||||
}
|
||||
if {[info exists work_server] == 0 || $work_server eq ""} {
|
||||
return
|
||||
}
|
||||
Edit::work_server $tree $host $work_server
|
||||
}
|
||||
|
||||
proc Edit::work_server {tree host values} {
|
||||
global default active_cluster
|
||||
global default dedicate_managers using
|
||||
set server $values
|
||||
set frm [Add::work_server $tree $host $values]
|
||||
$frm configure -text "Редактирование рабочего сервера"
|
||||
|
||||
set lst [RunCommand cluster::$values "server info --cluster=$active_cluster --server=$server $host"]
|
||||
foreach i [lindex $lst 0] {
|
||||
if [regexp -nocase -all -- {(\D+)(\s*?|)(:)(\s*?|)(.*)} $i match param v2 v3 v4 value] {
|
||||
regsub -all -- "-" [string trim $param] "_" entry_name
|
||||
if [winfo exists .add.frm.ent_$entry_name] {
|
||||
.add.frm.ent_$entry_name delete 0 end
|
||||
.add.frm.ent_$entry_name insert end [string trim $value "\""]
|
||||
}
|
||||
if [winfo exists .add.frm.cb_$entry_name] {
|
||||
set $entry_name [string trim $value "\""]
|
||||
}
|
||||
if [winfo exists .add.frm.check_$entry_name] {
|
||||
set $entry_name $value
|
||||
}
|
||||
}
|
||||
}
|
||||
.add.frm.lbl_agent_port configure -state disable
|
||||
.add.frm.ent_agent_port configure -state disable
|
||||
.add.frm.lbl_port_range configure -state disable
|
||||
.add.frm.ent_port_range configure -state disable
|
||||
.add.frm.lbl_name configure -state disable
|
||||
.add.frm.ent_name configure -state disable
|
||||
.add.frm.lbl_cluster_port configure -state disable
|
||||
.add.frm.ent_cluster_port configure -state disable
|
||||
|
||||
.add.frm_btn.btn_ok configure -command {
|
||||
RunCommand "" "server update \
|
||||
--server=$server \
|
||||
--using=$using \
|
||||
--infobases-limit=[.add.frm.ent_infobases_limit get] \
|
||||
--memory-limit=[.add.frm.ent_memory_limit get] \
|
||||
--connections-limit=[.add.frm.ent_connections_limit get] \
|
||||
--dedicate-managers=$dedicate_managers \
|
||||
--safe-working-processes-memory-limit=[.add.frm.ent_safe_working_processes_memory_limit get] \
|
||||
--safe-call-memory-limit=[.add.frm.ent_safe_call_memory_limit get] \
|
||||
--cluster=$active_cluster $host"
|
||||
Run::servers $tree $host $active_cluster
|
||||
destroy .add
|
||||
}
|
||||
}
|
||||
proc Edit::rule {tree host values} {
|
||||
global default active_cluster object_type infobase_name object_type server infobase_name rule_type rule
|
||||
set work_tree_id [.frm_work.tree_work selection]
|
||||
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||
set id [.frm_tree.tree selection]
|
||||
#set values [.frm_tree.tree item $id -values]
|
||||
set key [lindex [split $id "::"] 0]
|
||||
set column_list [.frm_work.tree_work cget -columns]
|
||||
set i 0
|
||||
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||
foreach l $column_list {
|
||||
if {$l eq "rule" } {
|
||||
set rule [lindex $work_tree_values $i]
|
||||
}
|
||||
incr i
|
||||
}
|
||||
if {[info exists rule] == 0 || $rule eq ""} {
|
||||
return
|
||||
}
|
||||
|
||||
set frm [Add::rule $tree $host $server]
|
||||
$frm configure -text "Редактирование требования назначения функциональности"
|
||||
|
||||
puts "cluster = $active_cluster\nserver=$server\nrule=$rule"
|
||||
|
||||
set lst [RunCommand "" "rule info --cluster=$active_cluster --server=$server --rule=$rule $host"]
|
||||
|
||||
foreach i [lindex $lst 0] {
|
||||
if [regexp -nocase -all -- {(\D+)(\s*?|)(:)(\s*?|)(.*)} $i match param v2 v3 v4 value] {
|
||||
regsub -all -- "-" [string trim $param] "_" entry_name
|
||||
if [winfo exists .add.frm.ent_$entry_name] {
|
||||
.add.frm.ent_$entry_name delete 0 end
|
||||
.add.frm.ent_$entry_name insert end [string trim $value "\""]
|
||||
}
|
||||
if [winfo exists .add.frm.cb_$entry_name] {
|
||||
set $entry_name [string trim $value "\""]
|
||||
}
|
||||
if [winfo exists .add.frm.check_$entry_name] {
|
||||
set $entry_name $value
|
||||
}
|
||||
}
|
||||
}
|
||||
.add.frm_btn.btn_ok configure -command {
|
||||
RunCommand "" "rule update \
|
||||
--cluster=$active_cluster \
|
||||
--server=$server \
|
||||
--rule=$rule \
|
||||
--position=0 \
|
||||
--object-type=$object_type \
|
||||
--infobase-name=$infobase_name \
|
||||
--rule-type=$rule_type \
|
||||
--application-ext=[.add.frm.ent_application_ext get] \
|
||||
--priority=[.add.frm.ent_priority get] $host"
|
||||
Run::rule $tree $host $server
|
||||
destroy .add
|
||||
}
|
||||
}
|
||||
|
||||
|
|
17
rac_gui.cfg
17
rac_gui.cfg
|
@ -16,15 +16,15 @@ set default(locale) "ru"
|
|||
# Порт RAS
|
||||
set default(port) 1540
|
||||
# Диапазон портов
|
||||
set default(ports_range) 1560:1591
|
||||
set default(port_range) 1560:1591
|
||||
# Количество инф. баз на процесс
|
||||
set default(base_on_process) 8
|
||||
set default(infobases_limit) 8
|
||||
# Количество соединений на процесс
|
||||
set default(connection_on_process) 128
|
||||
set default(connections_limit) 128
|
||||
# Максимальный объём памяти раб. процессов
|
||||
set default(ram_max) 0
|
||||
set default(safe_working_processes_memory_limit) 0
|
||||
# Безопасный расход памяти за вызов
|
||||
set default(ram_sec) 0
|
||||
set default(safe_call_memory_limit) 0
|
||||
# Объём памяти рабочих процессов, до которого сервер считается производительным
|
||||
set default(ram_work) 0
|
||||
set default(dbms) {
|
||||
|
@ -40,7 +40,7 @@ set default(dbms) {
|
|||
set default(secure_level) [list 0 1 2]
|
||||
set default(date_offset) [list 0 2000]
|
||||
# Объект требования
|
||||
set default(object) {
|
||||
set default(object_type) {
|
||||
LicenseService
|
||||
EventLogService
|
||||
OpenID2ProviderContextService
|
||||
|
@ -69,7 +69,7 @@ set default(object) {
|
|||
# auto - отсутствие правила (по-умолчанию)
|
||||
# always - распределять только на данный сервер
|
||||
# never - не распределять на данный сервер
|
||||
set default(type) {
|
||||
set default(rule_type) {
|
||||
auto
|
||||
always
|
||||
never
|
||||
|
@ -107,6 +107,3 @@ set default(load_balancing_mode) {
|
|||
# цвета строк в таблице
|
||||
set color(dark_table_bg) "#e2e2e2"
|
||||
set color(light_table_bg) "#ffffff"
|
||||
|
||||
|
||||
|
||||
|
|
29
rac_gui.tcl
29
rac_gui.tcl
|
@ -9,14 +9,14 @@ exec wish "$0" -- "$@"
|
|||
# Home page: https://bitbucket.org/svk28/rac-gui
|
||||
######################################################
|
||||
|
||||
#source [file join [pwd] 1c_srv.cfg]
|
||||
|
||||
set dir(root) [pwd]
|
||||
|
||||
set dir(work) [file join $env(HOME) .rac_gui]
|
||||
if {[file exists $dir(work)] == 0 } {
|
||||
file mkdir $dir(work)
|
||||
}
|
||||
set dir(msg) "[file join $dir(root) msgs]"
|
||||
set dir(lib) "[file join $dir(root) lib]"
|
||||
|
||||
if {[file exists [file join $dir(work) rac_gui.cfg]] ==0} {
|
||||
file copy [file join [pwd] rac_gui.cfg] [file join $dir(work) rac_gui.cfg]
|
||||
|
@ -24,6 +24,27 @@ if {[file exists [file join $dir(work) rac_gui.cfg]] ==0} {
|
|||
|
||||
source [file join $dir(work) rac_gui.cfg]
|
||||
|
||||
if {[file exists $rac_cmd] == 0} {
|
||||
set rac_cmd [tk_getOpenFile -initialdir $env(HOME) -parent . -title "Укажите путь до rac" -initialfile rac]
|
||||
file copy [file join $dir(work) rac_gui.cfg] [file join $dir(work) rac_gui.cfg.bak]
|
||||
set orig_file [open [file join $dir(work) rac_gui.cfg.bak] "r"]
|
||||
set file [open [file join $dir(work) rac_gui.cfg] "w"]
|
||||
while {[gets $orig_file line] >=0 } {
|
||||
if {[string match "set rac_cmd*" $line]} {
|
||||
puts $file "set rac_cmd $rac_cmd"
|
||||
} else {
|
||||
puts $file $line
|
||||
}
|
||||
}
|
||||
close $file
|
||||
close $orig_file
|
||||
#return "$host:$port"
|
||||
file delete [file join $dir(work) 1c_srv.cfg.bak]
|
||||
|
||||
} else {
|
||||
puts "Found $rac_cmd"
|
||||
}
|
||||
|
||||
set dir(msg) "[file join $dir(root) msgs]"
|
||||
set dir(lib) "[file join $dir(root) lib]"
|
||||
|
||||
|
@ -46,8 +67,6 @@ foreach modFile [lsort [glob -nocomplain [file join $dir(lib) *.tcl]]] {
|
|||
}
|
||||
}
|
||||
source [file join $dir(lib) gui.tcl]
|
||||
|
||||
puts "$rac_cmd $dir(lib)"
|
||||
source [file join $dir(work) rac_gui.cfg]
|
||||
|
||||
if [file exists [file join $dir(work) 1c_srv.cfg]] {
|
||||
|
@ -75,5 +94,3 @@ if [file exists [file join $dir(work) 1c_srv.cfg]] {
|
|||
# #option add *Frame.Background $editor(bg) interactive
|
||||
# option add *ScrollableFrame.Background $editor(bg) interactive
|
||||
# option add *ScrolledWindow.Background $editor(bg) interactive
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user