Compartilhar via


HealthInformation Classe

  • java.lang.Object
    • system.fabric.health.HealthInformation

public class HealthInformation

Contém as informações de integridade sobre a entidade. Essas informações estão incluídas no relatório de integridade. Ele também é fornecido como parte do evento de integridade.

Resumo do campo

Modificador e tipo Campo e descrição
final long autoSequenceNumber
final long unknownSequenceNumber

Resumo do Construtor

Construtor Description
HealthInformation(String sourceId, String property, HealthState healthState)

Inicializa uma nova instância da classe system.fabric.health.HealthInformation.

Resumo do método

Modificador e tipo Método e descrição
String getDescription()

Obtém a descrição das informações de integridade. Ele representa texto livre usado para adicionar informações legíveis humanas sobre o relatório.

Observações:O comprimento máximo da cadeia de caracteres para a descrição é de 4096 caracteres.

HealthState getHealthState()

Obtém o estado de integridade das informações de integridade.

Observações:Os estados de integridade aceitos são system.fabric.health.HealthState#Ok, system.fabric.health.HealthState#Warning e system.fabric.health.HealthState#Error.

String getProperty()

Obtém a propriedade do relatório de integridade.

Observações:A propriedade é uma String e não uma enumeração fixa para permitir que o repórter categorize o evento de integridade para uma propriedade específica da entidade. Por exemplo, o relator A pode relatar a integridade da propriedade “storage” de Node01 e o relator B pode relatar a integridade na propriedade “connectivity” de Node01. No Repositório de Integridade, esses relatórios são tratados como eventos de integridade distintos para a entidade Node01.

long getSequenceNumber()

Obtém o número de sequência associado ao relatório. Deve ser maior que system.fabric.health.HealthInformation#unknownSequenceNumber.

Observações:O número de sequência de relatório é usado pelo repositório de integridade para detectar relatórios obsoletos. Na maioria das vezes, o repórter não precisa especificar o número de sequência. Em vez disso, o valor padrão AutoSequenceNumber pode ser usado. Quando um cliente de integridade recebe um relatório com o Número de sequência automático, ele substitui o número de sequência automática por um número de sequência válido. O número de sequência tem a garantia de aumentar no mesmo processo, mesmo se o tempo do computador cliente retroceder.

String getSourceId()

Obtém o Identificador de origem que identifica o componente watchdog/sistema que gerou as informações de integridade.

Duration getTimeToLive()

Obtém por quanto tempo o relatório de integridade é válido. Deve ser maior que TimeSpan.Zero.

Observações:Quando os clientes relatam periodicamente, eles devem enviar relatórios com frequência maior do que a vida útil. Se os clientes gerarem relatórios sobre a transição, poderão definir o tempo de vida como infinito. Quando a vida útil expirar, o evento de integridade que contém as informações de integridade será removido do repositório de integridade, se RemoveWhenExpired for true ou avaliado com erro, se RemoveWhenExpired for false.

boolean isRemoveWhenExpired()

Obtém um valor que indica se o relatório é removido do repositório de integridade quando expira. Se definido como "false", o relatório é tratado como um erro quando expirado. false por padrão.

Observações:Quando os clientes relatam periodicamente, eles devem definir RemoveWhenExpired false (padrão). Dessa forma, é que o repórter tem problemas (por exemplo, deadlock) e não pode relatar, a entidade é avaliada com erro quando o relatório de integridade expira e isso sinalizará a entidade como system.fabric.health.HealthState#Error. Os clientes de integridade periódica devem enviar relatórios com frequência maior do que o tempo de vida útil para considerar atrasos devido ao envio em lote do cliente de integridade, transporte de mensagens pelo processamento do repositório de rede e integridade.

void setDescription(String description)

Define a descrição das informações de integridade. Ele representa texto livre usado para adicionar informações legíveis humanas sobre o relatório.

Observações:O comprimento máximo da cadeia de caracteres para a descrição é de 4096 caracteres.

void setRemoveWhenExpired(boolean removeWhenExpired)

Define um valor que indica se o relatório é removido do repositório de integridade quando expira. Se definido como "false", o relatório é tratado como um erro quando expirado. false por padrão.

Observações:Quando os clientes relatam periodicamente, eles devem definir RemoveWhenExpired false (padrão). Dessa forma, é que o repórter tem problemas (por exemplo, deadlock) e não pode relatar, a entidade é avaliada com erro quando o relatório de integridade expira e isso sinalizará a entidade como system.fabric.health.HealthState#Error. Os clientes de integridade periódica devem enviar relatórios com frequência maior do que o tempo de vida útil para considerar atrasos devido ao envio em lote do cliente de integridade, transporte de mensagens pelo processamento do repositório de rede e integridade.

void setSequenceNumber(long sequenceNumber)

Define o número de sequência associado ao relatório. Deve ser maior que system.fabric.health.HealthInformation#unknownSequenceNumber.

Observações:O número de sequência de relatório é usado pelo repositório de integridade para detectar relatórios obsoletos. Na maioria das vezes, o repórter não precisa especificar o número de sequência. Em vez disso, o valor padrão AutoSequenceNumber pode ser usado. Quando um cliente de integridade recebe um relatório com o Número de sequência automático, ele substitui o número de sequência automática por um número de sequência válido. O número de sequência tem a garantia de aumentar no mesmo processo, mesmo se o tempo do computador cliente retroceder.

void setTimeToLiveSeconds(Duration timeToLive)

Define por quanto tempo o relatório de integridade é válido. Deve ser maior que TimeSpan.Zero.

Observações:Quando os clientes relatam periodicamente, eles devem enviar relatórios com frequência maior do que a vida útil. Se os clientes gerarem relatórios sobre a transição, poderão definir o tempo de vida como infinito. Quando a vida útil expirar, o evento de integridade que contém as informações de integridade será removido do repositório de integridade, se RemoveWhenExpired for true ou avaliado com erro, se RemoveWhenExpired for false.

Detalhes do campo

autoSequenceNumber

public final long autoSequenceNumber= 0

unknownSequenceNumber

public final long unknownSequenceNumber= -1

Detalhes do construtor

HealthInformation

public HealthInformation(String sourceId, String property, HealthState healthState)

Inicializa uma nova instância da classe system.fabric.health.HealthInformation.

Parâmetros:

sourceId - A origem do relatório. Não pode ser nulo ou vazio. Ele não pode começar com "System.", que é reservado palavra-chave para relatórios de componentes do sistema.
property - A propriedade do relatório. Não pode ser nulo ou vazio.
healthState - ele estado de saúde do relatório. Deve ser especificado. Deve ser um dos valores de HealthState.

Detalhes do método

getDescription

public String getDescription()

Obtém a descrição das informações de integridade. Ele representa texto livre usado para adicionar informações legíveis humanas sobre o relatório.

Observações:O comprimento máximo da cadeia de caracteres para a descrição é de 4096 caracteres.

Retornos:

Uma cadeia de caracteres que descreve as informações de integridade em forma legível por humanos.

getHealthState

public HealthState getHealthState()

Obtém o estado de integridade das informações de integridade.

Observações:Os estados de integridade aceitos são system.fabric.health.HealthState#Ok, system.fabric.health.HealthState#Warning e system.fabric.health.HealthState#Error.

Retornos:

Um HealthState que representa o estado de integridade relatado.

getProperty

public String getProperty()

Obtém a propriedade do relatório de integridade.

Observações:A propriedade é uma String e não uma enumeração fixa para permitir que o repórter categorize o evento de integridade para uma propriedade específica da entidade. Por exemplo, o relator A pode relatar a integridade da propriedade “storage” de Node01 e o relator B pode relatar a integridade na propriedade “connectivity” de Node01. No Repositório de Integridade, esses relatórios são tratados como eventos de integridade distintos para a entidade Node01.

Retornos:

Uma Cadeia de caracteres que representa a propriedade do relatório de integridade. Junto com o SourceId, ele identifica exclusivamente as informações de integridade.

getSequenceNumber

public long getSequenceNumber()

Obtém o número de sequência associado ao relatório. Deve ser maior que system.fabric.health.HealthInformation#unknownSequenceNumber.

Observações:O número de sequência de relatório é usado pelo repositório de integridade para detectar relatórios obsoletos. Na maioria das vezes, o repórter não precisa especificar o número de sequência. Em vez disso, o valor padrão AutoSequenceNumber pode ser usado. Quando um cliente de integridade recebe um relatório com o Número de sequência automático, ele substitui o número de sequência automática por um número de sequência válido. O número de sequência tem a garantia de aumentar no mesmo processo, mesmo se o tempo do computador cliente retroceder.

Retornos:

Um long que representa o número da sequência de relatório.

getSourceId

public String getSourceId()

Obtém o Identificador de origem que identifica o componente watchdog/sistema que gerou as informações de integridade.

Retornos:

Uma Cadeia de caracteres que representa a origem do relatório de integridade.

getTimeToLive

public Duration getTimeToLive()

Obtém por quanto tempo o relatório de integridade é válido. Deve ser maior que TimeSpan.Zero.

Observações:Quando os clientes relatam periodicamente, eles devem enviar relatórios com frequência maior do que a vida útil. Se os clientes gerarem relatórios sobre a transição, poderão definir o tempo de vida como infinito. Quando a vida útil expirar, o evento de integridade que contém as informações de integridade será removido do repositório de integridade, se RemoveWhenExpired for true ou avaliado com erro, se RemoveWhenExpired for false.

Retornos:

Um java.time.Duration que representa o tempo de vida do relatório de integridade.

isRemoveWhenExpired

public boolean isRemoveWhenExpired()

Obtém um valor que indica se o relatório é removido do repositório de integridade quando expira. Se definido como "false", o relatório é tratado como um erro quando expirado. false por padrão.

Observações:Quando os clientes relatam periodicamente, eles devem definir RemoveWhenExpired false (padrão). Dessa forma, é que o repórter tem problemas (por exemplo, deadlock) e não pode relatar, a entidade é avaliada com erro quando o relatório de integridade expira e isso sinalizará a entidade como system.fabric.health.HealthState#Error. Os clientes de integridade periódica devem enviar relatórios com frequência maior do que o tempo de vida útil para considerar atrasos devido ao envio em lote do cliente de integridade, transporte de mensagens pelo processamento do repositório de rede e integridade.

Retornos:

true se o relatório deve ser removido do repositório de integridade quando expirou; caso contrário, false.

setDescription

public void setDescription(String description)

Define a descrição das informações de integridade. Ele representa texto livre usado para adicionar informações legíveis humanas sobre o relatório.

Observações:O comprimento máximo da cadeia de caracteres para a descrição é de 4096 caracteres.

Parâmetros:

description - Uma cadeia de caracteres que descreve as informações de integridade em forma legível por humanos.

setRemoveWhenExpired

public void setRemoveWhenExpired(boolean removeWhenExpired)

Define um valor que indica se o relatório é removido do repositório de integridade quando expira. Se definido como "false", o relatório é tratado como um erro quando expirado. false por padrão.

Observações:Quando os clientes relatam periodicamente, eles devem definir RemoveWhenExpired false (padrão). Dessa forma, é que o repórter tem problemas (por exemplo, deadlock) e não pode relatar, a entidade é avaliada com erro quando o relatório de integridade expira e isso sinalizará a entidade como system.fabric.health.HealthState#Error. Os clientes de integridade periódica devem enviar relatórios com frequência maior do que o tempo de vida útil para considerar atrasos devido ao envio em lote do cliente de integridade, transporte de mensagens pelo processamento do repositório de rede e integridade.

Parâmetros:

removeWhenExpired - true se o relatório deve ser removido do repositório de integridade quando expirou; caso contrário, false.

setSequenceNumber

public void setSequenceNumber(long sequenceNumber)

Define o número de sequência associado ao relatório. Deve ser maior que system.fabric.health.HealthInformation#unknownSequenceNumber.

Observações:O número de sequência de relatório é usado pelo repositório de integridade para detectar relatórios obsoletos. Na maioria das vezes, o repórter não precisa especificar o número de sequência. Em vez disso, o valor padrão AutoSequenceNumber pode ser usado. Quando um cliente de integridade recebe um relatório com o Número de sequência automático, ele substitui o número de sequência automática por um número de sequência válido. O número de sequência tem a garantia de aumentar no mesmo processo, mesmo se o tempo do computador cliente retroceder.

Parâmetros:

sequenceNumber - Um long que representa o número da sequência de relatório.

Gera:

IllegalArgumentException - se sequenceNumber for menor ou igual a unknownSequenceNumber

setTimeToLiveSeconds

public void setTimeToLiveSeconds(Duration timeToLive)

Define por quanto tempo o relatório de integridade é válido. Deve ser maior que TimeSpan.Zero.

Observações:Quando os clientes relatam periodicamente, eles devem enviar relatórios com frequência maior do que a vida útil. Se os clientes gerarem relatórios sobre a transição, poderão definir o tempo de vida como infinito. Quando a vida útil expirar, o evento de integridade que contém as informações de integridade será removido do repositório de integridade, se RemoveWhenExpired for true ou avaliado com erro, se RemoveWhenExpired for false.

Parâmetros:

timeToLive - Um java.time.Duration que representa o tempo de vida do relatório de integridade.

Aplica-se a