QixPerformance-Log #320
Replies: 3 comments 1 reply
-
Yes in principle it's very doable. In fact - Butler SOS can these days be made to gather data on ANY log events generated by QSEoW. Data granularity could be a challenge though. Once the data is in InfluxDB you can use a retention policy to only keep the last days worth of data, so no problems with data volumes there. |
Beta Was this translation helpful? Give feedback.
-
Forgot to mention in previous comment.
Not sure what happened earlier, but after a restart of the engine service, with "QIX performance log level" set to No need to turn on telemetry after all. |
Beta Was this translation helpful? Give feedback.
-
Time to revisit this topic. I have done some preliminary work around this and decided to at least explore the idea a bit more. Concept
ConfigurationDue to data volumes involved it is not realistic to store all info about all apps. Possible solution:
Consequences
Config file changesThe config file could get new entries like these: Butler-SOS:
logEvents:
...
appPerformanceMonitor:
enable: true # Should app performance data be extracted from log events?
customProperty: # App-specific custom property control of what performance data to extract from log events
customPropertyName: PerformanceMonitor
valueAllObjects: AllObjects # Should all objects in the app be monitored?
valueSomeObjects: SomeObjects # Should only some objects in the app be monitored?
customPropertyAppOjects: PerformanceMonitor_AppObjects # Custom property specifying what objects should be monitored in the app. Used if customPropertyName is set to valueSomeObjects.
valueAllTypes: AllTypes # Should all object types be monitored?
valueSomeTypes: SomeTypes # Should only some object types be monitored?
customPropertyObjectTypes: PerformanceMonitor_ObjectTypes # Custom property specifying what object types should be monitored. Used if customPropertyName is set to valueSomeTypes.
monitorObject: # What objects should be monitored? Entire apps or just specific objects within some specific apps?
allApps: false # Should all apps be monitored?
app: # App specific monitoring.
- appId: 2c5e4b7e-4b7b-4b7b-4b7b-4b7b4b7b4b7b
allObjects: false # Should all objects in the app be monitored? Leave appObjects array empty if this is true.
appObject: # What app objects (charts, tables, ...) should be monitored for this app?
- objectId: YJEpPT # Object ID of the object to monitor
method: # What methods should be monitored for this object?
- GenericObject::GetLayout
- Doc::GetScriptEx
allTypes: false # Should all object types be monitored?
objectType: # What object types should be monitored?
- sheet
- barchart
- linechart
- map
allMethods: false # Should all methods be monitored?
method: # What methods should be monitored? Additive to the app objects above.
- GenericObject::GetLayout
- GenericObject::GetHyperCubeContinuousData
allTypes: false # Should all object types be monitored?
objectType: # What object types should be monitored for all apps?
- sheet
- barchart
- linechart
- map
allMethods: false # Should all methods be monitored?
method: # What methods should be monitored for all apps?
- Global::OpenApp
- Doc::GetAppLayout
- Doc::CreateSessionObject |
Beta Was this translation helpful? Give feedback.
-
Is there a way to use QixPerformance-Log?
It will be useful to see a table in grafana with high resource consumption by users/applications.
Beta Was this translation helpful? Give feedback.
All reactions