Verwendung des QHMM-Shell-Skripts

Dieses Thema enthält Anweisungen zur Verwendung von zwei Shell-Skripten, qhmm_usr_export.sh und qhmm_import_sre.sh, für die Handhabung von Diagnosedaten in QHMM.

Voraussetzungen

Der Administrator muss das QHMM-Shell-Skript vom IBM Support-Team erhalten.

qhmm_usr_export.sh

Mit diesem Skript können Benutzer Diagnosedatendateien aus ihrem QHMM-Diagnoseeimer bündeln und die komprimierte Diagnosedatei dem Support-Team zur weiteren Analyse zur Verfügung stellen. (Dies kann durch Hochladen in ein erweitertes Kundendaten-Repository (ECuRep) geschehen). Das Skript akzeptiert Befehlszeilenargumente zur Konfiguration oder kann mit Standardwerten ausgeführt werden.

  • -e: ENDPOINT (Standard: keiner)- Der Speicherendpunkt.

  • -r: REGION (Standard: keine)- Die Speicherregion.

  • -b: BUCKET_NAME (Standard: keine)- Der Name des Buckets.

  • -a: ACCESS_KEY (Standard: none)- Der Zugriffsschlüssel für den Speicher.

  • -s: SECRET_KEY (Standard: keiner)- Der geheime Schlüssel für die Speicherung.

  • -i: WXD_INSTANCE_ID (Standard: keine)- Die Instanz-ID von WXD.

  • -t: ENGINE_TYPE (Standard: keine)- Der Typ des Motors (z. B. Presto).

  • -d: ENGINE_ID (Standard: keine)- Die ID des Motors.

• --data-type – Die zu exportierenden Daten (Support-Dump, QueryEvent, und QueryHistory ).

  • -p: DOWNLOAD_DIR (Standard: /root/data)- Der Zielordner für heruntergeladene Dateien.

  • -x: START_DATE (Standard: letzte 24 Stunden)- Das Startdatum für die Filterung von Objekten.

  • -y: END_DATE (Standard: aktuelles Datum)- Das Enddatum für die Filterung von Objekten.

  • -h, --base-path- Basispfad im Bucket.

Beispielbefehl:

./qhmm_usr_export.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <DOWNLOAD_DIR> -x <START_DATE> -y <END_DATE>

qhmm_import_sre.sh

Dieses Skript ist für das Support-Team gedacht, um Diagnosedaten aus einem Enhanced Customer Data Repository (ECuRep) abzurufen und zur weiteren Analyse in einen Support-Team-Eimer hochzuladen. Ähnlich wie das erste Skript kann es mit Befehlszeilenargumenten konfiguriert oder mit Standardwerten ausgeführt werden.

  • -e: ENDPOINT (Standard: keiner)- Der Speicherendpunkt.

  • -r: REGION (Standard: keine)- Die Speicherregion.

  • -b: BUCKET_NAME (Standard: keine)- Der Name des Buckets.

  • -a: ACCESS_KEY (Standard: none)- Der Zugriffsschlüssel für den Speicher.

  • -s: SECRET_KEY (Standard: keiner)- Der geheime Schlüssel für die Speicherung.

  • -i: WXD_INSTANCE_ID (Standard: keine)- Die Instanz-ID von WXD.

  • -t: ENGINE_TYPE (Standard: keine)- Der Typ des Motors (z. B. Presto).

  • -d: ENGINE_ID (Standard: keine)- Die ID des Motors.

  • -p: COMPRESSED_FILE (Standard: /root/data/bundle.zip)- Der Quellordner für die komprimierte Datei.

Beispielbefehl:

./qhmm_import_sre.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <COMPRESSED_FILE>

bucket_data_migration.sh

Mit diesem Skript können Benutzer QHMM-Daten aus dem Quellbereich in den Zielbereich übertragen. Das Migrationsskript kann mit den folgenden Befehlszeilenargumenten konfiguriert oder mit den Standardwerten ausgeführt werden:

-se: --source-endpoint- Endpunkt URL des Quellspeichers S3-compatible (Standard: http://localhost:9000 )

-se: --source-endpoint- Endpunkt URL des Quellspeichers S3-compatible (Standard: http://localhost:9000 )

-sr: --source-region- Region des Quellspeichers S3-compatible (Standard: us-east-1 )

-sb: --source-bucket- Name des Quell-Buckets (erforderlich)

-sa: --source-access-key- Zugriffsschlüssel für Quellenspeicher (erforderlich)

-ss: --source-secret-key- Geheimer Schlüssel für den Quellenspeicher (erforderlich)

-sbp: --source-base-path- Basispfad im Quell-Bucket (Standard: qhmm)

-de: --dest-endpoint- Endpunkt URL des Zielspeichers S3-compatible (Standard: http://localhost:9000 )

-dr: --dest-region- Region des Zielspeichers S3-compatible (Standard: us-east-1 )

-db: --dest-bucket- Name des Ziel-Buckets (erforderlich)

-da: --dest-access-key- Zugriffsschlüssel für den Zielspeicher (erforderlich)

-ds: --dest-secret-key- Geheimer Schlüssel für den Zielspeicher (erforderlich)

-dbp: --dest-base-path- Basispfad im Ziel-Bucket (Standard: qhmm)

-bp: --base-path- Basispfad im Bucket (Standard: qhmm)

  • -i: --instance-id- Instanz-ID (erforderlich)

  • -t: --engine-type- Motortyp (erforderlich)

  • -d: --engine-id- Motor-ID (erforderlich)

  • -x: --start-date- Startdatum für die Filterung von Objekten (DD-MM-YYYY, optional)

  • -y: --end-date- Enddatum für die Filterung von Objekten (TT-MM-JJJJ, optional)

  • --data-type- Zu exportierende Daten (unterstützte Typen: Dump, QueryEvent, QueryHistory, optional)

  • --max-size- Maximale Downloadgröße in MB (Standard: 500MB )

  • --help- Diese Hilfe anzeigen und beenden

Beispielbefehl:

./bucket_data_migration.sh \
    --source-endpoint <source-endpoint> \
    --source-bucket <source-bucket> \
    --source-access-key <source-access-key> \
    --source-secret-key <source-secret-key> \
    --source-base-path <source-base-path> \
    --dest-endpoint <dest-endpoint> \
    --dest-bucket <dest-bucket> \
    --dest-access-key <dest-access-key> \
    --dest-secret-key <dest-secret-key> \
    --dest-base-path <dest-base-path> \
    --instance-id <instance-id> \
    --engine-type <engine-type> \
    --engine-id <engine-id> \
    --start-date <start-date> \
    --end-date <end-date> \
    --data-type <data-type> \
    --max-size <max-size>

Verwaltung von Diagnosedaten durch manuelle Methode

  1. Führen Sie den folgenden Befehl aus, um eine Tabelle zum Speichern der mit qhmm_import_sre.sh erzeugten Abfrageereignisdaten zu erstellen:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_event_raw (
  record VARCHAR,
  dt VARCHAR
)
WITH (
  external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryEvent/',
  format = 'textfile',
  partitioned_by = ARRAY['dt']
);`
  1. Führen Sie den folgenden Befehl aus, um eine Tabelle zum Speichern der Abfrageverlaufsdaten im JSON-Format zu erstellen:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_history(
  query_id VARCHAR,
  query VARCHAR,
  state VARCHAR,
  source VARCHAR,
  created VARCHAR,
  started VARCHAR,
  "end" VARCHAR,
  dt VARCHAR,
  user VARCHAR)
WITH (
  external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryHistory/',
  format = 'JSON',
  partitioned_by = ARRAY['dt','user']
);`