+ Responder ao Tópico



  1. #1
    winter_man
    Visitante

    Padrão Script para matar processo.

    Bom dia pessoal, gostaria da ajuda de vcs para criar uma solução em Shell Script p/ um probleminha que está ocorrendo em meu servidor. Bom, a ideia é a seguinte: Preciso criar um script que dê um kill em um processo sempre que esse precesso consumir + de 50 megas de RAM, não sei se isso é possível com shell script, se for possível desde já agradeço o auxilio de todos.

    Obrigado

    Abs

  2. #2

    Padrão Re: Script para matar processo.

    possivel é sim mas com toda certeza vc vai acabar matando coisas essenciais para o sistema, aninda mais se for uma máquina muito utilizada, é melhor vc identificar a fonte do problema e tentar corrigir ou pelo menos melhorar

  3. #3
    winter_man
    Visitante

    Padrão Re: Script para matar processo.

    Humm, me deixou esperançoso com esse "é possível", agradeço a atenção dada ao meu post 1c3m4n. Seguinte, temos um ambiente com RHEL 4, rodado o Aplication Server da Oracle, as vezes dá uns pico de acesso ao site, os 2 componentes OC4J chegam a consumir cerca de 780 megas de RAM (cada processo), quando esses processos são "encerrados" através de um kill por exemplo, o serviço é startado automaticamente e fica quase que transparente para os usuários, porém se esses dois componentes não forem stopados o ambiente fica extremamente lento quando o consumo de memória chega a 700/750 megas por isso que pensei em um script que matasse esses dois processos quando os mesmos consumissem X de memória. Montei um ambiente de teste, e gostaria, que se possível, vcs me ajudassem na construção desse script. Teoricamente matar o processo não é dificil, o problema é que, como todos nós sabemos, os PID's não são valores fixos e mudam conforme são startados/stopados, enfim, agradeço a ajuda de todos.

    Abraços

  4. #4

    Padrão Re: Script para matar processo.

    nao da pra faze um tunning desse oracle e desse componente não? meio estranho ele consumir tudo isso, bom mas de qq forma vc pode limitar seus kills com um pequeno grep:

    rafael@1c3m4n:~$ ps auxwww
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    root 1 0.0 0.0 2640 488 ? S Jun18 0:00 init [2]

    for i in $(ps auxwww | grep apache | grep 80.0 | awk {'print $2'}); do kill -9 $i; done

    issu ae vai mata qq processo do apache que esteja consumindo mais de 80% da memoria total da máquina, altere pra como vc precisar, mas saiba que isso e GAMBIARRA

  5. #5
    winter_man
    Visitante

    Padrão Re: Script para matar processo.

    Citação Postado originalmente por 1c3m4n
    nao da pra faze um tunning desse oracle e desse componente não? meio estranho ele consumir tudo isso, bom mas de qq forma vc pode limitar seus kills com um pequeno grep:

    rafael@1c3m4n:~$ ps auxwww
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    root 1 0.0 0.0 2640 488 ? S Jun18 0:00 init [2]

    for i in $(ps auxwww | grep apache | grep 80.0 | awk {'print $2'}); do kill -9 $i; done

    issu ae vai mata qq processo do apache que esteja consumindo mais de 80% da memoria total da máquina, altere pra como vc precisar, mas saiba que isso e GAMBIARRA
    Cara acho que isso vai cair como uma luva... mãos a obra. Postarei novamente pra dizer se essa "cambi" deu certo e resolveu meu probleminha ou se me mandaram embora :wink:

    Agradeço novamente

    Abs

  6. #6
    newtonsporto
    Visitante

    Padrão Re: Script para matar processo.

    Gostaria de pegar carona neste topico, e perguntar se nao tem como adaptar para matar um determinado processo por ex "_progres", de um usuario que esta sem atividade a um determinado tempo?