Fehlerbehebung
Verwenden Sie Informationen zur Fehlerbehebung, um häufige Probleme zu identifizieren und zu beheben, die beim Arbeiten mit Ihrer Internet of Things-(IoT-)Plattform auftreten können.
Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen. Ein Administrator erteilt Zugriff, indem er die erforderlichen Policys erstellt. Weitere Informationen finden Sie unter Voraussetzungen und Policy-Details für die Internet of Things-(IoT-)Plattform.
Passwörter aktualisieren
Möglicherweise müssen Sie Ihr Datenbankkennwort zurücksetzen, wenn Sie sich mit APEX bei der Datenbank anmelden oder wenn Sie sich mit der Identitätsdomaingruppe direkt bei der Datenbank anmelden.
Ursache: Wenn Sie APEX verwenden und Ihr Kennwort zurücksetzen müssen
Wenn Sie den Zugriff konfigurieren, um Ihre IoT-Daten in APEX anzuzeigen, werden zwei verschiedene Benutzer erstellt, ein Datenbankbenutzer und ein APEX-Workspace-Administratorbenutzer. Dies sind zwei verschiedene Benutzer mit demselben Benutzernamen und demselben anfänglichen Kennwort. Sie können die Kennwörter für jeden Benutzer aktualisieren.
Abhilfe: Aktualisieren Sie das Kennwort Ihrer APEX-Datenbank.
Nur ein APEX-Workspace-Administrator kann das Kennwort des Datenbankbenutzers ändern. Zunächst verwendet der APEX-Workspace-Administrator Ihr APEX-Datenbankkennwort zur Anmeldung und führt dann die folgenden Schritte aus, um das Datenbankkennwort zu ändern.
Melden Sie sich in APEX als Administrator beim Workspace der IoT-Domain an. Verwenden Sie dazu den folgenden Workspace-Namen und den Datenbankbenutzernamen mit Ihrem aktuellen APEX-Datenbankkennwort.Hinweis
Beachten Sie die beiden Unterstriche__WKSP.<domain-short-id-from-device-host>__WKSP- Navigieren Sie zu SQL Workshop, und wählen Sie SQL Commands aus.
- Vergewissern Sie sich, dass das Schema
<iot-domain-short-id-from-device-host>__WKSPim Dropdown-Menü für das Schema oben rechts ausgewählt ist. Beachten Sie, dass das Schema zwei Unterstriche enthält. - Verwenden Sie diese SQL-
ALTER USER-Anweisung und die erforderlicheREPLACE-Klausel, um das Kennwort des Datenbankbenutzers zu ändern:ALTER USER <workspace-administrator-user-name> IDENTIFIED BY "<new-password>" REPLACE "<old-password>"; - Wählen Sie Ausführen.
- Beispielergebnisse mit der Kennwortaktualisierung:
User altered. 0.24 seconds
Fehler: Aktualisieren Sie Ihr APEX-Kennwort
- Als APEX-Workspace-Administrator können Sie das Workspace-Admin-Kennwort ändern. Nachdem Sie sich als Administrator bei APEX angemeldet haben, wählen Sie die Option Set APEX Account Password (APEX-Accountkennwort festlegen). Weitere Informationen finden Sie unter Kennwort in APEX zurücksetzen.
- Wenn Sie sich das erste Mal als APEX-Benutzer bei der APEX-Anwendung anmelden, werden Sie aufgefordert, Ihr APEX-Kennwort zu ändern. Nach der ersten Anmeldung können Sie Ihr Kennwort auf der APEX-Anmeldeseite zurücksetzen.
Je nach verwendetem System sind möglicherweise doppelte Anführungszeichen erforderlich, wenn das Kennwort Sonderzeichen enthält.
Problem: Setzen Sie das APEX-Workspace-Kennwort mit der API zurück
POST /20250531/iotDomains/{iotDomainId}/actions/configureDataAccess
{
"type": "APEX",
"dbWorkspaceAdminInitialPassword": "<your-apex-initial-password>"
}Ursache: Fehlende Autorisierung bei direkter Verbindung zur Datenbank
Wenn Sie mit dem folgenden CLI-Befehl eine direkte Verbindung zur Datenbank herstellen und keine Berechtigung für eine direkte Verbindung zur Datenbank haben, können Sie ein neues Datenbankkennwort für die Identitätsdomaingruppe für die Verbindung erstellen.
Beispiel: Wenn Sie den Befehl oci iot domain configure-direct-data-access und die erforderlichen Parameter verwenden, um die Authentifizierung einer IoT-Domain zu konfigurieren, um eine direkte Datenbankverbindung herzustellen, und Sie keine Verbindung herstellen können.
oci iot domain configure-direct-data-access --iot-domain-id <iot-domain-OCID> --db-allow-listed-identity-group-names '["<tenancy-OCID:<identity-domain-name>/<identity-group-name>"]'oder wenn Sie dieses Format verwenden:
oci iot domain configure-direct-data-access --iot-domain-id <iot-domain-OCID> --db-allow-listed-identity-group-names '["<tenancy-OCID:<identity-group-name>"]'Abhilfe: Datenbankkennwort für den Identitätsdomainbenutzer aktualisieren
- Öffnen Sie das Navigationsmenü, gehen Sie zu Identität und Management, und wählen Sie Domains aus.
- Wählen Sie auf der Seite "Domainliste" die Identitätsdomain aus, mit der Sie arbeiten möchten, und stellen Sie eine Verbindung zu einer IoT-Domain her.
- Wählen Sie die Registerkarte Benutzerverwaltung, und wählen Sie den Benutzer aus, für den Sie das Kennwort aktualisieren möchten. Wählen Sie die Registerkarte Datenbankkennwörter aus, um das Kennwort zu aktualisieren löschen Sie das aktuelle IAM-Datenbankkennwort, und erstellen Sie ein neues IAM-Datenbankkennwort.
Digitale Zwillingsmodelle verwenden DTDL Spezifikationen v3
Ursache: Die Erstellung eines digitalen Zwillingsmodells führt zu Fehlern
Wenn Sie ein Modell für digitale Zwillinge erstellen, wenn ein Fehler auftritt, bestätigen Sie, dass Sie nur die unterstützten DTDL-Spezifikationen v3 verwenden.
Abhilfe: Nur unterstützte v3 DTDL-Spezifikationen verwenden
- Wenn eine Eigenschaft
writableim digitalen Zwillingsmodell enthalten ist, muss sie auffalsegesetzt werden. - Nur die
contentinnerhalb der Komponente kann alshistorizedannotiert werden. Dies gibt an, dass die IoT-Plattform die Telemetrie der Zeitreihen dieses Sensors beibehalten muss (siehe Beispiel für das digitale Zwillingsmodelldtdl-model-specifications.json). Ein Beispiel finden Sie unter Digitales Zwillingsmodell erstellen.
Servicelimits überschritten
Beheben Sie Probleme mit den Servicelimits der Domain IoT oder der Domaingruppe IoT pro Region.
Ursache: IoT Ressourcenlimits pro Region
Die Internet of Things-(IoT-)Plattform verfügt über Limits für die Anzahl der Ressourcen pro Region.
Wenn Sie versuchen, mehr als 2 IoT-Domains oder mehr in einer IoT-Domaingruppe zu erstellen, wird möglicherweise der folgende Fehler angezeigt. Weitere Informationen finden Sie unter IoT-Domain erstellen oder IoT-Domaingruppe.
The following service limits were exceeded: <resource-count>. Request a service limit increase from the service limits page in the console.
Oracle beschränkt das Erstellen von bis zu 2 IoT-Domains in jeder IoT-Domaingruppe. Die maximale Anzahl von IoT-Domaingruppen beträgt 5, und die maximale Anzahl von IoT-Domains beträgt 10 pro Region in Ihrem Mandanten. Um eine IoT-Domain zu erstellen, muss Ihr Benutzer über Lesezugriff für die verknüpfte IoT-Domaingruppe verfügen.
Abhilfe: Upgrade und Erhöhung der Limits
Informationen zu den Limits für IoT-Ressourcen finden Sie unter Servicelimits. Wenn Sie die Limits erhöhen müssen, können Sie eine Erhöhung des Servicelimits beantragen.
Anführungszeichen mit OCIDs verwenden
In Oracle Cloud Infrastructure (OCI) ist eine OCID (Oracle Cloud-ID) eine eindeutige ID, die jeder Cloud-Ressource zugewiesen ist. Je nach Szenario müssen Sie bei der Interaktion mit OCI über die Befehlszeilenschnittstelle (CLI), JSON-Eingabe oder API-Aufrufe die OCID möglicherweise so angeben, dass sie als Zeichenfolgenwert interpretiert wird. Oder Sie müssen Anführungszeichen entfernen, wenn ein Codeeditor, mit dem Sie arbeiten, unerwünschte Anführungszeichen hinzufügt.
Einige Anwendungen oder Codeeditoren können unerwünschte Anführungszeichen zu Ihren Werten hinzufügen, unerwünschte Anführungszeichen prüfen und entfernen, oder dies kann zu einem Fehler führen.
Um JSON-Standards zu entsprechen und eine korrekte Interpretation durch OCI-Services sicherzustellen, muss eine OCID in doppelte Anführungszeichen gesetzt werden, damit sie als Zeichenfolgenwert in JSON-Strukturen oder komplexen Eingaben behandelt wird. Wenn sie als direkte, einfache Argumente an CLI-Befehle übergeben werden, ist ein explizites Angeben häufig nicht erforderlich.
- OCIDs in CLI nicht angeben: Wenn eine OCID ein direktes Argument für einen CLI-Befehl ist, müssen Sie keine expliziten Anführungszeichen verwenden, es sei denn, sie ist Teil einer größeren Zeichenfolge oder eines komplexen Typs, für den ein Anführungszeichen erforderlich ist.Dieses Beispiel zeigt, dass die Verwendung einer OCID ein CLI-Befehl ohne Anführungszeichen ist:
oci iot digital-twin-adapter create --iot-domain-id ocid1.iotdomain.oc1.example-ocid - OCIDs beim Einbetten in JSON-Zeichenfolgen angeben: Wenn Sie einen komplexen Parameter als JSON-Zeichenfolge mit einem OCID-Wert an einen CLI-Befehl übergeben, muss die OCID in der JSON-Zeichenfolge in doppelte Anführungszeichen gesetzt und bei Bedarf maskiert werden. Abhängig von dem verwendeten Tool und Betriebssystem ist es für Windows erforderlich. Weitere Informationen finden Sie unter Komplexe Eingabe in CLI übergeben.
- OCIDs in JSON-Objekten angeben: Alle Zeichenfolgenwerte innerhalb eines JSON-Objekts müssen in doppelte Anführungszeichen gesetzt werden. Wenn eine OCID ein Wert in einem JSON-Objekt ist, das Sie mit einer API oder in einem CLI-Befehl an OCI senden, muss sie in doppelte Anführungszeichen gesetzt werden:
{ "displayName": "my_resource", "compartmentId": "ocid1.compartment.oc1..<example>" } - OCIDs in API-Aufrufen angeben: In Anforderungsbodys oder -parametern: Wenn bei API-Aufrufen an OCI eine OCID als JSON-Payload oder Abfrageparameter Teil des Anforderungsbodys ist, muss sie als Zeichenfolge behandelt und in doppelte Anführungszeichen innerhalb der JSON-Payload gesetzt werden. Oder sie muss als Zeichenfolge für URL-Parameter korrekt codiert sein. Die spezifischen Anforderungen hängen vom API-Endpunkt und dem Datentyp ab, der für diesen Parameter erwartet wird.
In digitalen Zwillingsinstanzen mit Anführungszeichen für einen externen Schlüssel
Externer Schlüssel entspricht Gerätenamen: Wenn eine digitale Zwillingsinstanz mit Anführungszeichen erstellt wird, die in den externen Schlüssel eingebettet sind. Beispiel: "\"american-auto\"". Dann wird der Basisauthentifizierungsbenutzername Teil des erforderlichen Benutzernamens und muss wörtlich gesendet werden. Dies verursacht oft Probleme mit Shell-Angeboten. Wenn Sie Anführungszeichen in Ihren externen Schlüsselnamen aufgenommen haben, muss Ihre curl-Anforderung auch die Anführungszeichen enthalten. Andernfalls tritt eine Unstimmigkeit auf und führt zu einem 401 Unauthorized-Fehler.
Wenn Sie in Ihrem Wert für digitale Zwillingsinstanz external key Anführungszeichen verwenden, müssen Sie die Anführungszeichen verwenden, wenn Sie einen API-Aufruf durchführen. Oder Sie können die Anführungszeichen in Ihrem externen Schlüsselwert weglassen.
--external-key und der entsprechende Wert angezeigt, der keine Anführungszeichen verwendet:--external-key 01-23-45-67-89-ab
Best Practice: Erstellen Sie digitale Zwillingsinstanzen mit externen Schlüsseln, und nehmen Sie keine Anführungszeichen ein. Beispiel: american-auto. Wenn Sie sich mit Benutzernamen in Anführungszeichen authentifizieren müssen, erstellen Sie einen Authorization: Basic ...-Header, anstatt -u zu verwenden, um Angebotsfehler zu vermeiden.
In Digital Twin Adapters müssen JSON-Objekte Anführungszeichen verwenden
Ausdrücke ohne Anführungszeichen werden in eingehenden Routen des Digital Twin Adapter nicht unterstützt. Weitere Beispiele finden Sie unter Szenarios.
In einem Digital Twin Adapter werden die inbound-route-Ausdrücke nicht als Raw-Werte ohne Anführungszeichen unterstützt. Beispiel:
"$.speed": ${(.velocity_kph / 1.609) | floor}
inbound-route-Werteausdrücke in Anführungszeichen als Zeichenfolgen eingebettet werden. Beispiel: "$.speed": "${(.velocity_kph / 1.609) | floor}"