[comment]: # ({92b4e67d-25de3dba})
# 1 Construindo plugins carregáveis

[comment]: # ({/92b4e67d-25de3dba})

[comment]: # ({bc1ff65c-55534b94})
### Visão geral 

Esta página fornece os passos necessários para construir um arquivo binário de plugin carregável partir das fontes. 

Se o arquivoTAR for baixado, é possível construir o plugin offline, i.e. sem conexão com a internet. 

O plugin PostgreSQL é usado como exemplo. Outros plugins carregáveis podem ser construídos de forma similar.

[comment]: # ({/bc1ff65c-55534b94})

[comment]: # ({a9697414-10bb98ef})
### Etapas

**1**. Baixe os arquivos de plugin em 
[Zabbix Cloud Images and Appliances](https://cdn.zabbix.com/zabbix-agent2-plugins/sources/).
A página oficial para download estará disponível em breve.

**2**. Transfira o arquivo para a máquina onde você está construindo o plugin. 

**3**. Descompactar o arquivo TAR, e.g.: 

    tar xvf zabbix-agent2-plugin-postgresql-6.0.13.tar.gz

Certifique-se de substituir "zabbix-agent2-plugin-postgresql-6.0.13.tar.gz" com o nome do arquivo baixado. 

**4**. Acesse o diretório extraído:

    cd <path to directory>

**5**. Run:

    make

**6**. O plugin executado pode ser colocado  em qualquer lugar contanto que seja  carregável pelo Zabbix agent 2. Especifique o caminho para o arquivo binário do plugin no arquivo de  configuração do plugin, e.g. em postgresql.conf para o plugin PostgreSQL:

    Plugins.PostgreSQL.System.Path=/path/to/executable/zabbix-agent2-plugin-postgresql

**7**. O caminho para o arquivo de configuração do plugin deve ser especificado  no parâmetro 'Include' do arquivo de configuração do Zabbix agent 2:

    Include=/path/to/plugin/configuration/file/postgresql.conf

[comment]: # ({/a9697414-10bb98ef})

[comment]: # ({07350bcb-f9fd2647})
### Alvos do Makefile 

Os plugins carregáveis fornecidos pelo Zabbix possuem 'makefiles' simples com os seguintes alvos: 

|Target|Descrição|
|--|--------|
|make|Construir plugin.|
|make limpar|Deletar todos os aquivos que são geralmente criados pela construção de plugin.|
|make verificar|Performar testes próprios. É necessário um banco de dados PostgreSQL real.|
|make estilo|Verificar código Go style com 'golangci-lint'.|
|make formatar|Formatar código Go  com 'go fmt'.|
|make distribuição|Criar um arquivo contendo as fontes de plugin e as fontes de todos os pacotes necessários para construir o plugin e seus testes próprios.|

[comment]: # ({/07350bcb-f9fd2647})
