{"id":728,"date":"2014-04-06T02:39:45","date_gmt":"2014-04-06T05:39:45","guid":{"rendered":"http:\/\/www.viazap.com.br\/?p=728"},"modified":"2014-04-06T02:39:45","modified_gmt":"2014-04-06T05:39:45","slug":"php-server-monitor-monitore-urls-e-ips","status":"publish","type":"post","link":"https:\/\/blog.clusterweb.com.br\/?p=728","title":{"rendered":"PHP Server Monitor &#8211; Monitore URLs e IPs"},"content":{"rendered":"<p><b>PHP Server Monitor &#8211; Descri\u00e7\u00e3o, Instala\u00e7\u00e3o e dicas.<\/b><\/p>\n<div>O que \u00e9 o\u00a0<em>PHP Server Monitor<\/em>?<\/p>\n<p>Encontrei um projeto no Sourceforge, que \u00e9 focado em monitora\u00e7\u00e3o de URLs e Portas de Ips\/Urls.<\/p>\n<p>A aplica\u00e7\u00e3o \u00e9 simples e objetiva, checa de tempos em tempos se a URL, ou Porta, est\u00e1 UP ou n\u00e3o. Lembra o servi\u00e7o Pingdom.<\/p>\n<p>Tem um Dashborad em PHP, que aparece o alarme, como uma aplica\u00e7\u00e3o de monitora\u00e7\u00e3o (Nagios, Zabbix, Icinga e etc).<\/p>\n<p>P\u00e1gina oficial do projeto:\u00a0<a href=\"http:\/\/www.phpservermonitor.org\/\">PHP Server Monitor<\/a><\/p>\n<p>Caracter\u00edsticas:<\/p>\n<ul>\n<li>Notifica\u00e7\u00f5es por email;<\/li>\n<li>Notifica\u00e7\u00f5es por SMS;<\/li>\n<li>Monitora\u00e7\u00e3o de Urls Http\/Https e Portas de Servi\u00e7os;<\/li>\n<li>Permite usar express\u00f5es regulares, para a monitora\u00e7\u00e3o de conte\u00fado espec\u00edfico de p\u00e1ginas Http e Https;<\/li>\n<li>Permite a cria\u00e7\u00e3o de usu\u00e1rios para a visualiza\u00e7\u00e3o de determinadas Urls, limitando o poder de visualiza\u00e7\u00e3o dos times\/usu\u00e1rios.<!--more--><\/li>\n<\/ul>\n<p>A &#8220;cara&#8221; da DashBorad do Projeto, \u00e9 esta:<\/p>\n<div><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/phpservermonotor-01.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" alt=\"Linux: PHP Server Monitor - Monitore URLs e IPs\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_phpservermonotor-01.png\" width=\"500\" height=\"423\" border=\"0\" \/><\/a><\/div>\n<p>Vamos para a m\u00e3o na massa.<\/p>\n<h1>Pr\u00e9-requisitos<\/h1>\n<p>Voc\u00ea precisa ter instalado os seguintes pacotes:<\/p>\n<ul>\n<li>PHP 5.3 ou maior (PHP 5.3+);<\/li>\n<li>Curl;<\/li>\n<li>M\u00f3dulo Php-mysql;<\/li>\n<li>Mysqsl Server;<\/li>\n<li>Webserver Apache;<\/li>\n<li>Servidor com acesso \u00e0 Internet, ou na rede onde ficam as Urls que precisam ser monitoradas.<\/li>\n<\/ul>\n<p>Nota: Pode ser usado qualquer outro WEBserver, como Nginx, fica a seu crit\u00e9rio, mas o Apache, satisfaz 100%. O apache e Mysql precisam ficar UP durante a instala\u00e7\u00e3o.<\/p>\n<h1>MySQL<\/h1>\n<p>Crie a base de dados Mysql, usu\u00e1rio e senha. Coloque os nomes e senha que voc\u00ea quiser, isto \u00e9 indiferente, fica a seu crit\u00e9rio.<\/p>\n<p>mysql&gt;\u00a0<strong>create database bancoteste;<\/strong><br \/>\nmysql&gt;\u00a0<strong>grant usage on *.* to usuariomysql@localhost identified by &#8216;senhamysql&#8217;;<\/strong><br \/>\nmysql&gt;\u00a0<strong>grant all privileges on bancoteste.* to usuariomysql@localhost;<\/strong><br \/>\nmysql&gt;\u00a0<strong>flush privileges;<\/strong><\/p>\n<p>Testando o acesso ao BD:<\/p>\n<p><strong># mysql -uusuariomysql -p<\/strong><br \/>\n<sub>Enter\u00a0\u00a0password:<br \/>\nWelcome\u00a0\u00a0to\u00a0\u00a0the\u00a0\u00a0MySQL\u00a0\u00a0monitor.\u00a0\u00a0\u00a0\u00a0Commands\u00a0\u00a0end\u00a0\u00a0with\u00a0\u00a0;\u00a0\u00a0or\u00a0\u00a0\\g.<br \/>\nYour\u00a0\u00a0MySQL\u00a0\u00a0connection\u00a0\u00a0id\u00a0\u00a0is\u00a0\u00a0158<br \/>\nServer\u00a0\u00a0version:\u00a0\u00a05.5.34\u00a0\u00a0MySQL\u00a0\u00a0Community\u00a0\u00a0Server\u00a0\u00a0(GPL)<\/p>\n<p>Copyright\u00a0\u00a0(c)\u00a0\u00a02000,\u00a0\u00a02013,\u00a0\u00a0Oracle\u00a0\u00a0and\/or\u00a0\u00a0its\u00a0\u00a0affiliates.\u00a0\u00a0All\u00a0\u00a0rights\u00a0\u00a0reserved.<\/p>\n<p>Oracle\u00a0\u00a0is\u00a0\u00a0a\u00a0\u00a0registered\u00a0\u00a0trademark\u00a0\u00a0of\u00a0\u00a0Oracle\u00a0\u00a0Corporation\u00a0\u00a0and\/or\u00a0\u00a0its<br \/>\naffiliates.\u00a0\u00a0Other\u00a0\u00a0names\u00a0\u00a0may\u00a0\u00a0be\u00a0\u00a0trademarks\u00a0\u00a0of\u00a0\u00a0their\u00a0\u00a0respective<br \/>\nowners.<\/p>\n<p>Type\u00a0\u00a0&#8216;help;&#8217;\u00a0\u00a0or\u00a0\u00a0&#8216;\\h&#8217;\u00a0\u00a0for\u00a0\u00a0help.\u00a0\u00a0Type\u00a0\u00a0&#8216;\\c&#8217;\u00a0\u00a0to\u00a0\u00a0clear\u00a0\u00a0the\u00a0\u00a0current\u00a0\u00a0input\u00a0\u00a0statement.<\/p>\n<p>mysql&gt;\u00a0\u00a0show\u00a0\u00a0databases;<br \/>\n+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+<br \/>\n|\u00a0\u00a0Database\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0|<br \/>\n+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+<br \/>\n|\u00a0\u00a0information_schema\u00a0\u00a0|<br \/>\n|\u00a0\u00a0bancoteste\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0|<br \/>\n+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+<br \/>\n2\u00a0\u00a0rows\u00a0\u00a0in\u00a0\u00a0set\u00a0\u00a0(0.00\u00a0\u00a0sec)<\/p>\n<p>mysql&gt;\u00a0<\/sub><\/p>\n<p>Neste caso:<\/p>\n<ul>\n<li>Usu\u00e1rio:\u00a0<span>usuariomysql<\/span><\/li>\n<li>Senha:\u00a0<span>senhamysql<\/span><\/li>\n<li>Base de dados MySQL:\u00a0<span>bancoteste<\/span><\/li>\n<\/ul>\n<h1>Baixando PHP Server Monitor<\/h1>\n<p>V\u00e1 para a p\u00e1gina do projeto (<a href=\"http:\/\/www.phpservermonitor.org\/\">phpservermonitor.org<\/a>) e baixe o pacote\u00a0<span>phpservermon<\/span>.<\/p>\n<p>A vers\u00e3o atual \u00e9\u00a0<span>phpservermon-2.1.0.tar.gz<\/span>.<\/p>\n<h1>Instala\u00e7\u00e3o<\/h1>\n<p>1. Descompacte o\u00a0<span>phpservermon-2.1.0.tar.gz<\/span>\u00a0na p\u00e1gina raiz do seu WEBsite, no meu caso, est\u00e1 na pasta raiz default do Apache:<\/p>\n<p><strong># tar xvzf phpservermon-2.1.0.tar.gz -C \/var\/www\/html<br \/>\n#cd \/var\/www\/html\/phpservermon<\/strong><\/p>\n<p>2. Renomeie o arquivo\u00a0<span>config.php.sample<\/span>\u00a0para\u00a0<span>config.php<\/span>:<\/p>\n<p><strong># mv -v config.php.sample config.php<\/strong><\/p>\n<p>3. Configure as credenciais do Banco de dados. (usuario, senha e base de dados).<\/p>\n<p><strong># vi config.php<\/strong><br \/>\n<sub>define(&#8216;PSM_DB_USER&#8217;,\u00a0\u00a0&#8216;usuariomysql&#8217;);<br \/>\ndefine(&#8216;PSM_DB_PASS&#8217;,\u00a0\u00a0&#8216;senhamysql&#8217;);<br \/>\ndefine(&#8216;PSM_DB_NAME&#8217;,\u00a0\u00a0&#8216;bancoteste&#8217;);\u00a0<\/sub><\/p>\n<p>4. Execute o arquivo\u00a0<span>install.php<\/span>\u00a0para prosseguir com a instala\u00e7\u00e3o:<\/p>\n<ul>\n<li><span>http:\/\/coloqueseuipaqui\/phpservermon\/install.php<\/span><\/li>\n<\/ul>\n<p>Ex.:\u00a0<strong>http:\/\/localhost\/phpservermon\/install.php<\/strong><\/p>\n<div><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/phpservermonotor-02.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" alt=\"Linux: PHP Server Monitor - Monitore URLs e IPs\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_phpservermonotor-02.png\" width=\"500\" height=\"413\" border=\"0\" \/><\/a><\/div>\n<p>5. Agora, voc\u00ea tem instalado o PHP Server Monitor.<\/p>\n<p>Acesse a URL principal (<span>index.php<\/span>):<\/p>\n<ul>\n<li><strong>http:\/\/localhost\/phpservermon\/index.php<\/strong><\/li>\n<\/ul>\n<div><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/phpservermonotor-03.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" alt=\"Linux: PHP Server Monitor - Monitore URLs e IPs\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_phpservermonotor-03.png\" width=\"500\" height=\"180\" border=\"0\" \/><\/a><\/div>\n<p>6. Configurar o script de monitora\u00e7\u00e3o no Cron.<\/p>\n<div># crontab -l<br \/>\n*\/1 * * * * \/usr\/bin\/php \/var\/www\/html\/phpservermon\/cron\/status.cron.php<\/div>\n<p>Veja, que eu coloquei o script de monitora\u00e7\u00e3o para ser executado a cada 1 minuto, que \u00e9 mais que sificiente para monitorar as Urls e portas.<\/p>\n<p>Nota: \u00c9 muito importante, ap\u00f3s a instala\u00e7\u00e3o, ser apagado ou removido da pasta do apache, o arquivo de instala\u00e7\u00e3o\u00a0<span>install.php<\/span>.<\/p>\n<p>Se, por qualquer motivo, for ser executado novamente, voc\u00ea vai zerar a instala\u00e7\u00e3o e perder qualquer monitora\u00e7\u00e3o configurada.<\/p>\n<h1>E-mail<\/h1>\n<p>N\u00e3o vou abordar, neste momento, o envio de alertas por Email.<\/p>\n<p>Dicas:<\/p>\n<ul>\n<li>Basicamente voc\u00ea vai precisar de um servidor de email v\u00e1lido, ou que envie e-mails para onde voc\u00ea queira.<\/li>\n<li>Eu sugiro o Postfix para ser o servidor de E-mail. O Postfix pode servir apenas como Relay, ou seja, encaminhar os E-mails para outro servidor j\u00e1 configurado.<\/li>\n<\/ul>\n<h1>SMS<\/h1>\n<p>Dicas:<\/p>\n<ul>\n<li>Voc\u00ea precisa adquirir um servi\u00e7o de Gateway SMS, tem gratu\u00edtos e pagos.<\/li>\n<li>Na p\u00e1gina do projeto, tem algumas informa\u00e7\u00f5es para configurar o servi\u00e7o de SMS.<\/li>\n<\/ul>\n<h1>Conclus\u00e3o<\/h1>\n<p>Bom pessoal, \u00e9 isto.<\/p>\n<p>O intuito aqui, foi compartilhar mais um ferramenta para a monitora\u00e7\u00e3o de sites. Voc\u00eas viram que \u00e9 uma ferramenta simples, mas que faz o que \u00e9 necess\u00e1rio.<\/p>\n<p>Dica muito legal: \u00e0s vezes, al\u00e9m do SMS e E-mail, voc\u00ea tamb\u00e9m quer que seja aberto um chamado, um incidente, na ferramenta de gerenciamento de chamados da sua empresa.<\/p>\n<p>Para isto, sugiro usar o servi\u00e7o\u00a0<a href=\"https:\/\/zapier.com\/\">Zapier<\/a>, que \u00e9 uma aplica\u00e7\u00e3o na nuvem, que pode ser integrada com diversas ferramentas de Service Desk e abertura de chamados.<\/p>\n<p>Ela precisa apenas que chegue um e-mail com o alerta, para abrir os chamados. Muito \u00fatil.<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>PHP Server Monitor &#8211; Descri\u00e7\u00e3o, Instala\u00e7\u00e3o e dicas. O que \u00e9 o\u00a0PHP Server Monitor? Encontrei um projeto no Sourceforge, que \u00e9 focado em monitora\u00e7\u00e3o de URLs e Portas de Ips\/Urls. A aplica\u00e7\u00e3o \u00e9 simples e objetiva, checa de tempos em tempos se a URL, ou Porta, est\u00e1 UP ou n\u00e3o. Lembra o servi\u00e7o Pingdom. Tem [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[256,42,439,68],"tags":[446,444,445,443],"class_list":["post-728","post","type-post","status-publish","format-standard","hentry","category-desktop","category-leitura-recomendada","category-midia","category-redes-2","tag-e-ips","tag-monitor","tag-monitore-urls","tag-php-server"],"_links":{"self":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/728","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=728"}],"version-history":[{"count":1,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/728\/revisions"}],"predecessor-version":[{"id":729,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/728\/revisions\/729"}],"wp:attachment":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=728"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}