Pular para o conteúdo principal
Como administrador de sistemas, você é responsável por monitorar o ABBYY Vantage de forma contínua, gerenciá‑lo, identificar quaisquer erros que possam ocorrer durante o processamento de documentos, bem como as causas desses erros. Você pode monitorar o ABBYY Vantage das seguintes maneiras:
  • Arquivos de log do Vantage
  • O serviço Skill Monitor integrado, que coleta estatísticas para as skills existentes do Vantage e fornece informações detalhadas sobre transações concluídas e em andamento. Esse serviço também permite obter informações sobre eventos de transação necessárias para o suporte técnico.
  • Serviços de terceiros que permitem monitorar processos internos do Vantage, monitorar fluxos de trabalho específicos, analisar os dados coletados para ajustar e otimizar ainda mais o processamento de documentos, além de coletar e analisar logs.
Ao entrar em contato com o suporte técnico, além das informações sobre erros, você também pode fornecer a versão do produto e de seus componentes fazendo o seguinte:
  1. Clique em Help no painel à esquerda, depois em About e selecione Version details.
  2. Copie esses detalhes.

Como acessar os logs de diagnóstico

Os arquivos de log criados durante o processamento de documentos no Vantage são armazenados localmente nas máquinas usadas para a instalação do produto. Os logs são armazenados da seguinte forma: o agente Fluent Bit em execução em todos os nós do Kubernetes coleta os logs dos contêineres e os envia para o serviço agregador Fluentd. Por padrão, todos os logs são armazenados como arquivos compactados em um volume persistente e podem ser acessados via NFS. Opcionalmente, o administrador também pode enviar os logs para o cluster Elasticsearch. Arquitetura de registro em log do Kubernetes mostrando agentes Fluent Bit coletando logs de contêineres Docker, enviando para o agregador Fluentd, que envia saídas para Elasticsearch e armazenamento em Volume Persistente Para acessar os logs de diagnóstico:
  1. Se você estiver usando um servidor NFS externo ou outro armazenamento externo, vá diretamente para a etapa 3.
  2. Para instalação com um servidor NFS em cluster (padrão para a configuração Sem alta disponibilidade), obtenha o endereço IP do servidor NFS:
kubectl -n nfs get po -lapp.kubernetes.io/name=nfs-kernel-server -o jsonpath='{ .items[*].status.hostIP }'
  1. Acesse o compartilhamento:
    • Para NFS:
      • Linux: mount –t nfs <nfs server ip>:/ /opt/mount
      • Windows: Instale o ClientForNFS, abra o Explorador de Arquivos e vá para \\<nfs server ip>
    • Para outros tipos de armazenamento externo: Entre em contato com o seu administrador de sistema para obter instruções de acesso.
  2. Navegue até o diretório \\<nfs server ip>\<sharename>\<env>\abbyy-monitoring\fluentd-pvc.

Fornecendo logs para o Suporte Técnico

Para fornecer logs do Vantage ao Suporte ao Cliente da ABBYY:
  1. Acesse a pasta de logs. Os logs são armazenados em subpastas que têm os mesmos nomes que os namespaces do cluster Kubernetes. Os logs do Vantage estão localizados na pasta abbyy-vantage.
  2. Copie os arquivos correspondentes ao período em que o problema ocorreu. Os logs são compactados em arquivos gzip com nomes no formato Y-M-DD-H (por exemplo, 2022-12-09-0800.log.gz).
  3. Envie os arquivos para o Suporte Técnico da ABBYY.

Elasticsearch e Kibana

Elasticsearch e Kibana são ferramentas para busca, análise e visualização de logs. Elasticsearch e Kibana não são instalados juntamente com o ABBYY Vantage e precisam ser instalados e configurados separadamente. Isso pode ser feito independentemente de o produto já estar instalado ou não. Você pode usar qualquer instalação existente.
O procedimento de configuração de exemplo abaixo foi simplificado e é fornecido apenas como ilustração.
Para instalar Elasticsearch e Kibana:
  1. Clone o repositório:
git clone https://github.com/elastic/cloud-on-k8s.git
cd cloud-on-k8s
git checkout 2.5
cd deploy/eck-operator
  1. Instale o operador que fará a implantação dos recursos:
helm -n elastic upgrade -i eck-operator . --create-namespace
  1. Crie um arquivo chamado elastic.yaml com o seguinte conteúdo:
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: elasticsearch
  namespace: elastic
spec:
  version: 8.5.1
  nodeSets:
    - config:
        indices.fielddata.cache.size: 38%
        xpack.ml.enabled: false
        xpack.security.enabled: true
      count: 1
      name: default
      podTemplate:
        spec:
          containers:
            - name: elasticsearch
              resources:
                limits:
                  memory: 1Gi
                  cpu: '1'
                requests:
                  cpu: '1'
                  memory: 1Gi
          initContainers:
            - command:
                - sh
                - '-c'
                - sysctl -w vm.max_map_count=262144
              name: sysctl
              securityContext:
                privileged: true
                runAsUser: 0
          nodeSelector:
            kubernetes.io/os: linux
      volumeClaimTemplates:
        - metadata:
            name: elasticsearch-data
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 128Gi
  1. Crie um arquivo chamado kibana.yaml com o seguinte conteúdo:
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
  name: kibana
  namespace: elastic
spec:
  version: 8.5.1
  count: 1
  elasticsearchRef:
    name: elasticsearch
  podTemplate:
    spec:
      containers:
        - name: kibana
          env:
            - name: NODE_OPTIONS
              value: "--max-old-space-size=2048"
          resources:
            requests:
              memory: 512Mi
              cpu: 0.5
            limits:
              memory: 1Gi
              cpu: 1
      nodeSelector:
        kubernetes.io/os: linux
  1. Execute o comando a seguir para instalar o Elasticsearch:
kubectl -n elastic apply -f elastic.yaml
Verifique o status da implantação:
kubectl -n elastic get statefulset
  1. Execute o comando a seguir para instalar o Kibana:
kubectl -n elastic apply -f kibana.yaml
Verifique o status da implantação:
kubectl -n elastic get deployment
  1. Obtenha a senha de um usuário do Elasticsearch:
kubectl -n elastic get secret elasticsearch-es-elastic-user -o go-template='{{.data.elastic | base64decode }}'
  1. Adicione os seguintes parâmetros ao seu arquivo env_specific.yaml:
logging:
  enabled: true
  elasticsearch:
    enabled: true
    host: elasticsearch-es-http.elastic.svc.cluster.local
    username: elastic
    password: elastic_user_password
    scheme: https
  1. Se você estiver instalando o Kibana após o produto já ter sido instalado, atualize o arquivo env_specific.yaml e execute o seguinte comando:
ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml

Grafana

Grafana (usado em conjunto com Prometheus) é uma ferramenta para visualização, monitoramento e análise de dados. Grafana não é instalado junto com o ABBYY Vantage e precisa ser instalado e configurado separadamente. Você pode usar qualquer instalação existente.
Grafana deve ser instalado no cluster, pois o Prometheus está disponível apenas dentro de um cluster.
O procedimento de configuração de exemplo abaixo foi simplificado e é fornecido apenas como ilustração.
Para instalar o Grafana:
  1. Crie um arquivo chamado grafana.yaml.
  2. Copie e cole o seguinte código no arquivo e salve-o:
persistence:
  enabled: false
rbac:
  create: true
  namespaced: false
serviceAccount:
  create: true
podLabels:
  app.kubernetes.io/component: grafana
nodeSelector:
  kubernetes.io/os: linux
adminUser: admin
adminPassword: password
plugins:
  - grafana-piechart-panel
  - flant-statusmap-panel
grafana.ini:
  server:
    root_url: "%(protocol)s://%(domain)s:%(http_port)s/grafana/"
    enable_gzip: "true"
ingress:
  enabled: true
  annotations:
    kubernetes.io/ingress.class: abbyy-nginx
    nginx.ingress.kubernetes.io/rewrite-target: /$2
  tls:
    - secretName: platform-wildcard
      hosts:
        - {{ env }}.{{ domain }}
  hosts:
    - {{ env }}.{{ domain }}
  path: "/grafana(/|$)(.*)"
sidecar:
  dashboards:
    enabled: true
    label: grafana_dashboard
datasources:
  datasources.yaml:
    apiVersion: 1
    datasources:
      - name: Prometheus
        editable: true
        isDefault: true
        jsonData:
          timeInterval: 5s
          tlsSkipVerify: true
        type: prometheus
        url: 'http://prometheus-scaling.abbyy-monitoring.svc.cluster.local:9090'
      - editable: true
        isDefault: true
        jsonData:
          timeInterval: 5s
          tlsSkipVerify: true
        name: Victoria
        type: prometheus
        url: 'http://victoria-metrics-abbyy.abbyy-monitoring.svc.cluster.local:8428'
Substitua o valor do parâmetro host pelo nome de domínio do seu cluster do Vantage e altere a senha inicial do administrador.
  1. Execute os seguintes comandos:
helm repo add grafana https://grafana.github.io/helm-charts
helm -n abbyy-monitoring upgrade -i grafana grafana/grafana -f grafana.yaml