Installation und Upgrade > ThingWorx installieren > Manuelle Installation > Installationsanhänge > platform-settings.json – Konfigurationsdetails
platform-settings.json – Konfigurationsdetails
Die Datei "platform-settings.json" ist als Software-Download für Administratoren verfügbar, um Einstellungen für eine weitere Optimierung anzupassen. Spezifische Einstellungen für Hochverfügbarkeits-Clustering finden Sie unter Plattformeinstellungen für ThingWorx HA.
* 
Das Beispiel unten enthält alle Optionen. Nur ein Persistenzanbieter ist erforderlich.
{
"PlatformSettingsConfig": {
"BasicSettings": {
"BackupStorage": "/ThingworxBackupStorage",
"DatabaseLogRetentionPolicy": 7,
"DatabaseWriteRetryAttempts": 10,
"EnableBackup": true,
"EnableClusteredMode": false,
"EnableSystemLogging": false,
"EnableSSO": false,
"FileRepositoryRoot": "/ThingworxStorage",
"HTTPRequestHeaderMaxLength": 2000,
"HTTPRequestParameterMaxLength": 2000,
"InternalAesCryptographicKeyLength": 128,
"MetricsLoggingFrequency": 30,
"MetricsLoggingLevel": "WARN",
"MetricsReportingEnabled": true,
"SessionUpdateDelay": 60,
"Storage": "/ThingworxStorage",
"ScriptTimeout": 30,
"MaxSearchItems": 100000
},
"DomainConfiguration": {
"trustedDomains":[
"www.example1.com",
"www.example2.com",
"images.example3.com",
"localhost"
],
"ignoreTrustedDomains": false
}
"SolutionCentralSettings": {
"SolutionCentralHost": "<Solution Central host name>",
"KeyStorePath": "<Path for your keystore>",
"KeyStorePass": "<Password for your keystore>"
},
"AdministratorUserSettings": {
"InitialPassword": "changeme"
},
"ContentTypeSettings": {
"supportedMediaEntityContentTypes" : ["image/svg+xml","image/png","image/gif","image/bmp","image/jpeg","application/pdf","image/vnd.microsoft.icon"]
},
"OrchestrationSettings": {
"EnableOrchestration": true,
"QueueHost": "localhost",
"QueuePort": 5672,
"QueueName": "256mb",
"QueueUsername": "flowuser",
"QueuePassword": "encrypt.queue.password",
"QueueVHost": "orchestration",
"TurnOffScopesApprovalPopup": true
},
"ExtensionPackageImportPolicy": {
"importEnabled": false,
"allowJarResources": false,
"allowJavascriptResources": false,
"allowCSSResources": false,
"allowJSONResources": false,
"allowWebAppResources": false,
"allowEntities": false,
"allowExtensibleEntities": false,
"haCompatibilityImportLevel": "WARN"
},
"ClusteredModeSettings": {
"PlatformId": "platform1",
"CoordinatorHosts": "localhost:2181",
"ModelSyncPollInterval": 100
},
"LicensingConnectionSettings": {
"username": "<username>",
"password": "<password>",
"timeout":"60",
"useProxy": false,
"proxyHost": "<proxyHost>",
"proxyPort" : "<proxy port>",
"proxyScheme": "<http or https>",
"proxyUseNTLM": true,
"proxyUsername": "<user>",
"proxyPassword": "<user password>",
"proxyWorkstation": "<dummyWorkstation>",
"proxyDomain": "<dummyDomain>"
},
"MetricsUserSettings": {
"InitialPassword": "<password>"
},
"PersistenceProviderPackageConfigs": {
"H2PersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 30,
"acquireRetryDelay": 1000,
"checkoutTimeout": 2000,
"networkTimeout": 900000,
"idleConnectionTestPeriod": 6,
"initialPoolSize": 10,
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 36000,
"maxPoolSize": 100,
"maxStatements": 0,
"maxStatementsPerConnection": 50,
"minPoolSize": 10,
"numHelperThreads": 6,
"password": "password",
"tableLockTimeout": 10000,
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "twadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 10000,
"maximumQueueSize": 500000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
"producerTimeout": 30000,
}
},
"PostgresPersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 3,
"acquireRetryDelay": 10000,
"checkoutTimeout": 1000000,
"networkTimeout": 900000,
"queryTimeout": 600000,
"driverClass": "org.postgresql.Driver",
"fetchSize": 5000,
"idleConnectionTestPeriod": 60,
"initialPoolSize": 5,
"jdbcUrl": "jdbc:postgresql://localhost:5432/thingworx",
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 300,
"maxPoolSize": 100,
"maxStatements": 100,
"minPoolSize": 5,
"numHelperThreads": 8,
"password": "password",
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "twadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 500000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
"producerTimeout": 30000,
}
},
"MssqlPersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 3,
"acquireRetryDelay": 10000,
"checkoutTimeout": 1000000,
"networkTimeout": 900000,
"queryTimeout": 600000,
"driverClass": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"fetchSize": 5000,
"idleConnectionTestPeriod": 60,
"initialPoolSize": 5,
"jdbcUrl": "jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;",
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 300,
"maxPoolSize": 100,
"maxStatements": 100,
"minPoolSize": 5,
"numHelperThreads": 8,
"password": "Password@123",
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "msadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 10000,
"maximumQueueSize": 500000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
"producerTimeout": 30000,
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
"producerTimeout": 30000,
}
}
},
"cache": {
"provider-type": "com.thingworx.cache.ignite.IgniteCacheProvider",
"ignite": {
"instance-name": "twx-core-server",
"client-mode": false,
"address-resolver": {
"type": "zookeeper",
"connection": "localhost:2181"
}
}
}
}
}
* 
Die Parameter networkTimeout, queryTimeout und producerTimeout dürfen nur aus ThingWorx 9.2.8 und höher sowie ThingWorx 9.3.3 und höher verwendet werden.
platform-settings.json – Einstellungen
Basiseinstellungen 
Einstellung
Standard
Beschreibung
BackupStorage
/ThingworxBackupStorage
Name des Verzeichnisses, in das alle Sicherungen geschrieben werden.
DatabaseLogRetentionPolicy
7
Anzahl der Tage, die Datenbankprotokolle beibehalten werden.
DatabaseWriteRetryAttempts
10
Maximale Versuche, die vom System durchgeführt werden, um persistente Einträge in der Datenbank im Falle eines Verbindungsverlusts zu wiederholen.
EnableBackup
true
Bestimmt, ob Sicherungen beibehalten werden.
EnableClusteredMode
false
Bestimmt, ob ThingWorx als Cluster- oder Standalone-Server ausgeführt wird.
EnableSystemLogging
false
Bestimmt, ob die Systemprotokollierung aktiviert wird.
* 
Aktivieren Sie diese Einstellung nicht, es sei denn, Sie werden vom ThingWorx Support dazu aufgefordert.
EnableSSO
false
Legen Sie den Parameter auf "true" fest, um SSO für ThingWorx Platform zu aktivieren. Wenn SSO aktiviert ist, wird die gesamte Authentifizierung zum zentralen Autorisierungsserver umgeleitet, der in der Datei sso-settings.json konfiguriert ist. Die Edge-Websocket-Authentifizierung ist davon nicht betroffen.
FileRepositoryRoot
/ThingworxStorage
Das Verzeichnis, in dem das Stammdatei-Repository erstellt wird. Der Standardspeicherort ist ausreichend für Standalone-Bereitstellungen. Für ThingWorx HA-Bereitstellungen, sollte sich das Repository in einem freigegebenen Dateisystem befinden, auf das alle ThingWorx Server Zugriff haben.
HTTPRequestHeaderMaxLength
2000
Die maximale zulässige Länge für Werte von HTTP-Anforderungskopfzeilen.
HTTPRequestParameterMaxLength
2000
Die maximale zulässige Länge für Werte von HTTP-Anforderungsparametern.
InternalAesCryptographicKeyLength
128
Verwendete Schlüssellänge beim Generieren eines symmetrischen AES-Schlüssels. Unterstützte Werte sind 128, 192 und 256.
* 
Verschlüsselung und Entschlüsselung schlagen fehl, wenn der Schlüssel länger als 128 ist und die Java-Richtlinien nicht für die Verwendung dieser Schlüsselgröße konfiguriert sind.
MetricsLoggingFrequency
30
Häufigkeit in Minuten, in der die von der Plattform gesammelten Metriken im Anwendungsprotokoll protokolliert werden.
MetricsLoggingLevel
WARN
Protokollebene, auf der von der Plattform gesammelte Metriken im Anwendungsprotokoll protokolliert werden. Folgende Werte sind möglich: WARN, DEBUG, TRACE, INFO oder ERROR.
MetricsReportingEnabled
N/A
Bestimmt, ob Leistungsmetriken-Daten an PTC gesendet werden. Sie können diese Option auch im Plattform-Subsystem konfigurieren. Weitere Informationen zur Datensammlung in ThingWorx finden Sie unter Datensammlung in ThingWorx.
SessionUpdateDelay
60
Die Zeitdauer (in Sekunden), die zu lastUpdateTime hinzugefügt wird, nach der der lastUpdateTime der Sitzung aktualisiert wird. Wenn während der Verzögerung mehrere Anfragen empfangen werden, aktualisiert nur die erste Anforderung den lastUpdateTime. Der Standardwert ist 60 Sekunden.
Storage
/ThingworxStorage
Verzeichnis, in dem alle Speicherverzeichnisse erstellt werden/sich befinden (ausgenommen Sicherungsspeicher).
ScriptTimeout
30
Maximale Anzahl von Sekunden, die ein Skript ausgeführt werden kann, bevor die ThingWorx Plattform das Skript beendet.
* 
Skripts auf der Plattform werden automatisch beendet, wenn das Skript länger als die für dieses Timeout konfigurierte Anzahl von Sekunden ausgeführt wird.
* 
Beachten Sie bei der Konfiguration des Timeout-Werts die Sensibilität und/oder Bedeutung der Informationen, die von Skripts verarbeitet werden. Es ist zwar wichtig, Skripts nach einer bestimmten Zeitdauer aus Sicherheitsgründen zu beenden, aber bei zu frühzeitiger Beendigung kann dies zu Datenverlust führen. Aufgrund der Flexibilität der ThingWorx Plattform gibt es Anwendungsfälle, die möglicherweise eine Timeout-Dauer erfordern, die kürzer oder länger als die Standardeinstellung ist.
MaxSearchItems
100000
Ermöglicht es Benutzern, den Standard-Suchgrenzwert entsprechend der Anzahl der in der Umgebung vorhandenen Entitäten zu erhöhen.
Der von den SearchFunctions-Ressourcengruppen-APIs in ThingWorx Composer festgelegte MaxSearchItems-Wert hat Vorrang vor dem in der Datei "platform-settings.json" festgelegten Wert.
Wenn MaxSearchItems auf einen Wert größer als 100.000 festgelegt ist, übergeben Sie die entsprechenden Suchkriterien gemäß dem Anwendungsfall, um die Suchzeit zum Abrufen der erforderlichen Anzahl von Entitäten zu verkürzen.
* 
Legen Sie den Parameter MaxSearchItems basierend auf der Anzahl der Entitäten in ThingWorx Platform fest. Legen Sie nicht den maximalen Ganzzahlwert fest: 2.147.483.647.
* 
Starten Sie die ThingWorx Umgebung neu, um den neuen MaxSearchItems-Wert anzuwenden.
Domänenkonfigurationseinstellungen 
Einstellung
Standard
Beschreibung
ignoreTrustedDomains
true
Wenn dieses Kennzeichen auf true festgelegt ist, sind alle externen HTTP-Aufrufe über Media-Entitäten zulässig. Wenn es auf false festgelegt ist, sind nur HTTP-Aufrufe an die unter trustedDomains aufgeführten Domänen zulässig.
trustedDomains
-
Liste überprüfter und vertrauenswürdiger Domänen, die Benutzer verwenden können, um über das Media-Entität-Objekt auf Medien im Mashup zuzugreifen.
* 
Derzeit werden nur HTTP- und HTTPS-Protokolle unterstützt. Anfragen an externe Medien über ein anderes Protokoll werden immer abgelehnt
Solution Central Einstellungen 
Einstellung
Standard
Beschreibung
SolutionCentralHost
sc.thingworx.com
Hostname für Solution Central.
SolutionCentralPort
443
Portdetails für Solution Central
* 
Legen Sie SolutionCentralPort nicht fest, wenn ein Standardwert vorhanden ist.
KeyStorePath
/ThingworxPlatform/sc-keystore
Pfad für Ihren Schlüsselspeicher.
KeyStorePass
Keine
Passwort für Ihren Schlüsselspeicher.
* 
Um Ihr Passwort zu verschlüsseln, legen Sie für KeyStorePass den Wert encrypt.sc.password fest.
ThingWorx Flow Einstellungen 
Diese Eigenschaften sind nur anwendbar, wenn ThingWorx Flow auf ThingWorx Foundation installiert ist. Diese Werte müssen sowohl in ThingWorx Flow- als auch in RabbitMQ-Konfigurationsdateien definiert sein und dürfen erst bearbeitet werden, wenn sie in beiden Anwendungen geändert wurden.
Einstellung
Standard
Beschreibung
EnableOrchestration
wahr
Gibt an, ob ThingWorx Flow in ThingWorx Foundation aktiviert ist.
QueueHost
localhost
RabbitMQ-Host-Name
QueuePort
5672
RabbitMQ-Port
QueueName
256mb
RabbitMQ-Warteschlangenname
QueueUsername
flowuser
RabbitMQ-Warteschlangen-Benutzername
QueuePassword
encrypt.queue.password
RabbitMQ-Warteschlangen-Passwort
* 
Das Passwort wird bei der Installation von ThingWorx Flow auf demselben Rechner wie ThingWorx Foundation automatisch verschlüsselt.
Wenn ThingWorx Flow auf einem anderen Rechner als ThingWorx Foundation installiert ist, müssen Sie dieses Passwort verschlüsseln.
QueueVHost
orchestration
RabbitMQ-VHost-Name
TurnOffScopesApprovalPopup
falsch
Legen Sie den Wert auf true fest, um die Anzeige von Fenstern zur Gewährungsgenehmigung während des Anmeldeprozesses zu verhindern.
Richtlinie für den Import von Erweiterungspaketen – Einstellungen 
Der Import von Erweiterungen ist standardmäßig für alle Benutzer deaktiviert. Verwenden Sie die folgenden Einstellungen, um die Funktion für den Import von Erweiterungen zu konfigurieren. Weitere Informationen finden Sie unter Erweiterungen importieren.
Einstellung
Beschreibung
Standard
Beispiele
importEnabled
Das Steuerelement der obersten Ebene, das die Möglichkeit bietet, Erweiterungen zu importieren (= true) oder nicht zu importieren (= false).
false
"importEnabled": false: Erweiterungen können nicht importiert werden, selbst wenn andere ExtensionPackageImportPolicy-Einstellungen auf "true" festgelegt sind.
"importEnabled": true: Übergibt den Import von Erweiterungen an den nächsten Satz von allow<Content>Resources-Einstellungen (siehe Zeilen unten).
* 
Wenn die allow<Content>Resources-Einstellungen auf "false" festgelegt sind, kann eine leere Erweiterung (keine Entitäten, erweiterbaren Entitäten oder Ressourcen) importiert werden. Da dies eher keine nützliche Konfiguration ist, muss bei Festlegung von importEnabled auf "true" mindestens eine weitere allow<Content>Resources-Einstellung auf "true" festgelegt werden.
allowJarResources
Lässt den Import von Erweiterungen mit JAR-Ressourcen zu.
false
"allowJarResources": true: Lässt den Import von Erweiterungen zu, in deren Manifest JAR-Dateien als JAR-Ressourcen deklariert werden.
"allowJarResources": false: Lässt den Import von Erweiterungen nicht zu, in deren Manifest JAR-Dateien als JAR-Ressourcen deklariert werden.
allowJavascriptResources
Lässt den Import von Erweiterungen mit JavaScript-Ressourcen zu.
false
"allowJavascriptResources": true: Lässt den Import von Erweiterungen zu, in deren Manifest JavaScript-UI-Dateiressourcen des JS-Typs als JavaScript-Ressourcen deklariert werden.
"allowJavascriptResources": false: Lässt den Import von Erweiterungen nicht zu, in deren Manifest JavaScript-UI-Dateiressourcen des JS-Typs als JavaScript-Ressourcen deklariert werden.
allowCSSResources
Lässt den Import von Erweiterungen mit CSS-Ressourcen zu.
false
"allowCSSResources": true: Lässt den Import von Erweiterungen mit CSS-UI-Dateiressourcen zu.
"allowCSSResources": false: Lässt den Import von Erweiterungen mit CSS-UI-Dateiressourcen nicht zu.
allowJSONResources
Lässt den Import von Erweiterungen mit JSON-Ressourcen (beispielsweise Lokalisierungsdateien) zu.
false
"allowJSONResources": true: Lässt den Import von Erweiterungen mit JSON-UI-Dateiressourcen zu.
"allowJSONResources": false: Lässt den Import von Erweiterungen mit JSON-UI-Dateiressourcen nicht zu.
allowWebAppResources
Lässt den Import von Erweiterungen mit Webressourcen zu.
false
"allowWebAppResources": true: Lässt den Import von Erweiterungen mit WebApp-UI-Dateiressourcen zu.
"allowWebAppResources": false: Lässt den Import von Erweiterungen mit WebApp-UI-Dateiressourcen nicht zu.
allowEntities
Lässt den Import von Erweiterungen mit nicht erweiterbaren Entitäten zu. Beispiele für nicht erweiterbare Entitäten umfassen:
Anwendungsschlüssel
Authentifikator
Dashboard
Datenanalysedefinition
Data Shape
GenericContentEntity und abgeleitete untergeordnete Klassen wie Statusdefinition, Stildefinition, Stildesign
Gruppe
Lokalisierungstabelle
Protokoll
Mashup
Medieneinheit
Menü
ModeledServiceProviderEntity und untergeordnete Klassen wie Inhalt der Benachrichtigung
Netzwerk
Benachrichtigungsdefinition
Organization
Persistenzanbieter
PersistenceProviderPackage und abgeleitete untergeordnete Klassen
Projekt
Dingform
Dingvorlage
Benutzer
Vokabular und abgeleitete untergeordnete Klassen wie DataTagVocabulary, ModelTagVocabulary
false
"allowEntities": true: Lässt den Import von Erweiterungen zu, in deren Manifest nicht erweiterbare Entitäten deklariert werden.
"allowEntities": false: Lässt den Import von Erweiterungen nicht zu, in deren Manifest nicht erweiterbare Entitäten deklariert werden.
allowExtensibleEntities
Lässt den Import von Erweiterungen mit nicht erweiterbaren Entitäten zu. Beispiele für erweiterbare Entitäten umfassen:
DirectoryService und abgeleitete untergeordnete Klassen
ExtensionPackage
Ressourcen und abgeleitete untergeordnete Klassen, die benutzerdefinierte Funktionen/Dienste enthalten, die als Ressourcen ähnlich OOTB-Ressourcen verwendet werden, wie z.B. InfoTableFunctions, EntityServices und EncryptionServices.
* 
Die OOTB-Untersysteme, die nicht Teil von Erweiterungen sind, sind nicht betroffen.
ScriptFunctionLibrary und abgeleitete untergeordnete Klassen.
Untersystem und abgeleitete untergeordnete Klassen.
* 
Die OOTB-Untersysteme, die nicht Teil von Erweiterungen sind, sind nicht betroffen.
Dingpaket
Widget
false
"allowExtensibleEntities": true: Lässt den Import von Erweiterungen zu, in deren Manifest erweiterbare Entitäten deklariert werden.
"allowExtensibleEntities": false: Lässt den Import von Erweiterungen nicht zu, in deren Manifest erweiterbare Entitäten deklariert werden.
haCompatibilityImportLevel
Wenn Sie ThingWorx im Cluster-Modus ausführen, können Sie den Import von Erweiterungen auf diejenigen beschränken, für die das haCompatibility-Flag in den Erweiterungsmetadaten auf true festgelegt ist. Die Standardeinstellung ist WARN. Sie ermöglicht den Import, generiert aber eine Warnmeldung im Anwendungsprotokoll. Sie können die Einstellung in DENY ändern. In diesem Fall schlägt der Import fehl, und im Anwendungsprotokoll wird ein Fehler generiert.
WARN
"haCompatibilityImportLevel": "WARN" – Die Erweiterungsimporte sind erfolgreich, und Warnungen werden für Erweiterungen generiert, für die "haCompatible" : "TRUE" nicht festgelegt ist.
"haCompatibilityImportLevel": "DENY" – Nur Erweiterungen mit "haCompatible" : "TRUE" werden importiert. Alle anderen Erweiterungsimporte schlagen fehl, und es werden Fehlermeldungen generiert.
Einstellungen im Cluster-Modus 
Spezifische Einstellungen für das Ausführen von ThingWorx im Cluster-Modus. Alle Einstellungen werden ignoriert, wenn die EnableClusteredMode-Einstellung (oben) auf "false" festgelegt ist.
Einstellung
Standard
Beschreibung
PlatformId
kein Symbol
Eine eindeutige ID für jeden Knoten im Cluster. Diese ID wird in aggregierten Protokollen angezeigt. Sie muss alphanumerisch sein und weniger als 32 Zeichen umfassen. Sie sollte dem Muster "^[a-zA-Z0-9]{1,32}$" entsprechen.
CoordinatorHosts
kein Symbol
Kommagetrennte Liste von Apache ZooKeeper Servern zum Koordinieren der ThingWorx Prioritätsauswahl. Zeichenfolgenmuster ist: IP:port. (Beispiel: "127.0.0.1:2181, 127.0.0.2:2181").
ZKNamespace
ThingWorx
Der Wurzelknoten-Pfad zur Nachverfolgung von Informationen in ZooKeeper für den Cluster. Er ist erforderlich, wenn mehrere Cluster unter Verwendung desselben ZooKeeper ausgeführt werden. Es gelten die Einschränkungen für die Benennung in ZooKeeper; siehe http://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#ch_zkDataModel.
ModelSyncPollInterval
100
Häufigkeit, mit der das Modell zwischen Servern im Cluster synchronisiert wird. Der Wert ist in Millisekunden angegeben.
ModelSyncWaitPeriod
3000
Bei der Kommunikation über WebSockets wird der Datenverkehr im Rundlauf-Verfahren zwischen den Servern synchronisiert. Wenn eine Modelländerung über WebSockets vorgenommen wird, wartet die nächste Anforderung, bis die angegebene Zeit in Millisekunden verstrichen ist, bis das Modell auf dem Server synchronisiert wird, auf dem es landet. Wenn vor dem Timeout keine Synchronisierung stattfindet, schlägt die Anforderung mit einem Timeout-Fehler fehl.
ModelSyncTimeout
120000
Wartezeit (in Millisekunden) auf die einzelnen Wiederholungsversuche.
CoordinatorMaxRetries
3
Im Falle eines Fehlers bei der Kommunikation mit dem Koordinator, erfolgt n Mal eine Wiederholung, bevor der Vorgang fehlschlägt.
CoordinatorSessionTimeout
90000
Zeitraum (in Millisekunden), den ThingWorx wartet, ohne einen Takt vom Apache ZooKeeper-Dienst zu erhalten, der zum Koordinieren der ThingWorx Priorität verwendet wird.
CoordinatorConnectionTimeout
10000
Die Dauer (in Millisekunden), die das System auf eine Verbindung mit dem Koordinator wartet.
MetricsCacheFrequency
60000
Metriken werden pro Server verfolgt und für Metriken auf Cluster-Ebene aggregiert. Dieser Wert ist die Häufigkeit (in Millisekunden), in der die Cluster-Metriken aktualisiert werden.
Einstellungen für Administratorbenutzer 
Einstellung
Standard
Beschreibung
InitialPassword
N/A
Das anfängliche Administrator-Passwort, das für die erstmalige Anmeldung bei ThingWorx benötigt wird. Die Mindestlänge (Mindestlänge 10, Standard 14 Zeichen) kann im Untersystem für Benutzerverwaltung konfiguriert werden. Weitere Informationen finden Sie unter .
Inhaltstyp-Einstellungen 
Einstellung
Standard
Beschreibung
supportedMediaEntityContentTypes
"image/svg+xml","image/png","image/gif","image/bmp","image/jpeg","application/pdf","image/vnd.microsoft.icon"
Durch Kommas getrennte Liste der gültigen MIME-Inhaltstypen, die dynamisch mit Medienentitäten verknüpft werden können. Zusätzliche Typen können hinzugefügt werden.
* 
Wenn der Inhaltstyp, der von einem anderen Server stammt, kein unterstützter Medieneinheiten-Typ ist, wird der Inhalt als Datei auf den Client-Rechner heruntergeladen und nicht mit der Medieneinheit gestreamt.
Verbindungseinstellungen für Lizenzierung 
Einstellung
Standard
Beschreibung
username
N/A
PTC Support-Website-Benutzername
password
N/A
PTC Support-Website-Passwort
timeout (in Sekunden)
60
Nach dem Timeout wird der folgende Fehler im Anwendungsprotokoll protokolliert:
License Server could not process request
useProxy
false
Aktiviert Proxy-Einstellungen für die Lizenzierung. Bei "true" werden Proxy-Einstellungen verwendet, um eine Verbindung zum Lizenzierungsserver herzustellen.
proxyHost
Name des Proxy-Hosts.
proxyPort
Portnummer des Proxy-Hosts.
proxyScheme
http
http oder https.
proxyUsername
Benutzername für die Authentifizierung, wenn die Proxy-Server-Verbindung Authentifizierung erfordert.
proxyPassword
Passwort für die Authentifizierung, wenn die Proxy-Server-Verbindung Authentifizierung erfordert.
* 
Informationen zum Verschlüsseln dieses Werts finden Sie unter Passwörter verschlüsseln.
proxyUseNTLM
false
Option zur Verwendung des NTLM-Protokolls.
proxyWorkstation
Name des Computers des Benutzers im Netzwerk, wenn die NTLM-Authentifizierung erforderlich ist.
proxyDomain
Name der Domäne des Benutzers, wenn die NTLM-Authentifizierung erforderlich ist.
Benutzereinstellungen für Metriken 
Einstellung
Standard
Beschreibung
InitialPassword
Erstellt beim Systemstart den MetricsUser und wird vom Prometheus-Server verwendet, um Metrikinformationen aus einer ThingWorx Instanz auszulesen. Die Einstellung ist für alle MSAI-Bereitstellungen erforderlich, aber für alle anderen Bereitstellungstypen optional.
Persistenzanbieter-Einstellungen 
Für alle unten aufgelisteten Datenbanken sollten die folgenden Richtlinien für Wert-Stream-Prozessoreinstellungen und Stream-Prozessoreinstellungen befolgt werden:
StreamProcessorSettings.numberOfProcessingThreads + ValueStreamProcessorSettings.numberOfProcessingThreads < 50% of DB connection pool
And
ValueStreamProcessorSettings.numberOfProcessingThreads >= StreamProcessorSettings.numberOfProcessingThreads
H2PersistenceProviderPackage
Einstellung
Standard
Beschreibung
Verbindungsinformationen
acquireIncrement
5
Bestimmt, wie viele Verbindungen zu einem Zeitpunkt ThingWorx herstellen möchte, wenn der Pool ausgeschöpft ist.
acquireRetryAttempts
30
Definiert, wie viele Male ThingWorx versucht, eine neue Verbindung mit der Datenbank herzustellen.
acquireRetryDelay
1000
Zeit (in Millisekunden), die ThingWorx zwischen Verbindungsversuchen wartet.
checkoutTimeout
1000000
Anzahl von Millisekunden, die ein Client, der getConnection() aufruft, auf das Einchecken oder Herstellen einer Verbindung wartet, wenn der Pool ausgeschöpft ist.
Network Timeout
900000
Dauer (in Millisekunden), die ein Thread auf Antwort von der Datenbank wartet.
Wenn keine Antwort innerhalb dieser konfigurierten Dauer empfangen wird, schließt die Plattform die zugrunde liegende Verbindung und gibt den auf Antwort wartenden Thread frei.
idleConnectionTestPeriod
6
Zeitraum (in Sekunden), in dem Verbindungen getestet werden, sodass Verbindungen im Leerlauf nicht von Prozessen außerhalb wie Firewalls usw. geschlossen werden. Ist der Wert größer als 0 ist, testet ThingWorx alle nicht ausgecheckten Verbindungen, die sich im Leerlauf und im Pool befinden, alle x Sekunden.
* 
Wenn Fehler des Typs "Keine Verbindung mit Modellanbieter" auftreten, überprüfen Sie diese Einstellung. Vergleichen Sie dies mit Firewall-Standards. Durch die Minimierung des Standardwerts können Probleme beim Trennen von Verbindungen umgangen werden.
initialPoolSize
10
Ursprüngliche Anzahl von erstellten und verwalteten Datenbankverbindungen innerhalb eines Pools beim Start. Sollte zwischen minPoolSize und maxPoolSize liegen.
maxConnectionAge
0
Sekunden (Lebenszeit). Eine Verbindung älter als maxConnectionAge wird getrennt und aus dem Pool gelöscht.
maxIdleTime
0
Sekunden, die eine Verbindung im Pool, aber nicht verwendet bleiben kann, bevor sie verworfen wird. 0 bedeutet Leerlaufverbindungen laufen nie ab.
maxIdleTimeExcessConnections
36000
Anzahl von Sekunden, die Verbindungen über minPoolSize im Leerlauf im Pool bleiben dürfen, bevor sie gelöscht werden. Vorgesehen für Anwendungen, die die Anzahl der offenen Verbindungen erheblich minimieren und dadurch den Pool auf minPoolSize verkleinern möchten, wenn sich der Lastgrad nach einer Spitze reduziert und hergestellte Verbindungen nicht mehr benötigt werden. Wenn maxIdleTime festgelegt ist, sollte maxIdleTimeExcessConnections kleiner sein, um eine Auswirkung zu haben. 0 bedeutet Folgendes: "kein Erzwingen", und nicht erforderliche Verbindungen werden nicht in den Leerlauf versetzt.
maxPoolSize
100
Maximale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
maxStatements
0
Größe des globalen ThingWorx PreparedStatement-Cache.
maxStatementsPerConnection
50
Größe des globalen ThingWorx PreparedStatement-Cache für jede Verbindung.
minPoolSize
5
Minimale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
numHelperThreads
6
Anzahl der zu erzeugenden Helper-Threads. Langsame JDBC-Operationen werden im Allgemeinen von Helper-Threads durchgeführt, die keine Konfliktsperren aufweisen. Die Verteilung dieser Operationen auf mehrere Threads kann die Leistung deutlich verbessern, da mehrere Operationen gleichzeitig durchgeführt werden können.
password
N/A
Datenbank-Passwort.
username
twadmin
Datenbank-Benutzername.
tableLockTimeout
10000
Anzahl an Millisekunden, die ein Client auf das Entsperren einer Datenbanktabelle wartet.
testConnectionOnCheckout
false
Bei "true" wird eine Operation bei jedem Auschecken einer Verbindung ausgeführt, um zu verifizieren, ob die Verbindung gültig ist.
unreturnedConnectionTimeout
0
Anzahl von Sekunden, die auf eine Antwort von einer nicht reagierenden Verbindung vor dem Verwerfen gewartet wird. Wenn dies festgelegt wird, verwirft der Pool die Verbindung, wenn eine Anwendung eine Verbindung auscheckt, aber nicht im angegebenen Zeitraum eincheckt. Dies ermöglicht es, Anwendungen mit gelegentlichen Verbindungslücken weiter auszuführen, statt letztendlich den Verbindungspool komplett auszuschöpfen. 0 bedeutet "kein Timeout". Es wird erwartet, dass die Anwendungen ihre eigenen Verbindungen schließen.
StreamProcessorSettings
maximumBlockSize
2500
Maximale Anzahl der Stream-Schreibvorgänge zum Verarbeiten in einem Block
maximumQueueSize
250000
Maximale Anzahl der Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
maximumWaitTime
10000
Maximale Wartezeit (in Millisekunden) vor dem Leeren des Stream-Puffers.
numberOfProcessingThreads
5
Anzahl der Threads bei der Verarbeitung von Eigenschaften.
scanRate
5
Rate (in Millisekunden), mit der der Pufferstatus geprüft wird.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Stream-Puffer geleert wird
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
ValueStreamProcessorSettings
maximumBlockSize
2500
Maximale Anzahl der Stream-Schreibvorgänge zum Verarbeiten in einem Block
maximumQueueSize
250000
Maximale Anzahl der Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
maximumWaitTime
10000
Maximale Wartezeit (in Millisekunden) vor dem Leeren des Stream-Puffers.
numberOfProcessingThreads
5
Anzahl der Threads bei der Verarbeitung von Eigenschaften.
scanRate
5
Rate (in Millisekunden), mit der der Pufferstatus geprüft wird.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Stream-Puffer geleert wird
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Maximale Anzahl der Eigenschaftsschreibvorgänge zum Verarbeiten in einem Block.
maximumWaitTime
1000
Maximale Wartezeit (in Millisekunden) vor dem Leeren des Eigenschaftspuffers.
maximumQueueSize
100000
Maximale Anzahl der Eigenschaftseinträge in der Warteschlange (anschließend zurückgewiesen).
numberOfProcessingThreads
20
Anzahl der Threads bei der Verarbeitung von Eigenschaften.
scanRate
25
Rate (in Millisekunden), mit der der Pufferstatus geprüft wird.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Eigenschaftspuffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
PostgresPersistenceProviderPackage
Einstellung
Standard
Beschreibung
ConnectionInformation
acquireIncrement
5
Bestimmt, wie viele Verbindungen zu einem Zeitpunkt die Plattform herstellen möchte, wenn der Pool ausgeschöpft ist.
acquireRetryAttempts
3
Definiert, wie viele Male ThingWorx versucht, eine neue Verbindung mit der Datenbank herzustellen.
acquireRetryDelay
10000
Zeit (in Millisekunden), die ThingWorx zwischen Verbindungsversuchen wartet.
checkoutTimeout
10000000
Anzahl von Millisekunden, die ein Client, der getConnection() aufruft, auf das Einchecken oder Herstellen einer Verbindung wartet, wenn der Pool ausgeschöpft ist.
Query Timeout
600000
Dauer (in Millisekunden), die eine Abfrage auf den Abschluss wartet, bevor sie abgebrochen wird.
Network Timeout
900000
Dauer (in Millisekunden), die ein Thread auf Antwort von der Datenbank wartet.
Wenn keine Antwort innerhalb dieser konfigurierten Dauer empfangen wird, schließt die Plattform die zugrunde liegende Verbindung und gibt den auf Antwort wartenden Thread frei.
driverClass
org.postgresql.Driver
Vollqualifizierter Klassenname der JDBC-Treiberklasse, die Verbindungen bereitstellen soll.
fetchSize
5000
Anzahl der Zeilen, die in Gruppen abgerufen werden, statt alle Zeilen auf Client-Seite zwischenzuspeichern.
idleConnectionTestPeriod
60
Wenn dies eine Zahl größer als 0 ist, testet ThingWorx alle deaktivierten Verbindungen nach außen im Leerlauf im Pool alle x Sekunden.
initialPoolSize
5
Ursprüngliche Anzahl von erstellten und verwalteten Datenbankverbindungen innerhalb eines Pools beim Start. Sollte zwischen minPoolSize und maxPoolSize liegen.
jdbcUrl
jdbc:postgresql://localhost:5432/thingworx
Die JDBC-URL zum Verbinden mit PostgreSQL.
* 
Wenn der standardmäßige Schemaname geändert wird (von public), müssen Sie <databasename>?currentSchema=<Name des Schemas> hinzufügen. Beispiel: Wenn der Schemaname mySchema ist, wäre dies: jdbc:postgresql://<DBServer>:<DBPort>/<databasename>?currentSchema=mySchema
* 
Wenn Sie eine HA-Lösung konfigurieren, sollte dies die IP des Servers widerspiegeln, auf der der pgPool-Prozess ausgeführt wird. Ändern Sie den Port in den Port für pgPool.
maxConnectionAge
0
Sekunden (Lebenszeit). Eine Verbindung älter als maxConnectionAge wird getrennt und aus dem Pool gelöscht.
maxIdleTime
0
Sekunden, die eine Verbindung im Pool, aber nicht verwendet bleiben kann, bevor sie verworfen wird. 0 bedeutet Leerlaufverbindungen laufen nie ab.
maxIdleTimeExcessConnections
300
Anzahl von Sekunden, die Verbindungen über minPoolSize im Leerlauf im Pool bleiben dürfen, bevor sie gelöscht werden. Vorgesehen für Anwendungen, die die Anzahl der offenen Verbindungen erheblich minimieren und dadurch den Pool auf minPoolSize verkleinern möchten, wenn sich der Lastgrad nach einer Spitze reduziert und hergestellte Verbindungen nicht mehr benötigt werden. Wenn maxIdleTime festgelegt ist, sollte maxIdleTimeExcessConnections kleiner sein, um eine Auswirkung zu haben. 0 bedeutet Folgendes: "kein Erzwingen", und nicht erforderliche Verbindungen werden nicht in den Leerlauf versetzt.
maxPoolSize
100
Maximale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
maxStatements
100
Größe des globalen ThingWorx PreparedStatement-Cache.
minPoolSize
5
Minimale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
numHelperThreads
8
Anzahl der zu erzeugenden Helper-Threads. Langsame JDBC-Operationen werden im Allgemeinen von Helper-Threads durchgeführt, die keine Konfliktsperren aufweisen. Die Verteilung dieser Operationen auf mehrere Threads kann die Leistung deutlich verbessern, da mehrere Operationen gleichzeitig durchgeführt werden können.
password
<eindeutiges Passwort>
Passwort für die Anmeldung bei der Datenbank.
testConnectionOnCheckout
false
Bei "true" wird eine Operation bei jedem Auschecken einer Verbindung ausgeführt, um zu verifizieren, ob die Verbindung gültig ist.
unreturnedConnectionTimeout
0
Anzahl von Sekunden, die auf eine Antwort von einer nicht reagierenden Verbindung vor dem Verwerfen gewartet wird. Wenn dies festgelegt wird, verwirft der Pool die Verbindung, wenn eine Anwendung eine Verbindung auscheckt, aber nicht im angegebenen Zeitraum eincheckt. Dies ermöglicht es, Anwendungen mit gelegentlichen Verbindungslücken weiter auszuführen, statt letztendlich den Verbindungspool komplett auszuschöpfen. 0 bedeutet "kein Timeout". Es wird erwartet, dass die Anwendungen ihre eigenen Verbindungen schließen.
username
twadmin
Benutzer, der die Berechtigung zum Ändern von Tabellen hat. Dies ist der Benutzer, der in der Datenbank für den ThingWorx Server erstellt wurde.
* 
So ändern Sie das PostgreSQL-Passwort: Ändern Sie das Passwort dieses Benutzers sowie die Passwort-Einstellung für Nichtverschlüsselung in der Datei platform-settings.json oder den Wert für Verschlüsselung im Schlüsselspeicher /ThingworxStorage/keystore.jks.
Stream-Prozessoreinstellungen
maximumBlockSize
2500
Maximale Anzahl der Stream-Schreibvorgänge zum Verarbeiten in einem Block
maximumQueueSize
250000
Maximale Anzahl der Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
maximumWaitTime
10000
Anzahl der Millisekunden, die das System wartet, bevor der Stream-Puffer geleert wird.
numberOfProcessingThreads
5
Anzahl der Verarbeitungs-Threads.
scanRate
5
Der Pufferstatus wird in der angegebenen Rate in Millisekunden geprüft.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Stream-Puffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
Wert-Stream-Prozessoreinstellungen
maximumBlockSize
2500
Maximale Anzahl der Wert-Stream-Schreibvorgänge zum Verarbeiten in einem Block.
maximumQueueSize
500000
Maximale Anzahl der Wert-Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
maximumWaitTime
10000
Anzahl der Millisekunden, die das System wartet, bevor der Wert-Stream-Puffer geleert wird.
numberofProcessingThreads
5
Anzahl der Verarbeitungs-Threads.
scanRate
5
Rate (in Millisekunden) vor dem Leeren des Stream-Puffers.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Wert-Stream-Puffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Maximale Anzahl der Eigenschaftsschreibvorgänge zum Verarbeiten in einem Block.
maximumWaitTime
1000
Maximale Wartezeit (in Millisekunden) vor dem Leeren des Eigenschaftspuffers.
maximumQueueSize
100000
Maximale Anzahl der Eigenschaftseinträge in der Warteschlange (anschließend zurückgewiesen).
numberOfProcessingThreads
20
Anzahl der Threads bei der Verarbeitung von Eigenschaften.
scanRate
25
Rate (in Millisekunden), mit der der Pufferstatus geprüft wird.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Eigenschaftspuffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
MssqlPersistenceProviderPackage
Einstellung
Standard
Beschreibung
ConnectionInformation
acquireIncrement
5
Bestimmt, wie viele Verbindungen auf einmal ThingWorx herzustellen versucht, wenn der Pool ausgeschöpft ist.
acquireRetryAttempts
3
Definiert, wie viele Male ThingWorx versucht, eine neue Verbindung mit der Datenbank herzustellen.
acquireRetryDelay
10000
Zeit (in Millisekunden), die ThingWorx zwischen Verbindungsversuchen wartet.
checkoutTimeout
1000000
Anzahl von Millisekunden, die ein Client, der getConnection() aufruft, auf das Einchecken oder Herstellen einer Verbindung wartet, wenn der Pool ausgeschöpft ist.
driverClass
com.microsoft.sqlserver.jdbc.SQLServerDriver
Vollqualifizierter Klassenname der JDBC-Treiberklasse, die Verbindungen bereitstellen soll.
fetchSize
5000
Anzahl der Zeilen, die in Gruppen abgerufen werden, statt alle Zeilen auf Client-Seite zwischenzuspeichern.
idleConnectionTestPeriod
60
Zeitraum (in Sekunden), in dem Verbindungen getestet werden, sodass Verbindungen im Leerlauf nicht von Prozessen außerhalb wie Firewalls usw. geschlossen werden. Ist der Wert größer als 0 ist, testet ThingWorx alle nicht ausgecheckten Verbindungen, die sich im Leerlauf und im Pool befinden, alle x Sekunden.
* 
Wenn Fehler des Typs "Keine Verbindung mit Modellanbieter" auftreten, überprüfen Sie diese Einstellung. Vergleichen Sie dies mit Firewall-Standards. Durch die Minimierung des Standardwerts können Probleme beim Trennen von Verbindungen umgangen werden.
initialPoolSize
5
Ursprüngliche Anzahl von erstellten und verwalteten Datenbankverbindungen innerhalb eines Pools beim Start. Sollte zwischen minPoolSize und maxPoolSize liegen.
jdbcUrl
jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;
JDBC-URL zum Verbinden mit MSSQL
maxConnectionAge
0
Sekunden (Lebenszeit). Eine Verbindung älter als maxConnectionAge wird getrennt und aus dem Pool gelöscht.
maxIdleTime
0
Sekunden, die eine Verbindung im Pool, aber nicht verwendet bleiben kann, bevor sie verworfen wird. 0 bedeutet Leerlaufverbindungen laufen nie ab.
maxIdleTimeExcessConnections
300
Anzahl von Sekunden, die Verbindungen über minPoolSize im Leerlauf im Pool bleiben dürfen, bevor sie gelöscht werden. Vorgesehen für Anwendungen, die die Anzahl der offenen Verbindungen erheblich minimieren und dadurch den Pool auf minPoolSize verkleinern möchten, wenn sich der Lastgrad nach einer Spitze reduziert und hergestellte Verbindungen nicht mehr benötigt werden. Wenn maxIdleTime festgelegt ist, sollte maxIdleTimeExcessConnections kleiner sein, um eine Auswirkung zu haben. 0 bedeutet Folgendes: "kein Erzwingen", und nicht erforderliche Verbindungen werden nicht in den Leerlauf versetzt.
maxPoolSize
100
Maximale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
maxStatements
100
Größe des globalen ThingWorx PreparedStatement-Cache.
minPoolSize
5
Minimale Anzahl von Verbindungen, die ein Pool zu einem beliebigen Zeitpunkt aufrechterhält.
numHelperThreads
8
Anzahl der zu erzeugenden Helper-Threads. Langsame JDBC-Operationen werden im Allgemeinen von Helper-Threads durchgeführt, die keine Konfliktsperren aufweisen. Die Verteilung dieser Operationen auf mehrere Threads kann die Leistung deutlich verbessern, da mehrere Operationen gleichzeitig durchgeführt werden können.
password
<eindeutiges Passwort>
Passwort für die Anmeldung bei der Datenbank.
testConnectionOnCheckout
false
Bei "true" wird eine Operation bei jedem Auschecken einer Verbindung ausgeführt, um zu verifizieren, ob die Verbindung gültig ist.
unreturnedConnectionTimeout
0
Anzahl von Sekunden, die auf eine Antwort von einer nicht reagierenden Verbindung vor dem Verwerfen gewartet wird. Wenn dies festgelegt wird, verwirft der Pool die Verbindung, wenn eine Anwendung eine Verbindung auscheckt, aber nicht im angegebenen Zeitraum eincheckt. Dies ermöglicht es, Anwendungen mit gelegentlichen Verbindungslücken weiter auszuführen, statt letztendlich den Verbindungspool komplett auszuschöpfen. 0 bedeutet "kein Timeout". Es wird erwartet, dass die Anwendungen ihre eigenen Verbindungen schließen.
username
msadmin
Dies ist die Benutzer-ID, die das Schema TWSCHEMA besitzt und zur Authentifizierung bei MSSQL in der JDBC-Verbindungszeichenfolge verwendet wird.
Query Timeout
600000
Dauer (in Millisekunden), die eine Abfrage auf den Abschluss wartet, bevor sie abgebrochen wird.
Network Timeout
900000
Dauer (in Millisekunden), die ein Thread auf Antwort von der Datenbank wartet.
Wenn keine Antwort innerhalb dieser konfigurierten Dauer empfangen wird, schließt die Plattform die zugrunde liegende Verbindung und gibt den auf Antwort wartenden Thread frei.
Stream-Prozessoreinstellungen
maximumBlockSize
2500
Maximale Anzahl der Stream-Schreibvorgänge zum Verarbeiten in einem Block
maximumQueueSize
250000
Maximale Anzahl der Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
maximumWaitTime
10000
Anzahl der Millisekunden, die das System wartet, bevor der Stream-Puffer geleert wird.
numberOfProcessingThreads
5
Anzahl der Verarbeitungs-Threads.
scanRate
5
Der Pufferstatus wird in der angegebenen Rate in Millisekunden geprüft.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Stream-Puffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
Wert-Stream-Prozessoreinstellungen
maximumBlockSize
2500
Maximale Anzahl der Wert-Stream-Schreibvorgänge zum Verarbeiten in einem Block.
maximumWaitTime
10000
Anzahl der Millisekunden, die das System wartet, bevor der Wert-Stream-Puffer geleert wird.
maximumQueueSize
500000
Maximale Anzahl der Wert-Stream-Einträge in der Warteschlange (anschließend zurückgewiesen).
numberofProcessingThreads
5
Anzahl der Verarbeitungs-Threads.
scanRate
5
Rate (in Millisekunden) vor dem Leeren des Stream-Puffers.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Wert-Stream-Puffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Maximale Anzahl der Eigenschaftsschreibvorgänge zum Verarbeiten in einem Block.
maximumWaitTime
1000
Maximale Wartezeit (in Millisekunden) vor dem Leeren des Eigenschaftspuffers.
maximumQueueSize
100000
Maximale Anzahl der Eigenschaftseinträge in der Warteschlange (anschließend zurückgewiesen).
numberOfProcessingThreads
20
Anzahl der Threads bei der Verarbeitung von Eigenschaften.
scanRate
25
Rate (in Millisekunden), mit der der Pufferstatus geprüft wird.
sizeThreshold
1000
Maximale Anzahl von Elementen, die erfasst werden, bevor der Eigenschaftspuffer geleert wird.
Producer Timeout
3000
Diese Einstellung gilt für die Stream-Eintragsprozessoren und ist aktuell nur für den persistenten Eigenschaftsprozessor wirksam.
Wenn eine Warteschlange voll ist und keinen Platz für einen neuen Eintrag hat, ist dies die maximale Dauer (Millisekunden), die ein Producer wartet, dass der Eintrag in die Warteschlange gestellt wird. Wenn die Wartezeit vorüber, die Warteschlange weiterhin voll und immer noch kein Platz ist, wird der Eintrag nicht zur Warteschlange hinzugefügt.
Cache-Einstellungen 
Die Cache-Einstellungen sind nur erforderlich, wenn ThingWorx Platform im Cluster-Modus ausgeführt wird.
* 
Bei der Ausführung im Einzelserver-Modus schließen Sie die Cache-Einstellungen aus der Konfiguration aus. Wenn diese für den Einzelserver-Modus eingeschlossen werden, führen Sie den verteilten Cache-Modus unter Verwendung von Apache Ignite aus, der weniger leistungsfähig ist als die Ausführung des standardmäßigen Caching des lokalen Speichers.
Einstellung
Standard
Beschreibung
provider-type
[Der Cache-Anbieter für die Ausführung im Einzelserver-Modus.]
Im Cluster-Modus sollte der Wert immer auf com.thingworx.cache.ignite.IgniteCacheProvider eingestellt werden.
instance-name
Kein
Legt den Namen der lokalen Cache-Instanz fest.
client-mode
wahr
Bestimmt, ob das eingebettete Ignite als Client (Standard) oder Server ausgeführt wird. Ist im Server-Modus beteiligt an der Speicherung von Daten und verwendet mehr Arbeitsspeicher.
address-resolver
type
static
Bestimmt, wie andere Ignite-Knoten erkannt werden. Die empfohlene Einstellung ist zookeeper.
connection
Kein
Für eine address-resolver type von zookeeper eine kommagetrennte Liste von Apache ZooKeeper Servern zum Koordinieren der ThingWorx Prioritätsauswahl. Das Zeichenfolgenmuster ist IP:Port (z. B. 127.0.0.1:2181, 127.0.0.2:2181).
endpoints
Kein
Für eine address-resolver type von static ein Array statischer Adressen, auf denen Ignite ausgeführt wird.
Abschnitt für Überprüfungsereignis zu "platform-settings.json" hinzufügen 
Wenn ThingWorx Platform neu gestartet wird, lösen alle Dinge das Ereignis ThingStart aus. Durch die Prüfung aller dieser Ereignisse wird die Startzeit der Plattform erhöht. Um diese Situation zu vermeiden, ist das Ereignis ThingStart standardmäßig deaktiviert. Wenn Sie diese Aktion trotzdem überprüfen möchten, können Sie Ereignisse in der Datei platform-settings.json aktivieren und deaktivieren.
Die Datei platform-settings.json enthält keinen Audit-Abschnitt. Um Kategorien und Meldungen zu aktivieren oder zu deaktivieren, müssen Sie der Datei eine JSON-Struktur hinzufügen. Für die ThingWorx Platform Instanz, für die Sie Überprüfungsmeldungen wünschen, benötigen Sie einen Administrator mit Berechtigungen zum Suchen und Bearbeiten der Datei platform-settings.json und Hinzufügen der entsprechenden Konfiguration.
* 
Der Audit-Abschnitt muss als gleichgeordneter Knoten zum JSON-Eintrag von PlatformSettingsConfig hinzugefügt werden. Er kann sich vor oder nach dem PlatformSettingsConfig-Knoten, muss sich jedoch auf derselben Knotenebene befinden.
Nachfolgend sehen Sie ein Beispiel einer Audit-Struktur, die nach dem PlatformSettingsConfig-Knoten in der Datei platform-settings.json platziert wurde:

"PlatformSettingsConfig:: {
"BasicSettings":( . . .
}
}
"Audit": {
"Disabled": [{
"CategoryKey": "audit.AuditCategory.Collaboration",
"MessageKeys": ["ALL"]
}, {
"CategoryKey": "audit.AuditCategory.Authentication",
"MessageKeys": [
"com.thingworx.things.security.SecurityMonitorThing.LoginSucceeded.Audit",
"com.thingworx.things.security.SecurityMonitorThing.ApplicationKeyFailed.Audit"
]
}
],
"Enabled": [{
"CategoryKey": "audit.AuditCategory.RemoteAccess",
"MessageKeys": ["ALL"]
}, {
"CategoryKey": "audit.AuditCategory.Authentication",
"MessageKeys": [
"thingworx.things.security.SecurityMonitorThing.LoginFailed.Audit" ]
], {
"CategoryKey": "audit.AuditCategory.ThingGroupMemberships",
"MessageKeys": [
"com.thingworx.thinggroups.ThingGroup.AddedThingAsChildMember",
"com.thingworx.thinggroups.ThingGroup.DeletedThingAsChildMember",
"com.thingworx.thinggroups.ThingGroup.AddedThingGroupAsChildMember",
"com.thingworx.thinggroups.ThingGroup.DeletedThingGroupAsChildMember",
"com.thingworx.thinggroups.ThingGroup.DeletedAllChildMembers"
]
}
]
}
In diesem Beispiel sind die Kategorie COLLABORATION und ["ALL"] ihrer Ereignisse/Meldungen deaktiviert. Für die Kategorie AUTHENTICATION sind zwei Ereignisse/Meldungen deaktiviert, LoginSucceeded und ApplicationKeyFailed. Die REMOTE_ACCESS und ["ALL"] ihrer Ereignisse/Meldungen sind aktiviert. Für die Kategorie AUTHENTICATION ist das Ereignis/die Meldung LoginFailed aktiviert. Für THINGGROUPMEMBERSHIPs sind alle Prüfungsmeldungen aktiviert. Anstatt ["ALL"] zu verwenden, werden diese Meldungen separat aufgelistet. Sie können diese Methode zum Eingeben von Prüfungsmeldungen wählen, damit Sie nach dem kurzzeitigen Ausführen der Plattforminstanz bestimmen können, ob Sie sie alle benötigen.
Die audit.AuditCategory.ThingGroupMemberships-Kategorie enthält Prüfungsmeldungen zu Änderungen in der Mitgliedschaft einer Dinggruppe. Diese Kategorie von Prüfungsmeldungen ist standardmäßig deaktiviert, da nicht alle Konfigurationen/Bereitstellungen solche Prüfungsmeldungen erfordern und Systemadministratoren nicht mit der Berechnungs- und Persistenzauswirkung dieser Änderungen konfrontiert werden möchten. Wenn für Ihre Konfigurationen/Bereitstellungen Prüfungsmeldungen für Änderungen in der Dinggruppenmitgliedschaft erforderlich sind, können Sie sie aktivieren, wie im obigen Beispiel dargestellt. Die Einstellung für jede Prüfungsmeldung kann aktiviert oder deaktiviert werden, ohne dass andere Prüfungsmeldungen aktiviert oder deaktiviert werden müssen. Möglicherweise möchten Sie beispielsweise nur bestimmte Mitgliedschaftsänderungen prüfen. Die Prüfungsmeldungen für Dinggruppenmitgliedschaften werden in der Tabelle Tabelle 122 im Thema ThingWorx Prüfungsmeldungen in diesem Hilfe-Center aufgeführt.
* 
Die Prüfungsmeldungen für die folgenden beiden Meldungstypen sind immer aktiviert und erfordern keine explizite Aktivierung. Sie stellen Prüfungsmeldungen bereit, wenn die Funktion für die Delegierung von Sichtbarkeitsberechtigungen für Dinggruppen aktiviert oder deaktiviert ist:

com.thingworx.thinggroups.ThingGroup.VisibilityPermissionDelegationEnabled
com.thingworx.thinggroups.ThingGroup.VisibilityPermissionDelegationDisabled
.
Um eine beliebige Kategorie und Prüfungsmeldung zu aktivieren oder zu deaktivieren, können Sie die oben gezeigte Struktur kopieren und den Gruppen "Disabled" und/oder "Enabled" die entsprechenden Schlüssel hinzufügen. Eine schrittweise Anleitung finden Sie unter Prüfungsereignisse aktivieren und deaktivieren. Informationen zu den entsprechenden Schlüsseln für Kategorien und Ereignismeldungen finden Sie in der Tabelle Tabelle 122 im Thema ThingWorx Prüfmeldungen in diesem Hilfe-Center.
War dies hilfreich?