1639 Commits

Author SHA1 Message Date
Göran Sander
a5ff676278 Merge pull request #1178 from mountaindude/master
15.0 wip
2025-12-18 16:09:22 +01:00
Göran Sander
127a191b96 Fix .env file for Influx v3 version of Docker compose file 2025-12-18 16:03:21 +01:00
Göran Sander
b9dc4d888e fix(docker): Stabilize the Docker image build process 2025-12-18 15:54:03 +01:00
Göran Sander
99ab4579dc feat(docker): New full-stack compose files for InfluxDB v1/v2/v3 + Grafana 2025-12-18 15:48:21 +01:00
Göran Sander
1f1198cab9 Merge pull request #1177 from mountaindude/copilot/review-qlick-sense-api-code
Review Qlik Sense API Code
2025-12-18 08:28:16 +01:00
Göran Sander
1c3452d3a6 Merge upstream/master into copilot/review-qlick-sense-api-code and resolve conflicts 2025-12-18 08:27:18 +01:00
Göran Sander
81135c9c11 refactor: Improve error handling and avoid parallel API calls to QS proxy and health APIs 2025-12-18 08:22:26 +01:00
Göran Sander
415d93f6ca Merge pull request #1176 from ptarmiganlabs/copilot/fix-088b2c3a-f49e-45c6-90f0-4ae42b3b11b0
Copilot/fix 088b2c3a f49e 45c6 90f0 4ae42b3b11b0
2025-12-18 08:18:56 +01:00
Göran Sander
b58e59c227 Merge branch 'master' into copilot/fix-088b2c3a-f49e-45c6-90f0-4ae42b3b11b0 2025-12-18 08:18:42 +01:00
copilot-swe-agent[bot]
840f589632 Add overlapping execution prevention to proxy sessions timer
- Add isCollecting flag to prevent overlapping proxy session polls
- Add warning log when skipping intervals due to long-running operations
- Consistent execution management pattern across both health check and proxy session timers

Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-18 07:08:49 +00:00
copilot-swe-agent[bot]
8e55ee3dda Remove retry logic per user request, keep error handling and execution management
- Remove retry logic with exponential backoff from both health check and proxy session APIs
- Remove config settings: timeoutMilliseconds, maxRetries, retryDelayMilliseconds
- Restore hardcoded 5-second timeout for API calls
- Keep async/await error handling pattern (point 3)
- Keep execution management: overlapping prevention flag and sequential processing (point 4)

Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-18 07:07:26 +00:00
copilot-swe-agent[bot]
17f20985ca Address code review feedback: fix typo and prevent overlapping executions
- Fix spelling: 'retrived' -> 'retrieved' in proxysessionmetrics.js
- Add flag to prevent overlapping health check executions
- Change back to sequential server processing to avoid overwhelming Sense servers
- Add warning log when skipping intervals due to long-running health checks

Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-18 06:14:27 +00:00
copilot-swe-agent[bot]
c444156871 Add configurable timeout and retry logic for Qlik Sense API calls
- Add timeout, maxRetries, and retryDelayMilliseconds config options for both health check and proxy session APIs
- Implement exponential backoff retry logic with configurable parameters
- Change healthmetrics.js to use async/await pattern for better error handling
- Process health checks concurrently with Promise.allSettled for better performance
- Default timeout increased from 5s to 30s to handle slower/wifi connections
- Default retry count set to 3 attempts with 1s initial delay
- Add comprehensive logging for retry attempts and final failures

Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-18 06:13:05 +00:00
copilot-swe-agent[bot]
f7679cb8c2 Initial plan 2025-12-18 06:06:32 +00:00
Göran Sander
5b658a468b Update InfluxDB alignment analysis and implementation summaries 2025-12-18 07:06:10 +01:00
Göran Sander
f4b22d54a2 refactor(influxdb)!: Change name of InfluxDB v3 setting "timeout" to "writeTimeout" 2025-12-17 22:44:21 +01:00
Göran Sander
2bdb21629b fix(influxdb)!: Move InfluxDB maxBatchSize config setting to sit right under influxdbConfig section in YAML config file 2025-12-17 22:30:36 +01:00
Göran Sander
1c3f3a336a refactor(influxdb): All-new codebase for InfluxDB v1, v2 and v3 makes future maintenance a lot easier 2025-12-17 16:35:06 +01:00
Göran Sander
de839c6970 Improve InfluxDB test coverage 2025-12-16 19:31:54 +01:00
Göran Sander
4c778ecd94 docs: Update of sample Grafana dashboards 2025-12-16 11:31:06 +01:00
Göran Sander
b84d99cd4a refactor: Better support for InfluxDB v2 databases 2025-12-16 11:25:21 +01:00
Göran Sander
d05c0bb653 refactor(influxdb): Modernized shared InfluxDB code, better sharing of code across InfluxDB versions 2025-12-16 07:28:31 +01:00
Göran Sander
87b98d5e3c refactor(influxdb): Modernized InfluxDB v1 code. Easier to understand, esier to maintain 2025-12-16 07:27:21 +01:00
Göran Sander
f3ca7e7f0b Revmove old InfluxDB v3 code and tests 2025-12-15 10:09:54 +01:00
Göran Sander
a2e7b31510 Add test cases for InfuxDB v3 2025-12-15 09:56:54 +01:00
Göran Sander
2328eca1e5 test: Add test cases for InfuxDB v3 2025-12-15 09:56:35 +01:00
Göran Sander
6e62c8388a Fix incorrect release-please config 2025-12-15 09:26:11 +01:00
Göran Sander
a9ffecf3f9 Add changelog section for tests 2025-12-15 09:16:51 +01:00
Göran Sander
d0c36d773c Merge pull request #1094 from ptarmiganlabs/copilot/fix-088b2c3a-f49e-45c6-90f0-4ae42b3b11b0
Add InfluxDB v3 support to Butler SOS
2025-12-15 09:07:03 +01:00
Göran Sander
fdff29f5d2 feat!: Add support for InfluxDB v3 2025-12-15 08:40:58 +01:00
Göran Sander
963bac6787 fix: Add error tracking for app name extraction from QRS API 2025-12-15 07:54:09 +01:00
Göran Sander
8713b84e41 Fix broken tests 2025-12-15 07:38:10 +01:00
Göran Sander
5ff9e7c566 fix: Add missing log event counters in InfluxDB v3 2025-12-15 07:38:05 +01:00
Göran Sander
1b468b87a3 feat: Add retries when writing UDP queue metrics to InfluxDB v3 2025-12-15 04:47:46 +01:00
Göran Sander
2c4ad6ec46 feat: Track and log how many time errors occur when accessing Sense APIs 2025-12-14 20:06:31 +01:00
Göran Sander
b2fec2fcef Make logging more consistent 2025-12-14 11:11:45 +01:00
Göran Sander
735e3941ac feat: Better and more consistent logging across the entire codebase 2025-12-14 09:43:35 +01:00
Göran Sander
1e08ec1bf8 feat(InfluxDB): Configurable timeouts when writing to and querying InfluxDB v3 2025-12-13 15:27:36 +01:00
Göran Sander
21f6dba2dd feat(InfluxDB): Add retries with configurable backoff when writing to InfluxDB v3 2025-12-13 15:26:50 +01:00
Göran Sander
0b82072a4c Fix InfluxDB v3 handling wrt identical tag and field names (not allowed!) 2025-12-13 08:43:23 +01:00
Göran Sander
b4f8baeb26 refactor: Split InfluxDB v1/v2/v3 code into smaller, more manageable pieces 2025-12-12 23:01:52 +01:00
Göran Sander
791be201a4 Fix v3 log event handling to match v1/v2 data models
- Rewrite postLogEventToInfluxdb v3 to handle each message type distinctly
- Engine: stores session_id, windows_user, engine_exe_version
- Proxy: no session_id (key difference from engine)
- Scheduler: stores execution_id instead of command/result_code/origin/context
- Repository: similar to proxy, no session_id
- QIX-perf: stores performance metrics with float/integer fields
- All Point3 field types now correct (setStringField, setFloatField, setIntegerField)
- Conditional tags match v1/v2 behavior for each source type
- All 349 tests passing
2025-12-12 19:05:28 +01:00
Göran Sander
ff2f275ad3 Fix InfluxDB v3 terminology: change 'bucket' to 'database'
- Updated config schema to use 'database' instead of 'bucket' in v3Config
- Fixed all YAML config files (production.yaml, production_template.yaml, docker-compose configs)
- Updated globals.js to read v3Config.database and fixed undefined variable bug
- Updated all documentation files to use correct terminology
- All tests passing (300 tests, 32 test suites)
2025-12-12 17:24:16 +01:00
Göran Sander
bedfeca420 work in progress 2025-12-12 17:24:12 +01:00
copilot-swe-agent[bot]
956d69b3fa Update package.json description to mention InfluxDB v2 support
Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-12 17:21:30 +01:00
copilot-swe-agent[bot]
a22e699870 Add InfluxDB v3 unit tests and fix missing user events handling
Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-12 17:21:03 +01:00
copilot-swe-agent[bot]
cedb89a1fd Add Docker Compose files for InfluxDB v1, v2, and v3
Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-12 17:21:03 +01:00
copilot-swe-agent[bot]
897f8c6490 Complete InfluxDB v3 support for all posting functions
Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-12 17:21:03 +01:00
copilot-swe-agent[bot]
3a0592967c Add initial InfluxDB v3 support - schema and first function
Co-authored-by: mountaindude <1029262+mountaindude@users.noreply.github.com>
2025-12-12 17:21:03 +01:00
copilot-swe-agent[bot]
c156c746a9 Initial plan 2025-12-12 17:21:03 +01:00