Re: lug-bg: Apache спиране на трансфер + лог

2006-10-16 Thread Peter
Georgi Chorbadzhiyski wrote:
> Питах вече в httpd-devel и -users ама никой не може да ми отговори,
> та реших, че може би някой из lug-а е по-светнат.
> 

> 

Zdravei,

pitai vav freebsd(US) listovete. Lichnia mi opit pokazva che v tia
listove ima dosta znaeshti hora.

Peter


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Georgi Chorbadzhiyski
Peter wrote:
> Georgi Chorbadzhiyski wrote:
>> Питах вече в httpd-devel и -users ама никой не може да ми отговори,
>> та реших, че може би някой из lug-а е по-светнат.
> 
> pitai vav freebsd(US) listovete. Lichnia mi opit pokazva che v tia
> listove ima dosta znaeshti hora.

То че има - има, ама едва ли е On-TOPIC подобно питане там.

-- 
Georgi Chorbadzhiyski
http://georgi.unixsol.org/


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Alexander N.

Georgi Chorbadzhiyski wrote:

Питах вече в httpd-devel и -users ама никой не може да ми отговори,
та реших, че може би някой из lug-а е по-светнат.

Проблема ми е следният: когато apache трансферира големи файлове и
по някаква причина реша, че искам да прекратя трансфера, какъвто
и сигнал да пращам на httpd-то, което сервира, то или игнорира сигнала
или просто умира, прекратявайки трансфера без да записва нищо
в логовете.


В мануала на апачето пише следното:

   * *"graceful restart" sigusr1 signal*

 zfile kill -s sigusr1 /apache_parent_pid/ or
 zfile kill -s sigusr1 `cat /usr/local/apache/logs/httpd.pid`

 The Apache parent asks its children to exit when they're finished
 with any requests they're currently handling. Then the existing
 parent re-reads the configuration file(s) and creates new children
 to replace the exiting ones.

 "Graceful restart" can be used to pick up new configuration files
 without disrupting traffic.

   * http://httpd.apache.org/docs/1.3/stopping.html

Но май няма да ти свърши работа, защото така може да си го чакаш до утре 
спре





Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Georgi Chorbadzhiyski
Alexander N. wrote:
> Georgi Chorbadzhiyski wrote:
>> Питах вече в httpd-devel и -users ама никой не може да ми отговори,
>> та реших, че може би някой из lug-а е по-светнат.
>>
>> Проблема ми е следният: когато apache трансферира големи файлове и
>> по някаква причина реша, че искам да прекратя трансфера, какъвто
>> и сигнал да пращам на httpd-то, което сервира, то или игнорира сигнала
>> или просто умира, прекратявайки трансфера без да записва нищо
>> в логовете.
> 
> В мануала на апачето пише следното:
> 
> * *"graceful restart" sigusr1 signal*
> 
>   zfile kill -s sigusr1 /apache_parent_pid/ or
>   zfile kill -s sigusr1 `cat /usr/local/apache/logs/httpd.pid`
> 
>   The Apache parent asks its children to exit when they're finished
>   with any requests they're currently handling. Then the existing
>   parent re-reads the configuration file(s) and creates new children
>   to replace the exiting ones.
> 
>   "Graceful restart" can be used to pick up new configuration files
>   without disrupting traffic.
> 
> * http://httpd.apache.org/docs/1.3/stopping.html
> 
> Но май няма да ти свърши работа, защото така може да си го чакаш до утре 
> спре

Именно. Не ми върши работа защото аз искам да прекъсна трансфера, а не да го
чакам да си спре когато клиента пожелае.

Не ме бийте за следната грозотия, която работи /по-лесно ми беше да я направя 
нея
вместо да се кривя да компилирам tcpkill ot dsniff/.

Скрипт ugly_tcpkill.sh пуска се

  ugly_tcpkill.sh  PID_OF_HTTPD_PROCESS  IP_OF_CLIENT

#!/bin/sh
lsof -n -i [EMAIL PROTECTED] | grep $1 | tr -s ' ' | cut -d" " -f8 | cut -d">" 
-f2 | tr : " " | while read IP PORT
do
  iptables -I OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
  sleep 2
  iptables -D OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
done

Не го използвайте в този вид моля, защото не отговарям за грешките, които са
очевадни. :-)

-- 
Georgi Chorbadzhiyski
http://georgi.unixsol.org/


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Dean Stoeff

Georgi Chorbadzhiyski wrote:

Alexander N. wrote:
  

Georgi Chorbadzhiyski wrote:


Питах вече в httpd-devel и -users ама никой не може да ми отговори,
та реших, че може би някой из lug-а е по-светнат.

Проблема ми е следният: когато apache трансферира големи файлове и
по някаква причина реша, че искам да прекратя трансфера, какъвто
и сигнал да пращам на httpd-то, което сервира, то или игнорира сигнала
или просто умира, прекратявайки трансфера без да записва нищо
в логовете.
  

В мануала на апачето пише следното:

* *"graceful restart" sigusr1 signal*

  zfile kill -s sigusr1 /apache_parent_pid/ or
  zfile kill -s sigusr1 `cat /usr/local/apache/logs/httpd.pid`

  The Apache parent asks its children to exit when they're finished
  with any requests they're currently handling. Then the existing
  parent re-reads the configuration file(s) and creates new children
  to replace the exiting ones.

  "Graceful restart" can be used to pick up new configuration files
  without disrupting traffic.

* http://httpd.apache.org/docs/1.3/stopping.html

Но май няма да ти свърши работа, защото така може да си го чакаш до утре 
спре



Именно. Не ми върши работа защото аз искам да прекъсна трансфера, а не да го
чакам да си спре когато клиента пожелае.

Не ме бийте за следната грозотия, която работи /по-лесно ми беше да я направя 
нея
вместо да се кривя да компилирам tcpkill ot dsniff/.

Скрипт ugly_tcpkill.sh пуска се

  ugly_tcpkill.sh  PID_OF_HTTPD_PROCESS  IP_OF_CLIENT

#!/bin/sh
lsof -n -i [EMAIL PROTECTED] | grep $1 | tr -s ' ' | cut -d" " -f8 | cut -d">" -f2 | tr : 
" " | while read IP PORT
do
  iptables -I OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
  sleep 2
  iptables -D OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
done

Не го използвайте в този вид моля, защото не отговарям за грешките, които са
очевадни. :-)

  
Аха, само като идея, няма ли да е по добре да се комбинират горните 2. 
Първо да кажеш на родителския процес да чака да привършат дъщерните 
процеси и после тях да утрепеш ?


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Огнян Кулев

Georgi Chorbadzhiyski написа:

Въпроса ми е следният, някой знае ли начин да накарам Апаче да спре
трансфер и да запише в лога заявката и байтовете, които са трансферирани?


Какво става при пращане на HUP и веднага след това TERM?

Поздрави,
оги


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Georgi Chorbadzhiyski
Dean Stoeff wrote:
> Аха, само като идея, няма ли да е по добре да се комбинират горните 2. 
> Първо да кажеш на родителския процес да чака да привършат дъщерните 
> процеси и после тях да утрепеш ?

Не, защото не искам да правя graceful на целият сървър само защото искам
да спра определен трансфер. Няма никакъв смисъл, не ми помага с нищо.

-- 
Georgi Chorbadzhiyski
http://georgi.unixsol.org/


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Georgi Chorbadzhiyski
Огнян Кулев wrote:
> Georgi Chorbadzhiyski написа:
>> Въпроса ми е следният, някой знае ли начин да накарам Апаче да спре
>> трансфер и да запише в лога заявката и байтовете, които са трансферирани?
> 
> Какво става при пращане на HUP и веднага след това TERM?

Излиза без да пише в лога още при HUP. Вярвай ми опитах всички извратени
сигнали, които kill -l ми казва че съществуват. Дори и SIGPWR и SIGXFSZ :)

-- 
Georgi Chorbadzhiyski
http://georgi.unixsol.org/


Re: lug-bg: Apache спиране на трансфер + лог

2006-10-17 Thread Stoyan Tzalev
Georgi Chorbadzhiyski написа:
> Именно. Не ми върши работа защото аз искам да прекъсна трансфера, а не да го
> чакам да си спре когато клиента пожелае.
>
> Не ме бийте за следната грозотия, която работи /по-лесно ми беше да я направя 
> нея
> вместо да се кривя да компилирам tcpkill ot dsniff/.
>
> Скрипт ugly_tcpkill.sh пуска се
>
>   ugly_tcpkill.sh  PID_OF_HTTPD_PROCESS  IP_OF_CLIENT
>
> #!/bin/sh
> lsof -n -i [EMAIL PROTECTED] | grep $1 | tr -s ' ' | cut -d" " -f8 | cut 
> -d">" -f2 | tr : " " | while read IP PORT
> do
>   iptables -I OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
> tcp-reset
>   sleep 2
>   iptables -D OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
> tcp-reset
> done
>
> Не го използвайте в този вид моля, защото не отговарям за грешките, които са
> очевадни. :-)
Привет, хвърли едно око тука, ако случайно вече не си го направил:
http://www.lowth.com/cutter/
Няма външни зависимости като dsniff, а и би следвало да работи по-чисто.



Re: lug-bg: Apache спиране на трансфер + лог

2006-10-18 Thread Georgi Chorbadzhiyski

Stoyan Tzalev wrote:

Georgi Chorbadzhiyski написа:

Именно. Не ми върши работа защото аз искам да прекъсна трансфера, а не да го
чакам да си спре когато клиента пожелае.

Не ме бийте за следната грозотия, която работи /по-лесно ми беше да я направя 
нея
вместо да се кривя да компилирам tcpkill ot dsniff/.

Скрипт ugly_tcpkill.sh пуска се

  ugly_tcpkill.sh  PID_OF_HTTPD_PROCESS  IP_OF_CLIENT

#!/bin/sh
lsof -n -i [EMAIL PROTECTED] | grep $1 | tr -s ' ' | cut -d" " -f8 | cut -d">" -f2 | tr : 
" " | while read IP PORT
do
  iptables -I OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
  sleep 2
  iptables -D OUTPUT -p tcp -d $IP --dport $PORT -j REJECT --reject-with 
tcp-reset
done

Не го използвайте в този вид моля, защото не отговарям за грешките, които са
очевадни. :-)

Привет, хвърли едно око тука, ако случайно вече не си го направил:
http://www.lowth.com/cutter/
Няма външни зависимости като dsniff, а и би следвало да работи по-чисто.



Изглежда полезно, благодаря.

--
Georgi Chorbadzhiyski
http://georgi.unixsol.org/