> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/pt/monitorizacao-e-registos/log-analytics.md).

# Ligar o Azure Log Analytics Workspace

Ligue um Azure Log Analytics workspace ao RealmJoin Portal com o módulo RealmJoin PowerShell para armazenar registos de auditoria, operacionais e de runbook no seu próprio tenant.

## Visão geral

O Portal RealmJoin pode usar um Log Analytics Workspace na sua própria subscrição do Azure para armazenar

* o seu **registo de auditoria** — todas as ações realizadas no Portal, consulte [Registo de auditoria](/pt/monitorizacao-e-registos/audit-log.md)
* o seu **registos operacionais**
* **registos de runbooks**, arquivados para além da retenção máxima do Azure Automation (atualmente 30 dias)

Além disso, o RealmJoin pode ler [Relatórios do Windows Update for Business](https://learn.microsoft.com/en-us/windows/deployment/update/wufb-reports-overview) dados de um Log Analytics Workspace para apresentar possíveis problemas com atualizações do Windows, tais como [Suspensões de Salvaguarda do Windows Update](https://docs.microsoft.com/en-us/windows/deployment/update/safeguard-holds), na [página de detalhes do dispositivo](/pt/ugd-management/user-list/device-details.md). Consulte [Relatórios do Windows Update for Business](#windows-update-for-business-reports).

O espaço de trabalho é configurado com o [módulo PowerShell RealmJoin](/pt/implementacao/onboarding-realmjoin-portal/advanced-setup.md). O Portal gera um comando pronto a copiar para si — não há nada a preencher manualmente.

{% hint style="info" %}
O Log Analytics já está configurado para o seu Tenant e utiliza a API Data Collector descontinuada? Então siga [Migrar para a API Log Ingestion](/pt/monitorizacao-e-registos/log-ingestion-api-migration.md) em vez disso — reutiliza o seu espaço de trabalho existente e mantém os seus registos existentes.
{% endhint %}

## Componentes

O RealmJoin escreve os seus registos através da API Azure Monitor **Logs Ingestion API**, baseada em [Regras de Recolha de Dados (DCRs)](https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/data-collection-rule-overview) e autenticação Microsoft Entra ID. A execução do comando de configuração cria:

* O **RealmJoin Azure Resources** Service Principal no seu Tenant Entra ID (caso ainda não exista)
* Um **Log Analytics Workspace** no grupo de recursos que escolher — ou o seu espaço de trabalho existente, se indicar um
* Três tabelas personalizadas nesse espaço de trabalho: `RJAuditLogs_CL`, `RJOperationalLogs_CL`, `RJRunbookLogs_CL`
* Uma Regra de Recolha de Dados por tabela (`dcr-rj-aud-logs-*`, `dcr-rj-op-logs-*`, `dcr-rj-rb-logs-*`), cada uma com o seu próprio ponto de extremidade de ingestão direta
* Exatamente dois tipos de atribuição de função para o RealmJoin, e nada mais além deles:
  * **Leitor do Log Analytics** no espaço de trabalho, para que o Portal possa consultar os seus registos
  * **Publicador de Métricas de Monitorização** em cada uma das três Regras de Recolha de Dados, para que o RealmJoin possa escrever nelas

O RealmJoin não recebe qualquer outra permissão na sua subscrição. Não estão envolvidos registo de aplicação, segredo de cliente nem chave partilhada do espaço de trabalho. A implementação é idempotente — voltar a executar o mesmo comando é seguro e aplica apenas o que estiver em falta.

## Pré-requisitos

### No Portal RealmJoin

* Uma função que conceda acesso à área Definições (`CanReadSettingsDetails`, consulte [Permissões disponíveis](/pt/administracao-e-definicoes/permission/custom-roles/available-permissions.md)). A página de definições gera o comando de configuração, incluindo um token de integração de curta duração.

### No Azure

* Uma subscrição do Azure e um **grupo de recursos existente** onde implementar — o módulo não cria o grupo de recursos
* Opcionalmente, um Log Analytics Workspace existente. Se não indicar um, é criado um espaço de trabalho para si na região do grupo de recursos.

### Na máquina que executa o PowerShell

* **PowerShell 5.1** ou posterior (Windows PowerShell ou PowerShell 7)
* Acesso à [Galeria do PowerShell](https://www.powershellgallery.com/packages/RealmJoin) para instalar o módulo RealmJoin
* O `Az.Accounts`, `Az.Resources` e `Az.Automation` módulos — o módulo RealmJoin instala-os automaticamente nas versões fixadas, para o utilizador atual

### Permissões da conta com que inicia sessão

* **Microsoft Entra ID:** permissão para criar Service Principals, por exemplo *Administrador de Aplicações*, *Administrador de Aplicações na Nuvem* ou *Administrador Global*. Necessário apenas na primeira vez, quando o Service Principal RealmJoin Azure Resources ainda não existe.
* **Subscrição do Azure:** permissão para implementar no grupo de recursos **e** para criar atribuições de função nele — por exemplo *Proprietário*, ou *Contribuidor* combinado com *Administrador de Acesso de Utilizadores* / *Administrador de Controlo de Acesso Baseado em Funções*.
* O início de sessão é efetuado através de `Connect-AzAccount`, que utiliza a aplicação primária **Azure PowerShell** . Os Tenants que restringem o consentimento do utilizador poderão ter de conceder primeiro consentimento de administrador a essa aplicação.

{% hint style="warning" %}
Execute o comando numa sessão **local, recém-aberta** do PowerShell e evite **Azure Cloud Shell**. O módulo RealmJoin requer versões exatas dos módulos `Az.*` . Se já estiver carregada uma versão diferente na sessão — o que normalmente acontece no Cloud Shell — o módulo para devido a um conflito de versões que só pode ser resolvido abrindo uma nova sessão.
{% endhint %}

## Configuração

{% stepper %}
{% step %}

#### Preparar o grupo de recursos

No Azure Portal, crie ou escolha o grupo de recursos que deve conter o espaço de trabalho. Anote o respetivo nome e o ID da subscrição onde se encontra.

Se pretender utilizar um **existente** Log Analytics Workspace, anote também o respetivo nome.
{% endstep %}

{% step %}

#### Copiar o comando do Portal RealmJoin

No Portal RealmJoin, navegue para **Definições → Log Analytics** (<https://portal.realmjoin.com/settings/log-analytics-configuration>).

A página indica que o Log Analytics é gerido através do módulo PowerShell RealmJoin e apresenta um bloco de comandos. Use o botão **Copiar** para o copiar.

```powershell
$latest = [version](Find-Module RealmJoin -Repository PSGallery -ErrorAction Stop).Version
if (-not (Get-Module -ListAvailable RealmJoin | Where-Object Version -ge $latest)) {
    Install-Module RealmJoin -Force -AllowClobber -ErrorAction Stop
}
Import-Module RealmJoin -Force
Set-RJLogAnalyticsWorkspace -Token "<Token>" 6>&1
```

As primeiras linhas instalam ou atualizam o módulo RealmJoin e importam-no. `Set-RJLogAnalyticsWorkspace` efetua a implementação e regista o resultado no RealmJoin utilizando o `-Token`.

{% hint style="info" %}
**Acerca de `6>&1`:** estes comandos comunicam o respetivo progresso no fluxo de Informações do PowerShell. O `6>&1` redirecionamento apresenta essa saída na consola — sem ele, não verá quaisquer mensagens de progresso.
{% endhint %}
{% endstep %}

{% step %}

#### Adicionar os parâmetros de destino

`Set-RJLogAnalyticsWorkspace` precisa de saber onde implementar. Complete a última linha antes de a executar:

```powershell
Set-RJLogAnalyticsWorkspace -ResourceGroupName "rg-realmjoin" -SubscriptionId "<SubscriptionId>" -Token "<Token>" 6>&1
```

* `-ResourceGroupName` é obrigatório. Se o omitir, o PowerShell solicita-o.
* `-SubscriptionId` é opcional — sem ele, é utilizada a subscrição do seu contexto Azure atual e é-lhe pedido que escolha se existirem várias disponíveis.
* `-WorkspaceName` é opcional. Transmita-o para definir o nome de um novo espaço de trabalho ou para utilizar um **existente** espaço de trabalho; caso contrário, é criado um novo com um nome gerado.
  {% endstep %}

{% step %}

#### Executar o comando

Cole o bloco numa nova sessão do PowerShell e execute-o. O token é válido durante cerca de uma hora — se tiver expirado, recarregue a página de definições e copie novamente o comando.

Ser-lhe-á pedido que inicie sessão com `Connect-AzAccount`. Se a sua conta tiver acesso a vários Tenants ou subscrições, o módulo pede-lhe que escolha.

Em seguida, a implementação comunica cada recurso à medida que é criado: o Service Principal, o espaço de trabalho, as tabelas personalizadas, as Regras de Recolha de Dados e as atribuições de função. Uma única execução normalmente demora alguns minutos.

{% hint style="info" %}
Quer ver primeiro o que aconteceria? Acrescente `-WhatIf` para uma pré-visualização What-If do Azure Resource Manager. Tenha em atenção que o início de sessão e a instalação dos módulos `Az` ainda ocorrem, porque a pré-visualização necessita de ambos.
{% endhint %}

{% hint style="info" %}
**Terminar sessão depois:** o início de sessão no Azure permanece ativo após o comando terminar. Quando tiver concluído, execute `Disconnect-AzAccount` para terminar sessão na sessão existente.
{% endhint %}
{% endstep %}

{% step %}

#### Verificar no Portal

Regresse a **Definições → Log Analytics** e selecione **Atualizar**.

A página apresenta agora a subscrição, o grupo de recursos, o nome do espaço de trabalho, o ID do espaço de trabalho do cliente e o ID do Tenant como campos só de leitura — estas definições passam a ser mantidas pelo módulo PowerShell. Em **Avançadas** pode rever os pontos de extremidade, nomes das regras e nomes dos fluxos das três Regras de Recolha de Dados.

Selecione **Verificar problemas de configuração** para verificar se todas as permissões Azure necessárias estão em vigor no espaço de trabalho e em cada Regra de Recolha de Dados.

Depois, abra o [Registo de auditoria](/pt/monitorizacao-e-registos/audit-log.md) ou os [Registos de Runbooks](/pt/automatizacao/runbooks/runbook-logs.md) e confirme que aparecem entradas. O Azure precisa de alguns minutos para disponibilizar tabelas personalizadas recém-criadas.
{% endstep %}
{% endstepper %}

## Retenção de dados

{% hint style="warning" %}
Para manter os registos durante mais de 30 dias, ajuste a [retenção de dados do espaço de trabalho](https://learn.microsoft.com/en-us/azure/azure-monitor/logs/data-retention-archive?tabs=portal-1%2Cportal-2) no Azure. Tanto a predefinição do espaço de trabalho como a retenção do Azure Automation são de 30 dias.
{% endhint %}

## Manter o esquema atualizado

Se o RealmJoin expandir o esquema de registos numa versão futura, a página de definições apresenta um aviso de que o esquema Log Analytics implementado está desatualizado, juntamente com o comando para o atualizar. Esse é o **mesmo** `Set-RJLogAnalyticsWorkspace` comando — execute-o novamente e as tabelas e regras serão atualizadas no local.

## Relatórios do Windows Update for Business

[Relatórios do Windows Update for Business](https://learn.microsoft.com/en-us/windows/deployment/update/wufb-reports-overview) (anteriormente Update Compliance) escreve eventos relacionados com atualizações num Log Analytics Workspace. O RealmJoin pode ler esses eventos e apresentá-los na [página de detalhes do dispositivo](/pt/ugd-management/user-list/device-details.md).

Isto é independente do espaço de trabalho no qual o RealmJoin escreve os seus próprios registos. Pode direcionar o RealmJoin para o mesmo espaço de trabalho ou para outro separado.

{% stepper %}
{% step %}

#### Ativar os Relatórios do Windows Update for Business no Azure

1. No Azure Portal, navegue para Monitorizar > Livros
2. Procure "Windows Update for Business reports"<br>

   <figure><img src="https://686519968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FfBOTmN3GcHGpSexgP8SH%2Fimage.png?alt=media&amp;token=d4cb49a2-38f7-4a5d-a02b-273c9eeb0589" alt=""><figcaption></figcaption></figure>
3. Defina a sua Subscrição e o Espaço de Trabalho que deve receber os dados.\
   ![](https://686519968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FbpoMlLuJrekhPZpWKdM1%2Fimage.png?alt=media\&token=10a65dd5-fa55-413a-9e5c-7d6b93e09acd)
4. Guardar definições

{% hint style="warning" %}
Os relatórios do Windows Update for Business podem demorar até 24 horas a aplicar-se.
{% endhint %}
{% endstep %}

{% step %}

#### Anotar o ID do espaço de trabalho

Abra o espaço de trabalho no Azure Portal e copie o **ID do Espaço de Trabalho** (um GUID) da respetiva página Visão geral.
{% endstep %}

{% step %}

#### Introduzir o ID do espaço de trabalho no Portal RealmJoin

Navegue para **Definições → Conformidade de Atualizações**, introduza o ID do espaço de trabalho e selecione **Guardar**. Deixe o campo vazio para desativar os relatórios de Suspensão de Salvaguarda para este Tenant.
{% endstep %}

{% step %}

#### Conceder acesso de leitura ao RealmJoin

Depois de guardar, a página apresenta um bloco de comandos. Concede ao Service Principal RealmJoin Azure Resources **Leitor do Log Analytics** nesse espaço de trabalho — não é implementado nem alterado mais nada:

```powershell
Grant-RJUpdateComplianceWorkspaceAccess -WorkspaceId "<WorkspaceId>" 6>&1
```

Se o espaço de trabalho estiver numa subscrição diferente do seu contexto Azure atual, adicione `-SubscriptionId "<SubscriptionId>"`.

A criação desta atribuição de função requer permissão para gerir o acesso no espaço de trabalho, por exemplo *Proprietário* ou *Administrador de Acesso de Utilizadores*.
{% endstep %}
{% endstepper %}

## Configuração legada (API Data Collector)

{% hint style="danger" %}
A configuração abaixo utiliza a API Azure Monitor **HTTP Data Collector API**, cujo suporte a Microsoft termina em **14 de setembro de 2026**. Está documentada apenas como referência para Tenants que foram configurados desta forma no passado. Não a utilize para novas configurações — siga o procedimento [Configuração](#setup) acima, ou [migre uma configuração existente](/pt/monitorizacao-e-registos/log-ingestion-api-migration.md).
{% endhint %}

<details>

<summary>Mostrar a configuração legada</summary>

Neste percurso, o RealmJoin autenticava-se com um registo de aplicação Entra ID pertencente ao cliente e a chave partilhada do espaço de trabalho, e escrevia nas tabelas `AuditLogs_CL`, `OperationalLogs_CL` e `RunbookLogs_CL`.

**Parte 1 — Autenticação com um registo de aplicação Azure**

1. No Azure Portal, navegue para Microsoft Entra ID > Gerir > Registos de aplicações.
2. Selecione o separador Todas as Aplicações.
3. Reutilize o registo de aplicação "RealmJoin Runbooks Management" criado quando [runbooks de integração](/pt/automatizacao/connecting-azure-automation.md), ou selecione "Novo Registo" e registe uma nova aplicação.
4. Na aplicação, navegue para Gerir > Certificados e Segredos, selecione o separador "Segredos de Cliente" e crie um novo segredo de cliente. Defina a descrição e a expiração de acordo com as suas políticas internas de nomenclatura e segurança.
5. Anote o valor do segredo de forma segura — ao sair da página, o Azure ofusca-o, sendo necessário criar um novo segredo.

**Parte 2 — Criar um Log Analytics Workspace**

1. No Azure Portal, navegue para Log Analytics Workspace e selecione Criar.
2. Indique um grupo de recursos, nome e região, conforme necessário.
3. No separador "Visão geral", anote o nome do grupo de recursos, o nome do espaço de trabalho e o ID do espaço de trabalho.

**Parte 3 — Permissões do Azure**

1. Navegue para a subscrição onde se encontra o seu Log Analytics Workspace.
2. Selecione Controlo de Acesso (IAM) e adicione uma atribuição de função.
3. Conceda ao seu registo de aplicação **Contribuidor de Monitorização** no espaço de trabalho utilizado para os registos do RealmJoin, e **Leitor de Monitorização** num espaço de trabalho utilizado apenas para Relatórios do Windows Update for Business.
4. Reveja e guarde a atribuição de função.

**Parte 4 — Ligar o RealmJoin e o espaço de trabalho**

No Portal RealmJoin, navegue para Definições > Log Analytics e preencha os campos:

* **TenantId** — o ID do seu Tenant Entra ID, na página Visão geral do Entra ID
* **ClientId** e **ClientSecret** — o registo de aplicação da Parte 1
* **ID do Espaço de Trabalho de Conformidade de Atualizações** — o ID do espaço de trabalho dos Relatórios do Windows Update for Business
* **ID da Subscrição**, **Grupo de Recursos** e **Nome do Espaço de Trabalho** — do espaço de trabalho da Parte 2
* **ID do Espaço de Trabalho do Cliente** — o ID do espaço de trabalho que armazena dados de registo de auditoria e runbooks do RealmJoin
* **Chave do Espaço de Trabalho do Cliente** — a "Chave Primária" do espaço de trabalho, que permite ao RealmJoin escrever dados. Pode ser obtida com a [CLI do Azure](https://learn.microsoft.com/en-us/cli/azure/monitor/log-analytics/workspace?view=azure-cli-latest#az-monitor-log-analytics-workspace-get-shared-keys) (`az monitor log-analytics workspace get-shared-keys --resource-group MyResourceGroup --workspace-name MyWorkspace`) ou com o [PowerShell](https://learn.microsoft.com/en-us/powershell/module/az.operationalinsights/get-azoperationalinsightsworkspacesharedkey?view=azps-14.6.0) (`Get-AzOperationalInsightsWorkspaceSharedKey -ResourceGroupName "MyResourceGroup" -Name "MyWorkspace"`).

Prima **Guardar** depois de preencher todos os campos. O sistema dá-lhe feedback se tudo tiver funcionado.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.realmjoin.com/pt/monitorizacao-e-registos/log-analytics.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
