Tutorial Módulo 10 Monitoração de Ambientes

Tamanho: px
Começar a partir da página:

Download "Tutorial Módulo 10 Monitoração de Ambientes"

Transcrição

1 LABORATÓRIO 10 Monitoração de Este laboratório tem por objetivo exercitar o uso das ferramentas especializadas para a monitoração de aplicações Java através dos servidores SNMP (genérico) e Zabbix (específico) disponibilizadas pelo componente Demoiselle Monitoring. Objetivos: Monitoração do tipo polling via SNMP e uso de cliente SNMP; Monitoração do tipo trapping via SNMP, uso de servidor SNMP e criação de checkers; Monitoração do tipo polling via Zabbix; Monitoração do tipo trapping via Zabbix e criação de checkers; Utilização de trapping padrão e appenders Log4j para SNMP e Zabbix; Pré-requisitos: Conhecimento da ferramenta de gerenciamento de pacotes Apache Maven; Instalação de cliente e servidor SNMP, tal como Net-SNMP; Conhecimento básico de utilização da interface Web do Zabbix. Referências: Net-SNMP: Zabbix: 1

2 Preâmbulo Preparação da aplicação de exemplo Obs.: Caso você já possua uma aplicação do tipo Java Web, pode ignorar esta seção. 1. No Eclipse, crie um novo projeto utilizando o menu File > New > Other > Maven Project tal como ilustrado a seguir: 2. Na tela seguinte, escolha o arquétipo demoiselle-archetype-webapp para o projeto: 2

3 3. Na próxima tela, informe o grupo br.gov.sample.demoiselle e o artefato escola conforme tela abaixo, clicando em seguida no botão Finish: 4. Substitua o conteúdo do arquivo WEB-INF/web.xml da aplicação com as seguintes linhas: <?xml version="1.0" encoding="utf-8"?> <web-app xmlns:xsi=" xmlns=" xmlns:web=" xsi:schemalocation=" version="2.5"> </web-app> <display-name>escola</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> 5. Lance o servidor Tomcat do Eclipse, associe a aplicação escola e teste a sua execução. 3

4 Exercício 10.1 Polling SNMP: Criação e utilização do agente 1. Inclua a seguinte dependência no arquivo pom.xml da aplicação: <dependency> <groupid>br.gov.component.demoiselle</groupid> <artifactid>demoiselle-monitoring</artifactid> <version>1.0.0</version> </dependency> 2. Crie a interface EscolaMonitoringMBean estendendo a interface IMBean e com o seguinte conteúdo: package br.gov.sample.demoiselle.escola.monitoring.mbean; import br.gov.component.demoiselle.monitoring.jmx.imbean; public interface EscolaMonitoringMBean extends IMBean { long getqtdalunosmatriculados(); int getqtdturmasincluidas(); String getversaoaplicacao(); String getultimousuariologado(); int getnivellog(); void setnivellog(int nivellog); 3. Crie a classe EscolaMonitoring implementando a interface EscolaMonitoringMBean desenvolvida anteriormente, incluindo todos os métodos nela existentes: package br.gov.sample.demoiselle.escola.monitoring.mbean; public class EscolaMonitoring implements EscolaMonitoringMBean { 4. Inclua as (para identificar o Managed Bean no servidor JMX) (para registrar a Managed Information Base MIB no agente SNMP) na classe EscolaMonitoring conforme ilustrado no código a = = " ") public class EscolaMonitoring implements EscolaMonitoringMBean { 4

5 5. Inclua a (para registrar cada um dos OIDs a serem disponibilizados na MIB via SNMP) e implemente a classe EscolaMonitoring por completo utilizando o conteúdo a seguir (modificações necessárias em destaque): package br.gov.sample.demoiselle.escola.monitoring.mbean; import org.snmp4j.smi.counter32; import org.snmp4j.smi.gauge32; import org.snmp4j.smi.integer32; import org.snmp4j.smi.octetstring; import br.gov.component.demoiselle.monitoring.jmx.mbean; import br.gov.component.demoiselle.monitoring.snmp.accessmode; import br.gov.component.demoiselle.monitoring.snmp.managedobject; import = = " ") public class EscolaMonitoring implements EscolaMonitoringMBean { private long qtdalunos = = ".1", type = Gauge32.class) public long getqtdalunosmatriculados() { this.qtdalunos = (int) (Math.random() * 100) + 100; return this.qtdalunos; private int qtdturmas = = ".2", type = Counter32.class) public int getqtdturmasincluidas() { this.qtdturmas += (int) (Math.random() * 10); return this.qtdturmas; private static final String[] USUARIOS = { "Fulano", "Sicrano", "Beltrano" = ".3", type = OctetString.class) public String getultimousuariologado() { int pos = (int) (Math.random() * USUARIOS.length); return USUARIOS[pos]; private static final String VERSAO = = ".4") public String getversaoaplicacao() { return = ".5", access = AccessMode.READ_WRITE, type = Integer32.class, allowedvalues = { 1, 2, 3, 4 ) private int nivellog = 1; public int getnivellog() { return this.nivellog; public void setnivellog(final int nivellog) { this.nivellog = nivellog; 5

6 6. Adicione as seguintes linhas ao arquivo de configurações demoiselle.properties: # JMX MBeans to be loaded on application startup component.demoiselle.monitoring.jmx.mbeans = \ br.gov.sample.demoiselle.escola.monitoring.mbean.escolamonitoring 7. Crie o arquivo de configurações snmp.properties específico para serviços SNMP contendo as linhas a seguir: # SNMP Configuration # 1) polling / active check # enable a SNMP agent that provides a given MIB tree monitoring.snmp.agent.enabled = true # the network protocol to be used (udp or tcp) monitoring.snmp.agent.protocol = udp # the port that the agent listens on (default 1161) monitoring.snmp.agent.port = 1161 # the address to listen on, or '*' to listen on any available address monitoring.snmp.agent.address = * # the MIB root to be considered monitoring.snmp.agent.mib.root = # MBeans to be exported as MIB trees monitoring.snmp.agent.mibs = \ br.gov.sample.demoiselle.escola.monitoring.mbean.escolamonitoring # security settings (particularly for SNMPv3) monitoring.snmp.agent.security = snmp-security.xml 6

7 8. Crie o arquivo snmp-security.xml contendo as definições de segurança (i.e. SNMPv3) para o serviço SNMP de acordo com as linhas a seguir: <?xml version="1.0" encoding="utf-8"?> <snmp-security> <security> <user name="escola"> <auth protocol="sha" pass="senha123" /> <priv protocol="aes" pass="senha456" /> </user> <user name="zabbix"> <auth protocol="md5" pass="senha321" /> <priv protocol="des" pass="senha654" /> </user> </security> <access-control> <views> <view name="fullreadview"> <include subtree="1.3" mask="" /> </view> <view name="fullwriteview"> <include subtree="1.3" /> </view> <view name="fullnotifyview"> <include subtree="1.3" /> </view> <view name="escolareadview"> <include subtree=" " /> </view> <view name="escolawriteview"> <include subtree=" " /> </view> <view name="escolanotifyview"> <include subtree=" " /> </view> </views> <groups> <group name="v1v2group"> <security name="public" model="snmpv1"/> <security name="public" model="snmpv2c"/> <access context="" model="any" auth="false" priv="false" exact="true"> <read view="fullreadview" /> <write view="fullwriteview" /> <notify view="fullnotifyview" /> </access> </group> <group name="v3escola"> <security name="escola" model="usm" /> <security name="zabbix" model="usm" /> <access model="usm" auth="true" priv="true" exact="true"> <read view="escolareadview" /> <write view="escolawriteview" /> <notify view="escolanotifyview" /> </access> </group> </groups> </access-control> </snmp-security> 7

8 9. Associe o listener de SNMP na aplicação Web incluindo as seguintes linhas no arquivo WEB- INF/web.xml: <!-- Demoiselle Monitoring Configuration (SNMP) --> <listener> <listener-class> br.gov.component.demoiselle.monitoring.web.snmp.snmplistener </listener-class> </listener> 10. Crie o arquivo log4j.properties de configurações do Log4j com as linhas a seguir: log4j.rootcategory=info, stdout log4j.logger.br.gov.component=debug log4j.appender.stdout=org.apache.log4j.consoleappender log4j.appender.stdout.layout=org.apache.log4j.patternlayout log4j.appender.stdout.layout.conversionpattern=%-5p [%c{1] %m%n 11. Publique a aplicação Web no contêiner Apache Tomcat e observe as linhas inseridas no console do Eclipse (vide imagem a seguir): 12. Tendo o serviço SNMP levantado pelo agente, podemos usar ferramentas tais como um cliente SNMP qualquer para efetuar operações. Eis um exemplo de utilização do comando snmpwalk para listar todos os OIDs disponíveis a partir de um determinado nó da árvore - utilizando SNMPv1, comunidade public no servidor local (localhost) e porta 1161: $ snmpwalk -v 1 -c public localhost:1161. SNMPv2-SMI::enterprises = Gauge32: 146 SNMPv2-SMI::enterprises = Counter32: 73 SNMPv2-SMI::enterprises = STRING: "Fulano" SNMPv2-SMI::enterprises = STRING: "2.4.1-RC2" SNMPv2-SMI::enterprises = INTEGER: 1 End of MIB Observe que o tipo de dados de cada objeto é disponibilizado de acordo com o que fora definido na implementação em Java. Cada OID é montado através da concatenação da raiz da MIB (definido no arquivo snmp.properties), do prefixo da MIB (definido da classe) e da do método ou atributo. 8

9 13. Ainda no terminal, execute a instrução snmpget conforme exemplo a seguir, com o objetivo de testar requisições SNMP do tipo GET, desta vez utilizando a versão 2c do protocolo desta forma podemos obter o valor de um único objeto especificando o seu OID completo: $ snmpget -v 2c -c public : SNMPv2-SMI::enterprises = Counter32: Um outro comando, o snmpgetnext, recupera o primeiro objeto disponível na árvore especificada parcialmente. Teste a execução de requisições SNMP do tipo GETNEXT utilizando a instrução abaixo: $ snmpgetnext -v 1 -c public localhost: SNMPv2-SMI::enterprises = Gauge32: Existe ainda a possibilidade de se alterar o valor de um objeto pelo cliente, sendo que neste caso usamos a instrução snmpset especificando o OID completo, o tipo de dados e o valor para o qual se deseja mudar. Teste a execução de uma instrução SNMP do tipo SET invocando a seguinte instrução: $ snmpset -v 1 -c public localhost: i 2 SNMPv2-SMI::enterprises = INTEGER: É possível ainda utilizar outros clientes SNMP para os testes anterios. Por exemplo, eis o mbrowse: 9

10 17. Considerando a configuração de segurança contida no arquivo snmp-security.xml, ao utilizar os comandos das ferramentas clientes com o protocolo SNMPv3, é preciso passar argumentos adicionais, tais como o nome do usuário, a forma escolhida para autenticação e privacidade e as respectivas senhas e algoritmos de criptografia. A instrução snmpget fica assim para o usuário escola usando SHA na autenticação e DES na privacidade: $ snmpget -v 3 -l authpriv -u escola -a SHA -A senha123 -x AES -X senha456 \ : SNMPv2-SMI::enterprises = Gauge32: Para testar o controle de acesso (VACM) do SNMPv3, ao requisitar um objeto pertencente a uma visão não permitida ao grupo do usuário, o resultado é exibido abaixo: $ snmpget -v 3 -l authpriv -u escola -a SHA -A senha123 -x AES -X senha456 \ : SNMPv2-SMI::enterprises = No Such Object available on this agent at this OID 19. Além disso, ao executar o comando snmpwalk, apenas os ramos da árvore disponíveis para o grupo do usuário são exibidos: $ snmpwalk -v 3 -l authpriv -u escola -a SHA -A senha123 -x AES -X senha456 \ : SNMPv2-SMI::enterprises = Gauge32: 102 SNMPv2-SMI::enterprises = Counter32: 86 SNMPv2-SMI::enterprises = STRING: "Sicrano" SNMPv2-SMI::enterprises = STRING: "2.4.1-RC2" SNMPv2-SMI::enterprises = INTEGER: 2 SNMPv2-SMI::enterprises = No more variables left in this MIB View (It is past the end of the MIB tree) 20. De maneira semelhante, ao utilizar o usuário zabbix com os protocolos MD5 para autenticação e DES para privacidade, além das respectivas senhas, a instrução para o snmpget é a seguinte: $ snmpget -v 3 -l authpriv -u zabbix -a MD5 -A senha321 -x DES -X senha654 \ : SNMPv2-SMI::enterprises = Gauge32: Se caso a senha de autenticação estiver incorreta, o resultado é o seguinte: $ snmpget -v 3 -l authpriv -u zabbix -a MD5 -A senha_errada -x DES -X senha654 \ : snmpget: Authentication failure (incorrect password, community or key) 22. Entretanto, se a senha de privacidade for inválida, ocorre um timeout na requisição: $ snmpget -v 3 -l authpriv -u zabbix -a MD5 -A senha321 -x DES -X senha_errada \ : Timeout: No Response from : E por fim, caso as formas de autenticação e privacidade especificadas no cliente forem diferentes das configuradas no agente, a resposta é a seguinte: $ snmpget -v 3 -l authnopriv -u zabbix -a MD5 -A senha321 \ : Error in packet Reason: authorizationerror (access denied to that object) Failed object: SNMPv2-SMI::enterprises

11 Exercício 10.2 Trapping SNMP: Criação e utilização do trapper 1. Crie a interface IEscolaTrapper estendendo a interface ITrapper e com o seguinte conteúdo: package br.gov.sample.demoiselle.escola.monitoring.trapper; import br.gov.component.demoiselle.monitoring.trapper.itrapper; public interface IEscolaTrapper extends ITrapper { void enviarfalha(string mensagem); void enviarinfobd(string base, int conexoes); void enviarmemoriaheapusada(); void enviarmensagem(string mensagem, int nivel, int valor); void enviarversaoaplicacao(); 2. Crie a classe EscolaSNMPTrapper herdando da superclasse SNMPTrapper e implementando a interface IEscolaTrapper desenvolvida anteriormente, incluindo todos os métodos nela existentes: package br.gov.sample.demoiselle.escola.monitoring.trapper; import br.gov.component.demoiselle.monitoring.trapper.snmp.snmptrapper; public class EscolaSNMPTrapper extends SNMPTrapper implements IEscolaTrapper { 3. Inclua a para configurar o envio de traps SNMP na classe EscolaSNMPTrapper conforme destacado no código a = " ", generictype = TrapType.ENTERPRISE_SPECIFIC) public class EscolaSNMPTrapper extends SNMPTrapper implements IEscolaTrapper { 4. Na mesma classe, crie uma variável estática e privada para armazenar uma única instância do objeto e um método getinstance() para sempre referenciá-la (i.e. aplicação do padrão singleton): private static EscolaSNMPTrapper instance; public static synchronized EscolaSNMPTrapper getinstance() { if (instance == null) { instance = new EscolaSNMPTrapper(); return instance; 11

12 5. Inclua a (para registrar cada um dos traps a serem disparados via SNMP) e implemente a classe EscolaSNMPTrapper por completo utilizando o conteúdo a seguir (modificações necessárias em destaque): package br.gov.sample.demoiselle.escola.monitoring.trapper; import org.snmp4j.smi.counter32; import org.snmp4j.smi.gauge32; import org.snmp4j.smi.integer32; import org.snmp4j.smi.octetstring; import br.gov.component.demoiselle.monitoring.snmp.managedobject; import br.gov.component.demoiselle.monitoring.snmp.managedtrap; import br.gov.component.demoiselle.monitoring.snmp.traptype; import br.gov.component.demoiselle.monitoring.trapper.snmp.snmptrapper; public class EscolaSNMPTrapper extends SNMPTrapper implements IEscolaTrapper { private static EscolaSNMPTrapper instance; public static synchronized EscolaSNMPTrapper getinstance() { if (instance == null) { instance = new EscolaSNMPTrapper(); return = 5, variablebindings = ".1", type = OctetString.class)) public void enviarfalha(final String message) = 15, variablebindings = = ".1", type = = ".2", type = Gauge32.class)) public void enviarinfobd(final String datasource, final int connections) = TrapType.ENTERPRISE_SPECIFIC, specifictype = 12345, variablebindings = = ".1", type = = ".2", type = = ".3", type = Counter32.class)) public void enviarmensagem(final String message, final int level, final int value) = 2, variablebindings = ".1", type = Gauge32.class), mbeanname = "java.lang:type=memory", mbeanattribute = "HeapMemoryUsage.used") public void enviarmemoriaheapusada() = ".1", type = OctetString.class), mbeanname = "br.gov.demoiselle:name=escola", mbeanattribute = "VersaoAplicacao") public void enviarversaoaplicacao() { 12

13 6. Adicione ao arquivo de configurações snmp.properties existente as linhas a seguir: # 2) trapping / passive check # enable a SNMP trapper that sends data to the server monitoring.snmp.trapper.enabled = true # the network protocol to be used (udp or tcp) monitoring.snmp.trapper.protocol = udp # name or IP address of the machine that SNMP server runs on monitoring.snmp.trapper.server = # the port of SNMP on its server (default 162) monitoring.snmp.trapper.port = 162 # name of the community to be considered monitoring.snmp.trapper.community = public # SNMP version (v1, v2c or v3) monitoring.snmp.trapper.version = v1 # enterprise OID for sending traps monitoring.snmp.trapper.enterprise_oid = # default generic trap type monitoring.snmp.trapper.generic_type = 6 # default specific trap type monitoring.snmp.trapper.specific_type = 1 # default application trap OID for sending traps monitoring.snmp.trapper.application_trap_oid = No arquivo pom.xml da aplicação inclua a referência à compilação por aspectos para artefatos que façam uso do componente Demoiselle Monitoring, tal como indicado a seguir: <plugin> <groupid>org.codehaus.mojo</groupid> <artifactid>aspectj-maven-plugin</artifactid> <version>1.3</version> <configuration> <source>1.5</source> <target>1.5</target> <aspectlibraries> <aspectlibrary> <groupid>br.gov.component.demoiselle</groupid> <artifactid>demoiselle-monitoring</artifactid> </aspectlibrary> </aspectlibraries> </configuration> <executions> <execution> <goals> <goal>compile</goal> <goal>test-compile</goal> </goals> </execution> </executions> </plugin> 13

14 8. Crie a classe ExemploUsoTrappers conforme código fonte exibido a seguir: package br.gov.sample.demoiselle.escola.business; import br.gov.sample.demoiselle.escola.monitoring.trapper.escolasnmptrapper; import br.gov.sample.demoiselle.escola.monitoring.trapper.iescolatrapper; public class ExemploUsoTrappers { public static void main(final String[] args) { // iniciar trappers EscolaSNMPTrapper.getInstance().start(); // invocar regras de negócio com envio de traps ExemploUsoTrappers exemplo = new ExemploUsoTrappers(); exemplo.executarinformativo(); exemplo.executarcomfalha(); // finalizar trappers EscolaSNMPTrapper.getInstance().stop(); public void executarcomfalha() { try { throw new Exception("Um erro ocorreu intencionalmente"); catch (Exception e) { EscolaSNMPTrapper.getInstance().enviarFalha(e.getMessage()); public void executarinformativo() { IEscolaTrapper trapper1 = EscolaSNMPTrapper.getInstance(); trapper1.enviarmemoriaheapusada(); trapper1.enviarinfobd("db1", 500); 9. Execute a classe ExemploUsoTrappers e observe as linhas inseridas no console do Eclipse (vide imagem a seguir): 14

15 10. Abra um terminal como superusuário (i.e. root ) e inicie o servidor SNMP para captura de traps (i.e. snmptrapd) utilizando a instrução a seguir. Execute novamente a classe Java de exemplo e acompanhe a chegada das notificações e mensagens: # snmptrapd -f -Le NET-SNMP version :53: (via UDP: [ ]:55019) TRAP, SNMP v1, community public SNMPv2-SMI::enterprises Enterprise Specific Trap (2) Uptime: 0:00:00.36 SNMPv2-SMI::enterprises = Gauge32: :53: (via UDP: [ ]:38062) TRAP, SNMP v1, community public SNMPv2-SMI::enterprises Enterprise Specific Trap (15) Uptime: 0:00:00.72 SNMPv2-SMI::enterprises = STRING: "db1" SNMPv2-SMI::enterprises = Gauge32: :53: (via UDP: [ ]:46024) TRAP, SNMP v1, community public SNMPv2-SMI::enterprises Enterprise Specific Trap (5) Uptime: 0:00:00.72 SNMPv2-SMI::enterprises = STRING: "Um erro ocorreu intencionalmente" Obs: Lembre-se de configurar o arquivo /etc/snmp/snmptrapd.conf incluindo a seguinte linha que define a comunidade public para o recebimento de traps. authcommunity log,execute,net public 11. Para que o envio destes traps ocorra de forma periódica em intervalos regulares e automaticamente, é preciso de classes do tipo checker. Crie a classe EscolaChecker estendendo a superclasse GenericChecker e utilize as tal como no código a seguir: package br.gov.sample.demoiselle.escola.monitoring.checker; import java.util.concurrent.timeunit; import br.gov.component.demoiselle.monitoring.checker.genericchecker; import br.gov.component.demoiselle.monitoring.checker.scheduledcheck; import br.gov.component.demoiselle.monitoring.trapper.trapper; import br.gov.sample.demoiselle.escola.monitoring.trapper.escolasnmptrapper; public class EscolaChecker extends GenericChecker private EscolaSNMPTrapper = 30, unit = TimeUnit.SECONDS) public void checkdatabases() { int conn1 = (int) (Math.random() * 1000); int conn3 = (int) (Math.random() * 1000); this.snmptrapper.enviarinfobd("db1", conn1); this.snmptrapper.enviarinfobd("db3", = 1, unit = TimeUnit.MINUTES) public void checkusedmemory() { this.snmptrapper.enviarmemoriaheapusada(); 15

16 12. Altere o arquivo de configurações demoiselle.properties incluindo as linhas a seguir: # Custom trapper classes to be loaded on application startup component.demoiselle.monitoring.trappers = \ br.gov.sample.demoiselle.escola.monitoring.trapper.escolasnmptrapper # Custom checker classes to be loaded on application startup component.demoiselle.monitoring.checkers = \ br.gov.sample.demoiselle.escola.monitoring.checker.escolachecker 13. Publique novamente a aplicação Web no contêiner Apache Tomcat e observe o envio periódico de traps no console do Eclipse (vide imagem a seguir) e no terminal com o serviço SNMP: 16

17 Exercício 10.3 Polling Zabbix: Criação e utilização do agente 1. Para a abordagem específica utilizando Zabbix é preciso também criar uma interface inicial estendendo IMBean. Como já criamos a EscolaMonitoringMBean, podemos reutilizá-la nesta seção: package br.gov.sample.demoiselle.escola.monitoring.mbean; import br.gov.component.demoiselle.monitoring.jmx.imbean; public interface EscolaMonitoringMBean extends IMBean { long getqtdalunosmatriculados(); int getqtdturmasincluidas(); String getversaoaplicacao(); String getultimousuariologado(); int getnivellog(); void setnivellog(int nivellog); 2. Tal como na abordagem genérica com SNMP, para Zabbix também precisamos criar uma classe que implemente a interface EscolaMonitoringMBean, porém desta vez apenas a precisará ser utilizada. Ela servirá para identificar o Managed Bean no servidor JMX. O código final da classe EscolaMonitoring deve ficar assim: package br.gov.sample.demoiselle.escola.monitoring.mbean; import = "br.gov.demoiselle:name=escola") public class EscolaMonitoring implements EscolaMonitoringMBean { private long qtdalunos = 0; public long getqtdalunosmatriculados() { this.qtdalunos = (int) (Math.random() * 100) + 100; return this.qtdalunos; private int qtdturmas = 0; public int getqtdturmasincluidas() { this.qtdturmas += (int) (Math.random() * 10); return this.qtdturmas; private static final String[] USUARIOS = { "Fulano", "Sicrano", "Beltrano" ; public String getultimousuariologado() { int pos = (int) (Math.random() * USUARIOS.length); return USUARIOS[pos]; private static final String VERSAO = "2.4.1-RC2"; public String getversaoaplicacao() { return VERSAO; 17

18 private int nivellog = 1; public int getnivellog() { return this.nivellog; public void setnivellog(final int nivellog) { this.nivellog = nivellog; 3. Crie o arquivo de configurações zabbix.properties específico para serviços Zabbix contendo as linhas a seguir: # Zabbix Configuration # 1) polling / active check # enable a Zabbix agent that handles JMX queries monitoring.zabbix.agent.enabled = true # the port that the agent listens on (default 10052) monitoring.zabbix.agent.port = # the address to listen on, or '*' to listen on any available address monitoring.zabbix.agent.address = * # protocol version to use (default 1.4) monitoring.zabbix.agent.protocol = Associe o listener de Zabbix na aplicação Web incluindo as seguintes linhas no arquivo WEB- INF/web.xml: <!-- Demoiselle Monitoring Configuration (Zabbix) --> <listener> <listener-class> br.gov.component.demoiselle.monitoring.web.zabbix.zabbixlistener </listener-class> </listener> 5. Publique a aplicação Web no contêiner Apache Tomcat e observe as linhas inseridas no console do Eclipse (vide imagem a seguir): Com isso o agente Zabbix está pronto para receber requisições TCP na porta

19 6. Para conferir se o serviço está funcionando devidamente, abra um terminal e execute o comando telnet passando o servidor (localhost) e a porta (10052). Assim que a conexão TCP tiver sido estabelecida, envie a requisição no protocolo 1.4 do Zabbix digitando um texto no seguinte formato: jmx[nome-do-mbean][nome-do-atributo]. Por exemplo, para invocar o método getultimousuariologado() exposto pela interface EscolaMonitoringMBean, execute as instruções destacadas conforme exemplo: $ telnet localhost Trying Connected to localhost. Escape character is '^]'. jmx[br.gov.demoiselle:name=escola][ultimousuariologado] ZBXD#SicranoConnection closed by foreign host. 7. A string ZBXD faz parte do protocolo, observe que a resposta de cada requisição aparece a seguir (no exemplo: Sicrano ). Teste a execução com os demais atributos exportados pelo MBean. É possível ainda enviar múltiplas consultas de atributos em uma única requisição, tal como no exemplo a seguir: $ telnet localhost Trying Connected to localhost. Escape character is '^]'. jmx[br.gov.demoiselle:name=escola][qtdalunosmatriculados] jmx[br.gov.demoiselle:name=escola][qtdturmasincluidas] jmx[br.gov.demoiselle:name=escola][versaoaplicacao] jmx[br.gov.demoiselle:name=escola][ultimousuariologado] jmx[br.gov.demoiselle:name=escola][nivellog] ZBXD##116ZBXD##0ZBXD# Connection closed by foreign host RC2ZBXDBeltranoZBXD##1 19

20 Exercício 10.4 Trapping Zabbix: Criação e utilização do trapper 1. O desenvolvimento de trappers utilizando a abordagem específica com o Zabbix começa da mesma forma que com SNMP. É preciso criar a interface IEscolaTrapper estendendo a interface ITrapper e com o seguinte conteúdo: package br.gov.sample.demoiselle.escola.monitoring.trapper; import br.gov.component.demoiselle.monitoring.trapper.itrapper; public interface IEscolaTrapper extends ITrapper { void enviarfalha(string mensagem); void enviarinfobd(string base, int conexoes); void enviarmemoriaheapusada(); void enviarmensagem(string mensagem, int nivel, int valor); void enviarversaoaplicacao(); 2. Crie a classe EscolaZabbixTrapper herdando da superclasse ZabbixTrapper e implementando a interface IEscolaTrapper desenvolvida anteriormente, incluindo todos os métodos nela existentes: package br.gov.sample.demoiselle.escola.monitoring.trapper; import br.gov.component.demoiselle.monitoring.trapper.zabbix.zabbixtrapper; public class EscolaZabbixTrapper extends ZabbixTrapper implements IEscolaTrapper { 3. Inclua as para configurar o envio de traps Zabbix na classe EscolaZabbixTrapper conforme destacado no código a seguir: package br.gov.sample.demoiselle.escola.monitoring.trapper; import br.gov.component.demoiselle.monitoring.trapper.zabbix.zabbixhost; import br.gov.component.demoiselle.monitoring.trapper.zabbix.zabbixitem; import public class EscolaZabbixTrapper extends ZabbixTrapper implements IEscolaTrapper = "escola.message") public void enviarfalha(final String mensagem) = "escola.database[*]") public void enviarinfobd(final String base, final int conexoes) = "escola.memory[used]", mbeanname = "java.lang:type=memory", mbeanattribute = "HeapMemoryUsage.used") public void enviarmemoriaheapusada() { 20

21 @ZabbixItem(key = "escola.versao", mbeanname = "br.gov.demoiselle:name=escola", mbeanattribute = "VersaoAplicacao") public void enviarversaoaplicacao() { public void enviarmensagem(final String mensagem, final int nivel, final int valor) { 4. Na mesma classe, crie uma variável estática e privada para armazenar uma única instância do objeto e um método getinstance() para sempre referenciá-la (i.e. aplicação do padrão singleton): private static EscolaZabbixTrapper instance; public static synchronized EscolaZabbixTrapper getinstance() { if (instance == null) { instance = new EscolaZabbixTrapper(); return instance; 5. Adicione ao arquivo de configurações zabbix.properties existente as linhas a seguir: # 2) trapping / passive check # enable a Zabbix trapper that sends data to the server monitoring.zabbix.trapper.enabled = true # name or IP address of the machine that Zabbix runs on monitoring.zabbix.trapper.server = # the port of Zabbix on its server (default 10051) monitoring.zabbix.trapper.port = # name of the host as defined in the hosts section in Zabbix monitoring.zabbix.trapper.host = Armenia Zabbix # schedule automatic trapping of active checks monitoring.zabbix.trapper.active_checks = false # default item key to be used when sending traps monitoring.zabbix.trapper.default_key = escola.message 6. Modifique a classe ExemploUsoTrappers conforme destacado no código fonte exibido a seguir: package br.gov.sample.demoiselle.escola.business; import br.gov.sample.demoiselle.escola.monitoring.trapper.escolazabbixtrapper; import br.gov.sample.demoiselle.escola.monitoring.trapper.iescolatrapper; public class ExemploUsoTrappers { /** args */ public static void main(final String[] args) { // iniciar trappers EscolaZabbixTrapper.getInstance().start(); 21

22 // invocar regras de negócio com envio de traps ExemploUsoTrappers exemplo = new ExemploUsoTrappers(); exemplo.executarinformativo(); exemplo.executarcomfalha(); // finalizar trappers EscolaZabbixTrapper.getInstance().stop(); public void executarcomfalha() { try { throw new Exception("Um erro ocorreu intencionalmente"); catch (Exception e) { EscolaZabbixTrapper.getInstance().enviarFalha(e.getMessage()); public void executarinformativo() { IEscolaTrapper trapper2 = EscolaZabbixTrapper.getInstance(); trapper2.enviarmemoriaheapusada(); trapper2.enviarinfobd("db1", 500); 7. Execute a classe ExemploUsoTrappers e observe as linhas inseridas no console do Eclipse (vide imagem a seguir): Por enquanto ignore a exceção ConnectException levantada durante a tentativa de conexão. Para que o teste seja completamente validado é preciso ter à disposição um servidor Zabbix configurado com o host e indicadores definidos. Eis o resultado de uma execução com sucesso: 22

Desenvolvimento Web com Framework Demoiselle versão 1.1

Desenvolvimento Web com Framework Demoiselle versão 1.1 Desenvolvimento Web com Framework Demoiselle versão 1.1 Módulo 10: Monitoração de Ambientes Autor: Rodrigo Hjort SERPRO / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br

Leia mais

LOGGING DE EVENTOS COM LOG4J

LOGGING DE EVENTOS COM LOG4J LOGGING DE EVENTOS COM LOG4J por Luiz Gustavo Stábile de Souza O que é logging? Fazer o logging de uma aplicação é uma das possíveis maneiras de debugá-la, registrando em algum meio (arquivo, enviando

Leia mais

Universidade Federal do Rio Grande do Norte

Universidade Federal do Rio Grande do Norte Universidade Federal do Rio Grande do Norte Redes de Computadores - Camada de Aplicação Curso de Engenharia de Software Prof. Marcos Cesar Madruga/Thiago P. da Silva Material basedado em [Kurose&Ross 2009]

Leia mais

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação.

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. Introdução Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. O Log4j é um é um projeto open source distribuído pela Apache

Leia mais

Redes de Computadores II

Redes de Computadores II Redes de Computadores II Slide 1 Gerenciamento de Redes Gerenciamento de redes inclui o fornecimento, a integração e a coordenação de hardware, software e elementos humanos para monitorar, testar, configurar,

Leia mais

ANDROID APPLICATION PROJECT

ANDROID APPLICATION PROJECT Criando um programa Abrindo o programa Eclipse, clique na opção [FILE], depois em [NEW], selecione a opção [PROJECT], uma janela de opção do tipo de projeto irá se abrir, escolha [ANDROID] logo depois

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

MANUAL DO USUÁRIO DE REDE

MANUAL DO USUÁRIO DE REDE MANUAL DO USUÁRIO DE REDE Armazenar registro de impressão na rede Versão 0 BRA-POR Definições de observações Utilizamos o seguinte ícone neste Manual do Usuário: Observações indicam como você deve reagir

Leia mais

Prática em Laboratório N.01 Criando um Serviço Web via Console

Prática em Laboratório N.01 Criando um Serviço Web via Console Prática em Laboratório N.01 Criando um Serviço Web via Console O objetivo criar um serviço Web via console usando apenas um editor de texto. Obtenha os arquivos da Prática N.01 Você deve recuperar os arquivos

Leia mais

Para iniciar um agente SNMP, usamos o comando snmpd. Por padrão, aceita requisições na porta 161 (UDP).

Para iniciar um agente SNMP, usamos o comando snmpd. Por padrão, aceita requisições na porta 161 (UDP). EN3610 Gerenciamento e interoperabilidade de redes Prof. João Henrique Kleinschmidt Prática SNMP Net-SNMP (http://www.net-snmp.org) é um conjunto de aplicações usado para implementar SNMPv1, SNMPv2 e SNMPv3.

Leia mais

Desenvolvimento Web com Framework Demoiselle versão 1.0

Desenvolvimento Web com Framework Demoiselle versão 1.0 Desenvolvimento Web com Framework Demoiselle versão 1.0 Módulo 07: Outros Componentes Autor: Rodrigo Hjort Serpro / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br Modificado

Leia mais

Manual de Instalação e Configuração MySQL

Manual de Instalação e Configuração MySQL Manual de Instalação e Configuração MySQL Data alteração: 19/07/11 Pré Requisitos: 1. Baixar os seguintes arquivos no através do link http://ip.sysfar.com.br/install/ mysql-essential-5.1.46-win32.msi mysql-gui-tools-5.0-r17-win32.msi

Leia mais

LABORATÓRIO 3 (parte 2)

LABORATÓRIO 3 (parte 2) FACULDADE PITÁGORAS Tecnólogo em Redes de Computadores Desempenho de Redes Prof. Ulisses Cotta Cavalca LABORATÓRIO 3 (parte 2) OBJETIVOS Verificar e manipular ferramentas de desempenho

Leia mais

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS FUNDAMENTOS DE Visão geral sobre o Active Directory Um diretório é uma estrutura hierárquica que armazena informações sobre objetos na rede. Um serviço de diretório,

Leia mais

ESET Remote Administrator ESET EndPoint Solutions ESET Remote Adminstrator Workgroup Script de Logon

ESET Remote Administrator ESET EndPoint Solutions ESET Remote Adminstrator Workgroup Script de Logon AGENDA 1. Download dos pacotes de instalação ESET Remote Administrator 2. Download dos pacotes de instalação ESET EndPoint Solutions 3. Procedimento de instalação e configuração básica do ESET Remote Adminstrator

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

Leia mais

Manual de Instalação PIMSConnector em Windows

Manual de Instalação PIMSConnector em Windows Manual de Instalação PIMSConnector em Windows Julho/2015 Sumário 1. Contexto de negócio (Introdução)... 3 2. Pré-requisitos instalação/implantação/utilização... 4 3. JBOSS... 6 3.1. Instalação... 6 3.2.

Leia mais

INSTALANDO E CONFIGURANDO O ACTIVE DIRECTORY NO WINDOWS SERVER 2008

INSTALANDO E CONFIGURANDO O ACTIVE DIRECTORY NO WINDOWS SERVER 2008 INSTALANDO E CONFIGURANDO O ACTIVE DIRECTORY NO WINDOWS SERVER 2008 Objetivo Esse artigo tem como objetivo demonstrar como instalar e configurar o Active Directory no Windows Server 2008. Será também apresentado

Leia mais

Criação de um novo projeto no Eclipse utilizando Maven

Criação de um novo projeto no Eclipse utilizando Maven 1. Faça o download da versão mais atual do Eclipse IDE for Java EE Developers em https://www.eclipse.org/downloads/. 2. No Eclipse, crie um novo projeto Maven, em File >> New >> Maven Project 3. Marque

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

Para iniciar um agente SNMP, usamos o comando snmpd. Por padrão, aceita requisições na porta 161 (UDP).

Para iniciar um agente SNMP, usamos o comando snmpd. Por padrão, aceita requisições na porta 161 (UDP). EN3610 Gerenciamento e interoperabilidade de redes Prof. João Henrique Kleinschmidt Prática SNMP 1 MIBs RMON No Linux os arquivos MIB são armazenados no diretório /usr/share/snmp/mibs. Cada arquivo MIB

Leia mais

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments

Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments Criação de Servlets 1. Crie um novo projeto através do Menu File New Project. 2. Acesse o Menu File New. 3. Na janela Object Gallery que surgirá, selecione a guia Web. 4. Escolha o ícone que corresponde

Leia mais

LABORATÓRIO 3 (parte 1)

LABORATÓRIO 3 (parte 1) FACULDADE PITÁGORAS Tecnólogo em Redes de Computadores Desempenho de Redes Prof. Ulisses Cotta Cavalca LABORATÓRIO 3 (parte 1) OBJETIVOS Verificar e manipular ferramentas de desempenho

Leia mais

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon MDaemon GroupWare plugin para o Microsoft Outlook Trabalhe em Equipe Usando o Outlook e o MDaemon Versão 1 Manual do Usuário MDaemon GroupWare Plugin for Microsoft Outlook Conteúdo 2003 Alt-N Technologies.

Leia mais

Java 2 Standard Edition Como criar classes e objetos

Java 2 Standard Edition Como criar classes e objetos Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da

Leia mais

FTP Protocolo de Transferência de Arquivos

FTP Protocolo de Transferência de Arquivos FTP Protocolo de Transferência de Arquivos IFSC UNIDADE DE SÃO JOSÉ CURSO TÉCNICO SUBSEQUENTE DE TELECOMUNICAÇÕES! Prof. Tomás Grimm FTP - Protocolo O protocolo FTP é o serviço padrão da Internet para

Leia mais

GUIA PRÁTICO DE INSTALAÇÃO

GUIA PRÁTICO DE INSTALAÇÃO GUIA PRÁTICO DE INSTALAÇÃO 1 1. PROCEDIMENTOS ANTES DA INSTALAÇÃO SIGEP WEB - Gerenciador de Postagens dos Correios 1.1. Solicitar Senha para Fechamento de PLP Solicitar ao seu consultor comercial a senha

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Tutorial RMI (Remote Method Invocation) por Alabê Duarte Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos

Leia mais

INSTALANDO SQL SERVER 2008

INSTALANDO SQL SERVER 2008 VERSÃO 2 INSTALANDO SQL SERVER 2008 Pré-requisitos para instalação do SQL SERVER 2008 Antes de iniciar o instalador do SQL SERVER 2008 é necessário instalar os seguintes componentes: Microsoft Windows

Leia mais

Nesta sessão introduziremos os conceitos básicos do Cacti, e como fazer para instalá-lo em seu computador.

Nesta sessão introduziremos os conceitos básicos do Cacti, e como fazer para instalá-lo em seu computador. Cacti é uma ferramenta gráfica de gerenciamento de dados de rede que disponibiliza a seus usuários uma interface intuitiva e bem agradável de se usar, sendo acessível a qualquer tipo de usuários. Este

Leia mais

Manual de Instalação PIMSConnector em Linux

Manual de Instalação PIMSConnector em Linux Manual de Instalação PIMSConnector em Linux Julho/2015 Sumário 1. Contexto de negócio (Introdução)... 3 2. Pré-requisitos instalação/implantação/utilização... 4 3. JBOSS... 6 3.1. Instalação... 6 3.2.

Leia mais

Manual de Instalação do Servidor Orion Phoenix Versão 1.0 - Novembro/2010

Manual de Instalação do Servidor Orion Phoenix Versão 1.0 - Novembro/2010 Manual de Instalação do Servidor Orion Phoenix Versão 1.0 - Novembro/2010 Manual de Instalação do Sistema Orion Phoenix 1.0 - Novembro/2010 Página 1 SUMÁRIO 1. INTRODUÇÃO...3 2. VISÃO GERAL...3 3. PROCEDIMENTOS

Leia mais

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Características do Software Urano Integra 2.2 Data: 12/05/2014

Leia mais

EAI Manual do Administrador

EAI Manual do Administrador EAI Manual do Administrador 1 Definição de Host Application O que é um Host Application? Significa Aplicativo Hospedeiro, é o nome dado ao ambiente EAI que estará executando no seu computador ou em um

Leia mais

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. JDBC CRIANDO O BANCO DE DADOS: Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. CRIANDO O PROJETO JAVA PARA DESKTOP: Crie um projeto Java chamado Prograd Crie um pacote chamado

Leia mais

Tutorial Módulo 06 - Segurança

Tutorial Módulo 06 - Segurança LABORATÓRIO 06 Segurança Este laboratório tem por objetivo exercitar o uso do componente de segurança do Framework e uso da especificação JAAS. Objetivos: Uso do Login Module do Componente de Segurança

Leia mais

Guia do Demoiselle Audit Demoiselle Audit Paulo Gladson Ximenes Pinheiro Clóvis Lemes Ferreira Júnior

Guia do Demoiselle Audit Demoiselle Audit Paulo Gladson Ximenes Pinheiro Clóvis Lemes Ferreira Júnior Guia do Demoiselle Audit Demoiselle Audit Paulo Gladson Ximenes Pinheiro Clóvis Lemes Ferreira Júnior Demoiselle Audit... v 1. Auditor... 1 1.1. Auditor de Persistência... 1 1.2. Auditor de Visão... 1

Leia mais

Nesse artigo abordaremos os principais aspectos de instalação e uso do NTOP no Fedora Core 4.

Nesse artigo abordaremos os principais aspectos de instalação e uso do NTOP no Fedora Core 4. Diego M. Rodrigues (diego@drsolutions.com.br) O NTOP é um programa muito simples de ser instalado e não requer quase nenhuma configuração. Ele é capaz de gerar excelentes gráficos de monitoramento das

Leia mais

Escrito por Daniel Donda Qui, 06 de Novembro de 2008 18:21 - Última atualização Qui, 06 de Novembro de 2008 18:47

Escrito por Daniel Donda Qui, 06 de Novembro de 2008 18:21 - Última atualização Qui, 06 de Novembro de 2008 18:47 Conhecendo o Event Viewer Muito importante na manutenção e monitoramento de servidores o Event Viewer é uma ferramenta que gera logs de eventos tudo o que ocorre no servidor. Como o sistema nunca para

Leia mais

INTRODUÇÃO À TECNOLOGIA SERVLETS

INTRODUÇÃO À TECNOLOGIA SERVLETS PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores

Leia mais

PROTÓTIPO TIPO DE UM SOFTWARE AGENTE SNMP PARA REDE WINDOWS

PROTÓTIPO TIPO DE UM SOFTWARE AGENTE SNMP PARA REDE WINDOWS UNIVERSIDADE REGIONAL DE BLUMENAU BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO PROTÓTIPO TIPO DE UM SOFTWARE AGENTE SNMP PARA REDE WINDOWS Acadêmico: Luciano Waltrick Goeten Orientador: Prof. Sérgio Stringari

Leia mais

Processo de Envio de email

Processo de Envio de email Processo de Envio de email Introdução O envio de documentos de forma eletrônica vem sendo muito utilizado, assim o envio de arquivos, relatórios, avisos, informações é realizado via e-mail. O sistema disponibiliza

Leia mais

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC Módulo 5 No módulo anterior adaptamos nosso projeto para persistir as informações no banco de dados utilizando as facilidades da extensão demoiselle-jpa. Experimentamos o controle transacional do Framework

Leia mais

Instalação do Portal PMS Ambiente : Controladoria Data da publicação : 18/11/09 Países : Brasil Autor Wilker Valladares

Instalação do Portal PMS Ambiente : Controladoria Data da publicação : 18/11/09 Países : Brasil Autor Wilker Valladares Instalação do Portal PMS Ambiente : Controladoria Data da publicação : 18/11/09 Países : Brasil Autor Wilker Valladares O objetivo deste documento é capacitar o analista a instalar e configurar o Portal

Leia mais

Invocação de Métodos Remotos

Invocação de Métodos Remotos Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso

Leia mais

Application Notes: SNMP. Configuração do protocolo SNMP

Application Notes: SNMP. Configuração do protocolo SNMP Application Notes: SNMP Configuração do protocolo SNMP Application Notes: SNMP Configuração do protocolo SNMP. Data 10/05/2010, Revisão 1.1 Introdução Desenvolvimento Configurando o Protocolo SNMP Traps

Leia mais

NetBeans. Conhecendo um pouco da IDE

NetBeans. Conhecendo um pouco da IDE NetBeans Conhecendo um pouco da IDE Professor: Edwar Saliba Júnior Sumário Apresentação:...1 Criando Um Novo Projeto de Software:...1 Depurando Um Código-fonte:...4 Entendendo o Código-fonte:...7 Dica

Leia mais

Software de gerenciamento do sistema Intel. Guia do usuário do Pacote de gerenciamento do servidor modular Intel

Software de gerenciamento do sistema Intel. Guia do usuário do Pacote de gerenciamento do servidor modular Intel Software de gerenciamento do sistema Intel do servidor modular Intel Declarações de Caráter Legal AS INFORMAÇÕES CONTIDAS NESTE DOCUMENTO SÃO RELACIONADAS AOS PRODUTOS INTEL, PARA FINS DE SUPORTE ÀS PLACAS

Leia mais

2 Orientação a objetos na prática

2 Orientação a objetos na prática 2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos

Leia mais

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

Como utilizar a central de gerenciamento VPN.

Como utilizar a central de gerenciamento VPN. Como utilizar a central de gerenciamento VPN. Construir conexões VPN entre vários roteadores pode ser uma tarefa demorada. Em cada um dos roteadores há diversos parâmetros que precisam ser sincronizados,

Leia mais

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

Prática em Laboratório N.02 Criando um serviço Web via NetBeans

Prática em Laboratório N.02 Criando um serviço Web via NetBeans Prática em Laboratório N.02 Criando um serviço Web via NetBeans O objetivo deste exercício é criar um projeto apropriado para desenvolver um contêiner que você resolva utilizar. Uma vez criado o projeto,

Leia mais

Objetivo. Este documento tem como objetivo demonstrar o conceito, o processo de instalação e o funcionamento do SITEF (Tef dedicado).

Objetivo. Este documento tem como objetivo demonstrar o conceito, o processo de instalação e o funcionamento do SITEF (Tef dedicado). Sitef - Instalação Objetivo Este documento tem como objetivo demonstrar o conceito, o processo de instalação e o funcionamento do SITEF (Tef dedicado). O que é Sitef? O SiTef (ou tef dedicado) é um conjunto

Leia mais

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles: Instalação do Netz Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles: Instalação do Java SE 6, que pode ser instalado através da JDK.

Leia mais

USANDO O ROUNDCUBE WEBMAIL

USANDO O ROUNDCUBE WEBMAIL USANDO O ROUNDCUBE WEBMAIL ATENÇÃO! Para utilizar este tutorial não se esqueça: Onde estiver escrito seusite.com.br substitua pelo ENDEREÇO do seu site (domínio). Ex.: Se o endereço do seu site é casadecarnessilva.net

Leia mais

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0 MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO Motor Periférico Versão 8.0 1. Apresentação... 3 2. Instalação do Java... 3 2.1 Download e Instalação... 3 2.2 Verificar Instalação... 3 3. Download do Motor Periférico...

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva

Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva 1. O que são Serviços Web (Web Services)? Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva A ideia central dos Web Services parte da antiga necessidade

Leia mais

Configuração de Cliente de Web Service HTTPS

Configuração de Cliente de Web Service HTTPS Configuração de Cliente de Web Service HTTPS Envio de registros civis ao SIRC através de Central de Registros Civis Configurando_Cliente_de_Web_Service_HTTPS.odt 1 de 20 Histórico de Revisões Data Versão

Leia mais

e-mails editores de e-mails Como configurar contas de nos principais Como configurar contas de e-mails nos principais editores de e-mails

e-mails editores de e-mails Como configurar contas de nos principais Como configurar contas de e-mails nos principais editores de e-mails Como configurar contas de e-mails nos principais editores de e-mails Podemos acessar nossos e-mails pelo webmail, que é um endereço na internet. Os domínios que hospedam com a W3alpha, acessam os e-mails

Leia mais

CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS

CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS CONFIGURAÇÃO DE CODEC G729 AJUSTE DE VOLUME ONDE CONSEGUIR O SOFTFONE 1 INSTALAÇÃO

Leia mais

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback SMTP, POP, IMAP, DHCP e SNMP Professor Leonardo Larback Protocolo SMTP O SMTP (Simple Mail Transfer Protocol) é utilizado no sistema de correio eletrônico da Internet. Utiliza o protocolo TCP na camada

Leia mais

Criar um novo projeto

Criar um novo projeto Criar um novo projeto Esse passo-a-passo tem o intuito de auxiliar na criação de um novo projeto Java. Você verá os passos de criação utilizando os IDEs Eclipse e NetBeans. Eclipse 1. Inicie o Eclipse.

Leia mais

Projeto Amadeus. Guia de Instalação 00.95.00 Windows

Projeto Amadeus. Guia de Instalação 00.95.00 Windows Projeto Amadeus Guia de Instalação 00.95.00 Windows Agosto 2010 Sumário 1. Introdução...3 2. Pré-Requisitos...4 2.1 Máquina Virtual Java...4 2.2 Apache TomCat 6.0.18...4 2.3 PostgreSQL 8.3...5 3. Instalando

Leia mais

Manual de Instalação do Agente Citsmart

Manual de Instalação do Agente Citsmart 16/08/2013 Manual de Instalação do Agente Citsmart Fornece orientações necessárias para efetuar a instalação do Agente Citsmart. Versão 1.9 21/11/2014 Visão Resumida Data Criação 21/11/2014 Versão Documento

Leia mais

SPARK - Comunicador Instantâneo MANUAL DO USUÁRIO

SPARK - Comunicador Instantâneo MANUAL DO USUÁRIO SPARK - Comunicador Instantâneo MANUAL DO USUÁRIO BOA VISTA/RR NOVEMBRO DE 2011 Este manual tem por finalidade esclarecer o funcionamento do SPARK ao servidor interessado em usar este comunicador instantâneo.

Leia mais

Google Drive. Passos. Configurando o Google Drive

Google Drive. Passos. Configurando o Google Drive Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.

Leia mais

Programação para Internet Orientada a Objetos com PHP & MySQL Instalando e configurando um ambiente de ferramentas PHP e MySQL. Prof. MSc.

Programação para Internet Orientada a Objetos com PHP & MySQL Instalando e configurando um ambiente de ferramentas PHP e MySQL. Prof. MSc. Programação para Internet Orientada a Objetos com PHP & MySQL Instalando e configurando um ambiente de ferramentas PHP e MySQL Prof. MSc. Hugo Souza Na última aula falamos um pouco sobre as ferramentas

Leia mais

Procedimentos de Implantação ireport x Protheus

Procedimentos de Implantação ireport x Protheus Índice 1. INTRODUÇÃO... 2 2. CONFIGURAÇÃO... 2 1.1 Configurando o Protheus... 2 2.2 Configurando o ireports no Protheus... 2 2.3 Incluindo relatórios no Protheus... 4 3. CONFIGURANDO E UTILIZANDO O IREPORT

Leia mais

Java para WEB. Servlets

Java para WEB. Servlets Servlets Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP. Servlets é a segunda forma que veremos

Leia mais

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart.

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. 16/08/2013 BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. Versão 1.0 19/12/2014 Visão Resumida Data Criação 19/12/2014 Versão Documento 1.0 Projeto

Leia mais

Atividade Prática 05 Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

Atividade Prática 05 Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 Atividade Prática 05 Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 1. Configuração inicial de um Agente exclusivamente v3 com Autenticação e Privacidade Veremos como criar um usuário SNMP v3

Leia mais

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014.

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014. Faculdade de Tecnologia SENAC Goiás Disciplina: Gerenciamento de Rede de Computadores : Goiânia, 16 de novembro de 2014. Faculdade de Tecnologia SENAC Goiás Professor: Marissol Martins Alunos: Edy Laus,

Leia mais

Instalação e Configuração RPM Remote Print Manager para Windows 2000

Instalação e Configuração RPM Remote Print Manager para Windows 2000 Instalação e Configuração RPM Remote Print Manager para Windows 2000 Antes de iniciar a instalação do RPM Remote Print Manager parar Windows 2000, você necessita ter privilégios de "administrador" devido

Leia mais

Tutorial para envio de comunicados e SMS

Tutorial para envio de comunicados e SMS Tutorial para envio de comunicados e SMS Conteúdo 1. Enviando comunicado para os alunos... 1 2. Verificando a situação do envio dos e-mails para os alunos... 5 3. Enviando comunicado para colaboradores

Leia mais

Configurando o DDNS Management System

Configurando o DDNS Management System Configurando o DDNS Management System Solução 1: Com o desenvolvimento de sistemas de vigilância, cada vez mais usuários querem usar a conexão ADSL para realizar vigilância de vídeo através da rede. Porém

Leia mais

CONFIGURAÇÃO MINIMA EXIGIDA:

CONFIGURAÇÃO MINIMA EXIGIDA: Este tutorial parte do princípio que seu usuário já possua conhecimentos básicos sobre hardware, sistema operacional Windows XP ou superior, firewall, protocolo de rede TCP/IP e instalação de software.

Leia mais

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM...

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM... 1 de 30 INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 3.1. ONDE SE DEVE INSTALAR O SERVIDOR BAM?... 4 3.2. ONDE SE DEVE INSTALAR O PROGRAMADOR REMOTO BAM?... 4 3.3. COMO FAZER

Leia mais

MANUAL DO UTILIZADOR DE REDE

MANUAL DO UTILIZADOR DE REDE MANUAL DO UTILIZADOR DE REDE Guardar o registo de impressão na rede Versão 0 POR Definições de notas Ao longo do Manual do utilizador, é utilizado o seguinte ícone: Notas sobre como enfrentar situações

Leia mais

Segurança de Acesso a Banco de Dados no MS SQL Server

Segurança de Acesso a Banco de Dados no MS SQL Server Segurança de Acesso a Banco de Dados no MS SQL Server Para efetuar com sucesso os exemplos que serão mostrados a seguir é necessário que exista no SQL Server uma pessoa que se conecte como Administrador,

Leia mais

THREADS EM JAVA. George Gomes Cabral

THREADS EM JAVA. George Gomes Cabral THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores

Leia mais

J820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha (helder@acm.org)

J820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha (helder@acm.org) J820 Testes de interface Web com HttpUnit Helder da Rocha (helder@acm.org) O que é HttpUnit API Java para comunicação com servidores HTTP Permite que programas construam e enviem requisições, e depois

Leia mais

Print Audit 6 - SQL Server 2005 Express Edition Installation Guide

Print Audit 6 - SQL Server 2005 Express Edition Installation Guide Print Audit 6 - SQL Server 2005 Express Edition Installation Guide Resumo Este é um guia passo a passo para instalar o SQL Server 2005 Express Edition como base de dados para o Print Audit 6. Pré-Requisitos

Leia mais

Roteiro de Uso do InstallShield

Roteiro de Uso do InstallShield Roteiro de Uso do InstallShield Ao iniciar o InstallShield, a janela Welcome to InstallShield será exibida: Selecione a opção Create New Setup Project, para criar um novo modelo de instalação. A janela

Leia mais

CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS

CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS Voip do Brasil Telefone: 0800 889 9050 CONFIGURAÇÃO DO SOFTFONE EYEBEAM INSTALAÇÃO CONFIGURANDO A LICENÇA TESTE DE REPRODUÇÃO E GRAVAÇÃO CONFIGURAÇÃO DO SIP SETTINGS CONFIGURAÇÃO DE CODEC G729 AJUSTE DE

Leia mais

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada

Leia mais

Procedimentos para configuração em modo WDS

Procedimentos para configuração em modo WDS Procedimentos para configuração em modo WDS 1- WDS (Wireless Distribution System) permite o acesso de um DAP-1353 com o outro DAP-1353 de um modo padronizado. Dessa forma pode simplificar a infraestrutura

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS Manual de Instalação Tempro Software StavTISS Sumário 1. INTRODUÇÃO... 2 2. REQUISITOS DO SISTEMA... 3 3. INSTALAÇÃO... 4 4.

Leia mais

CONEXÃ O NFS-E SISTEMÃ ISS-INTEL UTILIZÃNDO JÃVÃ E SSL

CONEXÃ O NFS-E SISTEMÃ ISS-INTEL UTILIZÃNDO JÃVÃ E SSL CONEXÃ O NFS-E SISTEMÃ ISS-INTEL UTILIZÃNDO JÃVÃ E SSL Autor : Julio P. Leiser House Company Data : 17/08/2011 16:00 ETAPA 1 IMPORTAR CERTIFICADO A1 DO CLIENTE COM EXTENSÃO.PFX NO INTERNET EXPLORER A partir

Leia mais

Para que seja instalado o Bematef Total, é necessário que o computador onde seja efetuada a instalação

Para que seja instalado o Bematef Total, é necessário que o computador onde seja efetuada a instalação Rafael Ferreira Rodrigues REVISADO POR: Raquel Marques APROVADO POR: Renato Reguera dos Santos 1 - Objetivo Descrever o processo de instalação do Bematef Total. 2 - Campos de Aplicação É aplicável a área

Leia mais

FTP - Protocolo. O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores.

FTP - Protocolo. O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores. FTP FTP - Protocolo O protocolo FTP é o serviço padrão da Internet para a transferência de arquivos entre computadores. A partir do FTP usuários podem receber ou enviar arquivos de ou para outros computadores

Leia mais

Iniciando o MySQL Query Brower

Iniciando o MySQL Query Brower MySQL Query Brower O MySQL Query Browser é uma ferramenta gráfica fornecida pela MySQL AB para criar, executar e otimizar solicitações SQL em um ambiente gráfico. Assim como o MySQL Administrator foi criado

Leia mais