LinuxForum.Fans
Тема

SAMS2+POSTGRESQL

Автор: marikk 8 сообщений 3561 просмотров
#375867

Всем привет. Поставил sams2 с поддержкой postgresql. Все завелось нормально, таблицы создались данные туда пишутся.
Но лезут вот такаие ошибки

syslog

text
Apr 10 11:57:32 test-gw samsdaemon[3673]: ***ERROR: pgquery.cpp:237 [0x8ece5a0->sendQuery] ERROR:  invalid byte sequence for encoding "UTF8": 0x8c
Apr 10 11:57:32 test-gw samsdaemon[3673]: ***ERROR: pgquery.cpp:237 [0x8ece5a0->sendQuery] ERROR:  invalid byte sequence for encoding "UTF8": 0x8c
Apr 10 11:58:32 test-gw samsdaemon[3673]: ***ERROR: pgquery.cpp:237 [0x8eca950->sendQuery] ERROR:  invalid byte sequence for encoding "UTF8": 0x8c

serverlog (postgresql)

text
STATEMENT:  insert into sysinfo (s_proxy_id, s_name, s_version, s_author, s_info, s_date, s_status) values (0, $1, $2, $3, $4, $5, 0)
ERROR:  invalid byte sequence for encoding "UTF8": 0x8c
STATEMENT:  insert into sysinfo (s_proxy_id, s_name, s_version, s_author, s_info, s_date, s_status) values (0, $1, $2, $3, $4, $5, 0)
ERROR:  invalid byte sequence for encoding "UTF8": 0x8c
STATEMENT:  insert into sysinfo (s_proxy_id, s_name, s_version, s_author, s_info, s_date, s_status) values (0, $1, $2, $3, $4, $5, 0)
ERROR:  invalid byte sequence for encoding "UTF8": 0x8c

Подскажите куда копать ?

#375966

Видать проблема работы с postgresql. На mysql завелось нормально, только sams не конфигурирует squid.

/etc/sams/sams2.conf

text
DB_ENGINE=MySQL                                                                                                                                                        
DB_SERVER=localhost                                                                                                                                                    
SAMS_DB=sams                                                                                                                                                           
ODBC=0                                                                                                                                                                 
PDO=0                                                                                                                                                                  
ODBCSOURCE=sams_mysql                                                                                                                                                  
DB_USER=sams                                                                                                                                                           
DB_PASSWORD=12345                                                                                                                                                      
SQUID=/opt/squid/sbin/squid                                                                                                                                            
SQUIDCONF=/etc/squid/squid.conf                                                                                                                                        
SQUIDCACHEFILE=access.log                                                                                                                                              
SQUIDROOTDIR=/opt/squid                                                                                                                                                
SQUIDLOGDIR=/var/log/squid                                                                                                                                             
SQUIDCACHEDIR=/var/log/squid/cache                                                                                                                                     
SAMSPATH=/opt/sams                                                                                                                                                     
SQUIDPATH=/opt/squid/sbin/                                                                                                                                             
RECODECOMMAND=iconv -f KOI8-R -t 866 %finp > %fout                                                                                                                     
SHUTDOWNCOMMAND=shutdown -h now                                                                                                                                        
CACHENUM=1   


Используйте для выводов из консоли тег CODE, а не QUOTE
verg

#375999

marikk, какая у вас ОС? А то я поставил deb-пакет с офф. сайта, но не работает.

#376001
"Nigelist" написал:
marikk, какая у вас ОС? А то я поставил deb-пакет с офф. сайта, но не работает.

Debian. Ночью все завелось. Собрано все из исходников (deb пакет не завелся). Нужно было протэгировать squid.conf, странно что про ничего не написано в документации к sams

text

# TAG: auth_param
# TAG: acl
# TAG: http_access
# TAG: delay_pools
# TAG: delay_class
#376004

"marikk" написал:
Debian. Ночью все завелось. Собрано все из исходников (deb пакет не завелся). Нужно было протэгировать squid.conf, странно что про ничего не написано в документации к sams
А вы разбивали на пакеты документацию, веб-морду и т.д? Если можно, выложите ваш конфиг.
#376036

Оч интересно, как разделить исходники на демона, веб-интерфейс и доки?

#376103

На скорую руку
Качаем исходинки http://sams.perm.ru/new/index.php?option=com_phocadownload&view=category&id=5:sams-2&Itemid=128

После распаковки

text

# apt-get install mysql-server mysql-client libmysqlclient-dev automake libtool libpcre3-dev 
# make -f Makefile.cvs
# ./configure --prefix=/opt/sams --with-pq-includes=/opt/psql/include --with-pq-libraries=/opt/psql/lib --with-mysql-includes=/usr/include/mysql --with-mysql-libraries=/usr/lib/mysql

В конце смотрим

text

Use MySQL API:      yes
Use PostgreSQL API: yes
Use unixODBC API:   no
Use LDAP API:       no
Using pcre:         pcrecpp
Use dynamic plugin: yes
text
 
# patch -l

Вставить текст

text

--- libtool.old 2012-02-14 17:34:10.363994833 +0400
+++ libtool     2012-02-14 15:55:27.142358890 +0400
@@ -5986,7 +5986,8 @@
        case $dir in
        [\\/]* | [A-Za-z]:[\\/]*) ;;
        *)
-         absdir=`cd "$dir" && pwd`
+#        absdir=`cd "$dir" && pwd`
+         absdir="/usr/lib"
          test -z "$absdir" && \
            func_fatal_error "cannot determine absolute directory name of \`$dir'"
          dir="$absdir"

Нажать два раза Ctrl+D

text

# make
# make install

Все файлы веб морды находятся в /opt/sams/share/sams2, дать доступ к ним.

Конфиг squid. Вероятней всего тэги не все.

text

# TAG: acl

# TAG: http_access

# TAG: delay_pools

# TAG: delay_class

# TAG: delay_access

# TAG: delay_parameters

# TAG: cache_mem

http_port 192.168.5.1:3128 transparent

cache_effective_user squid cache_effective_group squid

access_log daemon:/var/log/squid/access.log squid cache_dir ufs /var/log/squid/cache 100 16 256 cache_log /var/log/squid/cache.log

coredump_dir /var/log/squid

Конфиг sams

text

DB_ENGINE=MySQL
DB_SERVER=localhost
SAMS_DB=sams
ODBC=0
PDO=0
ODBCSOURCE=sams_mysql
DB_USER=sams
DB_PASSWORD=12345
SQUID=/opt/squid/sbin/squid
SQUIDCONF=/etc/squid/squid.conf
SQUIDCACHEFILE=access.log
SQUIDROOTDIR=/opt/squid/etc/   # пусть до конфига squid
SQUIDLOGDIR=/var/log/squid/ 
SQUIDCACHEDIR=/var/log/squid/cache/
SAMSPATH=/opt/sams/
SQUIDPATH=/opt/squid/sbin/       # пусть до бинарника squid
RECODECOMMAND=iconv -f KOI8-R -t 866 %finp > %fout
SHUTDOWNCOMMAND=shutdown -h now
CACHENUM=1

Запуск sams /opt/sams/bin/sams2daemon

Ошибка

text

 +++WARNING: Unknown cache result TCP_MISS_ABORTED
***ERROR: squidlogparser.cpp:445 Unknown cache result
 +++WARNING: Unknown cache result TCP_MISS_ABORTED

возникает когда нехватает прав доступа к папке с кэшем.

Победить проблему в postgresql пока не получилось :(

#378583

У меня вон чего спамится в лог postregsql

2014-04-30 17:42:56 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:42:57 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:42:57 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:42:57 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:42:57 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:46:37 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:46:37 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:46:37 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:46:37 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:46:37 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:46:37 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
2014-04-30 17:46:37 YEKT ERROR: relation "proxy" does not exist at character 50
2014-04-30 17:46:37 YEKT STATEMENT: select s_sleep, s_parser_time, s_debuglevel from proxy where s_proxy_id=1
Войдите или зарегистрируйтесь, чтобы ответить.