Vai al contenuto principale
Come amministratore di sistema, sei responsabile del monitoraggio continuo di ABBYY Vantage, della sua gestione, dell’individuazione di eventuali errori che possono verificarsi durante l’elaborazione dei documenti, nonché delle cause di tali errori. Puoi monitorare ABBYY Vantage utilizzando:
  • File di log di Vantage
  • Il servizio Skill Monitor integrato, che raccoglie statistiche per le skill di Vantage esistenti e fornisce informazioni dettagliate sulle transazioni completate e in corso. Questo servizio consente inoltre di ottenere le informazioni sugli eventi della transazione richieste dal supporto tecnico.
  • Servizi di terze parti che consentono di monitorare i processi interni di Vantage, monitorare flussi di lavoro specifici, analizzare i dati raccolti per perfezionare e ottimizzare ulteriormente l’elaborazione dei documenti, nonché raccogliere e analizzare i log.
Quando contatti il supporto tecnico, oltre alle informazioni sugli errori puoi anche fornire la versione del prodotto e dei suoi componenti procedendo come segue:
  1. Fai clic su Help nel riquadro di sinistra, quindi su About e seleziona Version details.
  2. Copia i dettagli.

Come accedere ai log di diagnostica

I file di log creati durante l’elaborazione dei documenti in Vantage sono archiviati localmente sulle macchine utilizzate per l’installazione del prodotto. I log vengono archiviati come segue: l’agente Fluent Bit in esecuzione su tutti i nodi Kubernetes raccoglie i log dei container e li invia al servizio aggregatore Fluentd. Per impostazione predefinita, tutti i log sono archiviati come file di archivio su un volume persistente e sono accessibili tramite NFS. Facoltativamente, l’amministratore può anche inviare i log al cluster Elasticsearch. Architettura di logging Kubernetes che mostra gli agenti Fluent Bit che raccolgono i log dai container Docker, li inviano all'aggregatore Fluentd, che esegue l'output verso Elasticsearch e l'archiviazione su volume persistente Per accedere ai log di diagnostica:
  1. Se si utilizza un server NFS esterno o un altro tipo di storage esterno, passare direttamente al punto 3.
  2. Per un’installazione con server NFS nel cluster (impostazione predefinita per la configurazione Without high availability), ottenere l’indirizzo IP del server NFS:
kubectl -n nfs get po -lapp.kubernetes.io/name=nfs-kernel-server -o jsonpath='{ .items[*].status.hostIP }'
  1. Accedi alla condivisione:
    • Per NFS:
      • Linux: mount –t nfs <nfs server ip>:/ /opt/mount
      • Windows: installa Client for NFS, apri Esplora file e vai a \\<nfs server ip>
    • Per altri tipi di storage esterno: contatta il tuo amministratore di sistema per le istruzioni di accesso.
  2. Vai alla directory \\<nfs server ip>\<sharename>\<env>\abbyy-monitoring\fluentd-pvc.

Fornire i log all’assistenza tecnica

Per fornire all’assistenza clienti ABBYY i log di Vantage:
  1. Accedere alla cartella dei log. I log sono archiviati in sottocartelle che hanno gli stessi nomi dei namespace del cluster Kubernetes. I log di Vantage si trovano nella cartella abbyy-vantage.
  2. Copiare i file relativi al periodo in cui si è verificato il problema. I log sono compressi in file gzip con nomi nel formato Y-M-DD-H (ad esempio, 2022-12-09-0800.log.gz).
  3. Inviare i file all’assistenza tecnica ABBYY.

Elasticsearch e Kibana

Elasticsearch e Kibana sono strumenti per la ricerca, l’analisi e la visualizzazione dei log. Elasticsearch e Kibana non vengono installati insieme ad ABBYY Vantage e devono essere installati e configurati separatamente. Ciò può essere fatto a prescindere dall’installazione del prodotto. È possibile utilizzare qualsiasi installazione esistente.
La seguente procedura di configurazione è stata semplificata ed è fornita solo a titolo di esempio.
Per installare Elasticsearch e Kibana:
  1. Clona il repository:
git clone https://github.com/elastic/cloud-on-k8s.git
cd cloud-on-k8s
git checkout 2.5
cd deploy/eck-operator
  1. Installa l’operatore che effettua il deployment delle risorse:
helm -n elastic upgrade -i eck-operator . --create-namespace
  1. Crea un file chiamato elastic.yaml con il seguente contenuto:
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. Crea un file chiamato kibana.yaml con il seguente contenuto:
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. Esegui il seguente comando per installare Elasticsearch:
kubectl -n elastic apply -f elastic.yaml
Verifica lo stato della distribuzione:
kubectl -n elastic get statefulset
  1. Eseguire il comando seguente per installare Kibana:
kubectl -n elastic apply -f kibana.yaml
Controlla lo stato della distribuzione:
kubectl -n elastic get deployment
  1. Recupera la password per un utente Elasticsearch:
kubectl -n elastic get secret elasticsearch-es-elastic-user -o go-template='{{.data.elastic | base64decode }}'
  1. Aggiungi i seguenti parametri al file 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 installi Kibana dopo che il prodotto è già stato installato, aggiorna il file env_specific.yaml ed esegui il seguente comando:
ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml

Grafana

Grafana (utilizzato insieme a Prometheus) è uno strumento per visualizzare, monitorare e analizzare i dati. Grafana non viene installato insieme ad ABBYY Vantage e deve essere installato e configurato separatamente. È possibile utilizzare un’eventuale installazione esistente.
Grafana deve essere installato nel cluster, poiché Prometheus è disponibile solo all’interno di un cluster.
La procedura di configurazione riportata di seguito è stata semplificata ed è fornita solo a titolo di esempio.
Per installare Grafana:
  1. Creare un file denominato grafana.yaml.
  2. Copiare e incollare il codice seguente nel file e salvarlo:
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'
Sostituisci il valore del Parameter host con il nome di dominio del tuo cluster Vantage e modifica la password iniziale dell’amministratore.
  1. Esegui i seguenti comandi:
helm repo add grafana https://grafana.github.io/helm-charts
helm -n abbyy-monitoring upgrade -i grafana grafana/grafana -f grafana.yaml